nandagopalmutyala/ThreatLens
GitHub: nandagopalmutyala/ThreatLens
一个基于 Flask 与机器学习的网络威胁情报平台,通过自动抓取安全新闻进行威胁分类、严重程度预测和实体提取,并以交互式仪表板实时可视化展示安全洞察。
Stars: 0 | Forks: 0
# ThreatLens
一个由 AI 驱动的网络威胁情报平台,通过收集网络安全新闻,使用机器学习对威胁进行分类,利用自然语言处理(NLP)提取相关组织,并通过交互式 Flask 仪表板可视化安全洞察。
## 概述
ThreatLens 旨在结合网页抓取、机器学习和 NLP 技术,实现网络安全新闻的自动化分析。该平台处理最新的安全头条,识别威胁的类型和严重程度,检测受影响的组织,并通过带有图表和可下载报告的交互式仪表板展示结果。
该项目展示了在一个应用中整合后端开发、机器学习、数据可视化以及网络安全概念的过程。
## 功能
- 实时网络安全新闻收集
- 基于机器学习的威胁分类
- 针对检测到的威胁进行严重程度预测
- 使用 spaCy NLP 进行组织提取
- 带有实时统计数据的交互式仪表板
- 威胁分布可视化
- 累计威胁时间轴
- 搜索与过滤
- PDF 报告生成
- REST API 端点
- 仪表板自动刷新
## 技术栈
### 后端
- Python
- Flask
### 机器学习
- Scikit-learn
- TF-IDF Vectorizer
- Multinomial Naive Bayes
### NLP
- spaCy
### 数据处理
- Pandas
- NumPy
### 前端
- HTML
- CSS
- Bootstrap 5
- JavaScript
- Chart.js
### 网页抓取
- BeautifulSoup
- Requests
## 项目结构
```
ThreatLens/
│
├── data/
├── ml/
├── nlp/
├── reports/
├── scraper/
├── static/
│ ├── css/
│ ├── js/
│ └── images/
├── templates/
├── flask_app.py
├── requirements.txt
└── README.md
```
## 仪表板
仪表板提供:
- 实时威胁源
- 威胁分布图
- 威胁时间轴
- 关键警报
- 高严重性威胁
- 公司检测
- CVE 检测
- 搜索
- PDF 导出
## REST API
| 端点 | 描述 |
|----------|-------------|
| `/api/news` | 返回处理后的威胁数据 |
| `/api/stats` | 仪表板统计数据 |
| `/api/threats` | 威胁分布 |
## 安装说明
克隆仓库
```
git clone https://github.com/nandagopalmutyala/ThreatLens.git
```
进入项目目录
```
cd ThreatLens
```
安装依赖
```
pip install -r requirements.txt
```
运行应用程序
```
python flask_app.py
```
打开浏览器
```
http://127.0.0.1:5000
```
## 未来增强
- 用于网络攻击事件的交互式世界地图
- 使用深度学习进行威胁趋势预测
- 用户身份验证
- 电子邮件警报
- 云部署
- 数据库集成
- 历史分析
- 多源情报源
## 作者
**Mutyala Nanda Gopal**
电子与通信工程
CVR 工程学院
GitHub
https://github.com/nandagopalmutyala
LinkedIn
https://www.linkedin.com/in/nanda-gopal-mutyala-3875663b4
## 许可证
本项目仅用于教育和学习目的。
标签:Apex, Flask, Splunk, 威胁情报, 开发者工具, 数据可视化, 机器学习, 网络安全, 网络测绘, 逆向工具, 隐私保护