deekshapshetty-ceh/NLP-Based-Cyber-Threat-Detection-and-Risk-Classification-System
GitHub: deekshapshetty-ceh/NLP-Based-Cyber-Threat-Detection-and-Risk-Classification-System
CyberWatch 是一个基于 NLP 和机器学习的网络安全威胁检测与风险分类系统,通过分析文本数据自动识别威胁类别并评估风险等级,辅助 SOC 团队进行威胁监控和事件响应。
Stars: 1 | Forks: 0
🛡️ CyberWatch – 基于 NLP 的网络威胁检测与风险分类系统
项目概述
CyberWatch 是一个 AI 驱动的网络威胁情报系统,利用自然语言处理 (NLP) 和机器学习技术,从文本数据中自动检测并分类网络安全威胁。
该系统分析安全报告、威胁情报源、推文、消息、PDF 以及提取的图像文本等网络相关内容,以识别潜在威胁并评估其风险等级。
该应用使用 Streamlit 构建,提供了一个交互式仪表板,用于实时威胁监控、分析、批量预测和可解释 AI。
🎯 目标
* 从文本数据中自动检测网络威胁。
* 将威胁分类到预定义的网络安全类别中。
* 根据威胁严重程度分配风险等级。
* 协助 SOC 分析师进行威胁监控和事件响应。
* 提供可解释 AI 洞察,以确保预测的透明度。
🧠 机器学习 Pipeline
输入文本
↓
文本预处理
↓
TF-IDF 向量化 (44,289 个特征)
↓
Random Forest 分类器 (100 棵树)
↓
威胁分类
↓
风险评估
↓
交互式仪表板可视化
🔍 威胁类别
| 威胁类别 | 风险等级 | 描述 |
| --------------- | ---------- | ------------------------------------------------- |
| Ransomware | 🔴 高 | 文件加密和勒索攻击 |
| Leak | 🔴 高 | 数据泄露和凭证泄漏 |
| 0-Day | 🔴 高 | 零日漏洞情报 |
| DDoS | 🟡 中 | 分布式拒绝服务攻击 |
| Botnet | 🟡 中 | 僵尸网络活动及命令与控制通信 |
| Vulnerability | 🟢 低 | 已知的安全弱点和 CVE |
| General | 🟢 低 | 常规网络安全讨论和新闻 |
📊 数据集信息
* 数据集大小:21,368 条记录
* 威胁类别数量:7
* 特征提取技术:TF-IDF
* 特征数量:44,289 个特征
* 机器学习模型:Random Forest 分类器
* 训练来源:网络威胁情报数据集
⚙️ 使用的技术
编程语言
* Python
机器学习与 NLP
* Scikit-Learn
* TF-IDF 向量化
* Random Forest 分类器
* SHAP 可解释性
数据处理
* Pandas
* NumPy
可视化
* Plotly
* Matplotlib
* Seaborn
* WordCloud
Web 框架
* Streamlit
OCR 与文档处理
* Pytesseract
* Pillow
* PyPDF
✨ 核心功能
实时威胁预测
* 单文本威胁分析
* 置信度评分生成
* 风险等级分类
基于 OCR 的威胁分析
* 从上传的图像中提取文本
* 分析屏幕截图和威胁情报图像
PDF 威胁分析
* 从 PDF 文档中提取并分类文本
批量预测
* 上传 CSV 文件
* 同时分析多条威胁记录
告警中心
* 监控高风险威胁
* 面向 SOC 的事件跟踪
分析仪表板
* 威胁分布
* 置信度分析
* 风险等级可视化
可解释 AI
* 基于 SHAP 的模型解释
* 特征重要性可视化
行动追踪器
* 跟踪调查情况
* 管理事件响应活动
📂 项目结构
```
CyberWatch/
│
├── app.py
├── README.md
├── requirements.txt
│
├── config/
│ ├── constants.py
│ └── theme.py
│
├── data/
│ ├── tweets_final.csv
│ ├── users.json
│ └── action_tracker.json
│
├── models/
│ ├── attack_model.pkl
│ └── vectorizer.pkl
│
├── pages/
│ ├── 1_Threat_Prediction.py
│ ├── 2_Alert_Center.py
│ ├── 3_Analytics.py
│ ├── 4_Dataset_Explorer.py
│ ├── 5_Bulk_Prediction.py
│ ├── 6_Action_Tracker.py
│ ├── 7_Model_Performance.py
│ ├── 8_Feature_Importance.py
│ └── 9_SHAP_Explainability.py
│
├── scripts/
│ └── twitter_monitor.py
│
└── utils/
├── classifier.py
└── data_loader.py
```
- 🚀 安装说明
克隆仓库
```
git clone https://github.com/deekshapshetty-ceh/NLP-Based-Cyber-Threat-Detection-and-Risk-Classification-System.git
```
安装依赖项
```
pip install -r requirements.txt
```
运行应用
```
streamlit run app.py
```
应用程序将启动于:
```
http://localhost:8501
```
📈 仪表板模块
| 模块 | 用途 |
| ------------------- | ------------------------------- |
| Home Dashboard | 系统概览和 KPI |
| Threat Prediction | 实时文本分类 |
| Alert Center | 高风险威胁监控 |
| Analytics | 图表和可视化洞察 |
| Dataset Explorer | 探索性数据分析 |
| Bulk Prediction | 基于 CSV 的威胁分析 |
| Action Tracker | 事件响应管理 |
| Model Performance | 准确率和评估指标 |
| Feature Importance | 顶部 TF-IDF 特征 |
| SHAP Explainability | 解释模型决策 |
🔮 未来增强计划
* 基于 BERT 的威胁分类
* Transformer 模型以提高准确性
* 实时社交媒体监控
* 威胁情报 API 集成
* SIEM 集成
* 多语言威胁检测
* 云部署和扩展
👩💻 作者
Deeksha P Shetty
网络安全 | 机器学习 | 威胁情报
📜 许可证
本项目是作为学术毕业设计项目开发的,仅供教育和研究目的使用。
标签:AI, Apex, Kubernetes, NLP, 威胁情报, 安全运营, 开发者工具, 扫描框架, 机器学习, 自动化代码审查, 逆向工具