paulieboi33-stack/threat-intelligence-platform
GitHub: paulieboi33-stack/threat-intelligence-platform
一个多源AI驱动的威胁情报平台,自动化收集、分析并可视化网络安全威胁,辅助快速响应。
Stars: 0 | Forks: 0
# 🛡️ 威胁情报平台






## 🎯 概述
这个生产级的威胁情报平台通过以下方式自动化网络安全操作:
- **收集**来自7+个实时API的威胁(CISA、NVD、MalwareBazaar、GitHub CVE、Exploit-DB)
- **分析**使用AI生成的摘要和MITRE ATT&CK映射
- **评分**使用自定义TPS算法的威胁
- **告警**针对影响您特定技术栈的威胁
- **报告**以多种格式(HTML、控制台、Markdown、CSV、PDF)
- **可视化**使用交互式Plotly图表和热图
- **仪表板**使用Streamlit Web界面
**它的作用:** 初级SOC分析师手动花费数小时完成的工作,这个系统可以在几分钟内完成——拥有漂亮的可视化和交互式仪表板!
## 🚀 快速开始
### 先决条件
- Python 3.9+
- pip3
- Git
### 安装
```
# 克隆仓库
git clone https://github.com/YOUR_USERNAME/threat-intelligence-platform.git
cd threat-intelligence-platform
# 安装核心依赖
pip3 install -r requirements.txt
# 安装可视化与机器学习包(可选但推荐)
pip3 install -r requirements_additional.txt
# 运行平台
python3 main.py
# 运行测试
python3 tests/test_suite.py
# 创建精美可视化
python3 scripts/create_visualizations.py
# 启动 Web 仪表板
streamlit run scripts/app.py
```
## 📊 增强的可视化功能
### 交互式图表:
- 📈 **MITRE ATT&CK 热图** - 攻击技术分布
- 🍩 **严重性分布** - 显示威胁分类的饼图
- 📉 **趋势分析** - 随时间变化的威胁发现
- 📊 **供应商影响** - 最受影响的软件供应商
- 🎨 **自定义可视化** - 您需要的任何图表
### 创建可视化:
```
python3 scripts/create_visualizations.py
```
### 输出:
- `outputs/heatmap.html` - 交互式MITRE ATT&CK热图
- `outputs/severity_pie.html` - 严重性分布图表
- `outputs/trend_chart.html` - 随时间变化的威胁趋势
- `outputs/vendor_chart.html` - 最受影响的供应商
- `outputs/report.html` - 主HTML报告
### 示例可视化输出:
```
📊 Creating Threat Intelligence Visualizations
✓ Heatmap saved to outputs/heatmap.html
✓ Severity pie chart saved to outputs/severity_pie.html
✓ Trend chart saved to outputs/trend_chart.html
✓ Vendor chart saved to outputs/vendor_chart.html
📊 All visualizations created successfully!
```
## 🤖 机器学习(可选)
### Scikit-learn 集成:
- **威胁聚类** - 分组相似的漏洞
- **预测模型** - 预测新兴威胁
- **异常检测** - 识别异常威胁模式
### XGBoost 高级分析:
- **梯度提升** - 更准确的预测
- **特征重要性** - 理解威胁驱动因素
- **交叉验证** - 模型性能测试
## 🌐 Web 仪表板(Streamlit)
### 访问交互式仪表板:
```
streamlit run scripts/app.py
```
**特性:**
- 📊 实时威胁源可视化
- 📈 交互式MITRE ATT&CK热图
- 🎯 关键威胁告警
- 📋 严重性分布图表
- 🔍 搜索和过滤威胁
- 📥 导出数据到CSV/JSON
- 🖥️ 移动友好界面
**访问地址:** http://localhost:8501
## 📁 项目结构
```
threat-intelligence-platform/
├── main.py # Main orchestrator
├── requirements.txt # Core dependencies
├── requirements_additional.txt # Visualization & ML packages
├── setup.sh # Automated setup script
├── tests/
│ └── test_suite.py # Comprehensive test suite (12 tests)
├── agents/
│ ├── scout.py # Threat collection agent
│ ├── reporter.py # Report generation agent
│ ├── watchdog.py # Alerting agent
│ ├── api_integration.py # API client layer
│ └── additional_feeds.py # Additional data sources
├── data/
│ ├── persistence.py # Database & storage layer
│ ├── export.py # Export utilities
│ └── org_profile.json # Target environment config
├── scripts/
│ ├── create_visualizations.py # Plotly/Matplotlib visualizations
│ └── app.py # Streamlit web dashboard
├── templates/
│ └── report.html # HTML dashboard template
├── outputs/
│ ├── report.html # Generated HTML reports
│ ├── heatmap.html # Interactive MITRE ATT&CK heatmap
│ ├── severity_pie.html # Severity distribution chart
│ ├── trend_chart.html # Threat trends over time
│ ├── vendor_chart.html # Vendor impact analysis
│ └── threats_export.json # Exported threat data
└── README.md # Project documentation
```
## 🎯 关键特性
### 🌐 多源威胁收集(7+ API)
- **NVD CVE API** - 国家漏洞数据库
- **CISA KEV 目录** - 已知被利用的漏洞
- **MalwareBazaar** - 活跃的恶意软件源
- **GitHub CVE 数据库** - 原始CVE列表
- **Exploit-DB** - 活跃的漏洞利用信息
- **VulnLookup** - 详细的CVE信息
- 优雅降级到示例数据
### 🤖 AI驱动的分析
- **纯英文摘要** - 每个威胁都有AI简报
- **MITRE ATT&CK 映射** - 自动战术分类
- **自定义TPS评分** - 超越原始CVSS评分
- **漏洞利用可用性检测** - 对响应至关重要
### 🛡️ 环境感知
- **可配置的技术栈** - 了解您正在保护的内容
- **动态告警** - 仅相关威胁触发告警
- **行业特定** - 针对您的环境定制
### 📊 专业报告
- **漂亮的HTML仪表板** - 演示就绪
- **控制台输出** - 快速查看
- **Markdown文档** - 技术文档
- **CSV导出** - 电子表格格式
- **PDF报告** - 主管摘要
- **交互式可视化** - Plotly图表
### 🧪 质量保证
- **12个综合测试** - 全部通过
- **代理测试** - 每个代理独立测试
- **集成测试** - 完整流水线验证
- **API错误处理** - 已测试失败情况
### 📈 数据分析
- **Pandas** - 高级数据处理和分析
- **按严重性分组** - 按风险级别分析威胁
- **按供应商分组** - 查找最受影响的软件
- **时间序列分析** - 随时间跟踪威胁
- **统计摘要** - 平均值、中位数、百分位数
### 🖥️ Web 仪表板
- **Streamlit** - 交互式Web界面
- **实时更新** - 实时威胁监控
- **移动友好** - 在手机/平板上工作
- **导出选项** - 下载报告
## 🧪 质量保证
### 测试覆盖率
- **12个综合测试** - 全部通过
- **代理测试** - 每个代理独立测试
- **集成测试** - 完整流水线验证
- **API错误处理** - 已测试失败情况
### 运行测试:
```
python3 tests/test_suite.py
```
## 🎓 演示指南
### 演示流程(15-20分钟):
1. **展示组织概况**(1分钟)
cat data/org_profile.json
2. **实时运行管道**(3分钟)
python3 main.py
3. **显示HTML报告**(3分钟)
open outputs/report.html
4. **展示可视化效果**(4分钟)
python3 scripts/create_visualizations.py
open outputs/heatmap.html
5. **解释AI分析**(3分钟)
- 突出显示AI摘要
- 展示MITRE ATT&CK映射
- 演示威胁评分
6. **Web仪表板演示**(2分钟)
streamlit run scripts/app.py
7. **以影响陈述结束**(1分钟)
## 🛡️ 安全规则
- ✅ **首次运行干模式** - 始终使用缓存/示例数据测试
- ✅ **模块化代理** - 每个代理独立工作
- ✅ **无硬编码密钥** - 使用环境变量
- ✅ **干净的输出** - 用于演示的专业HTML
- ✅ **经过测试并有文档** - 每个组件都经过测试
## 🔧 配置
### 组织概况
编辑 `data/org_profile.json` 以自定义您的环境:
```
{
"org_name": "DemoCorp",
"tech_stack": ["Apache", "Linux", "WordPress", "MySQL", "Python"],
"industry": "small_business",
"alert_threshold": 7.5,
"location": "Grogan's Mill, TX"
}
```
### 告警阈值
- `alert_threshold` - 触发告警的CVSS分数阈值
- 根据您的风险容忍度调整
## 📊 API端点
### NVD CVE API
- **URL:** `https://services.nvd.nist.gov/rest/json/cves`
- **认证:** 可选的API密钥用于速率限制
- **数据:** CVE描述、CVSS评分、引用
### CISA KEV 目录
- **URL:** `https://www.cisa.gov/known-exploited-vulnerabilities-catalog`
- **认证:** 需要认证(使用缓存的演示数据)
- **数据:** 主动被利用的漏洞
### MalwareBazaar
- **URL:** `https://firewall-mon.surge.sh/feed/urlhaus`
- **认证:** 无
- **数据:** 恶意软件样本哈希
## 📝 开发状态
### 阶段1:基础 ✅
- 项目结构和数据模型
- Scout代理和数据源
- 端到端验证
### 2:智能 ✅
- Analyst代理和TPS评分
- Claude API集成
- MITRE ATT&CK映射
### 阶段3:输出 ✅
- Reporter代理和HTML模板
- 控制台输出(rich库)
- 组织概况和Watchdog代理
### 阶段4:打磨 ✅
- 使用Plotly/Matplotlib/Seaborn的可视化
- README和文档
- 错误处理和弹性
- 机器学习集成(可选)
- Streamlit Web仪表板
## 📜 许可证
MIT许可证 - 可自由使用、修改和分发。
## 🎯 使用场景
- **教育** - 网络安全课程、AI/ML项目
- **作品集** - 展示Python和API技能
- **研究** - 威胁情报自动化
- **运营** - 小型企业安全监控
- **学习** - SOC分析师工作流程自动化
## 🔗 资源
- [MITRE ATT&CK 框架](https://attack.mitre.org/)
- [NVD API 文档](https://nvd.nist.gov/)
- [CISA KEV 目录](https://www.cisa.gov/know-your-attacker)
- [Plotly 绘图库](https://plotly.com/python/)
- [Scikit-learn 机器学习](https://scikit-learn.org/)
## 📧 联系
由 Paul Naeger 构建
机构:LoneStar 社区学院
项目:AI & 机器学习 AAS
邮箱:paulnaeger@protonmail.com
## 🎬 演示引言
## 🌟 增强特性
本平台包含:
- ✅ **7+ 个实时威胁数据源**
- ✅ **12 个通过的单元测试**
- ✅ **5+ 个交互式可视化**
- ✅ **AI驱动的威胁分析**
- ✅ **MITRE ATT&CK 映射**
- ✅ **多种导出格式**(HTML、CSV、JSON、PDF)
- ✅ **Web 仪表板**(Streamlit)
- ✅ **机器学习**(可选)
- ✅ **专业文档**
- ✅ **生产级代码**
**这不仅仅是一个学校项目 — 这是一个生产就绪的网络安全平台!**
标签:AI分析, Apex, API集成, CISA KEV, Cloudflare, CVE跟踪, HTML报告, Kubernetes, masscan, Matplotlib, MITRE ATT&CK, PDF报告, Plotly, PyRIT, Python3.9, Scikit-learn, Streamlit仪表板, TPS算法, XSS, 交互式可视化, 可观测性, 命令控制, 多智能体系统, 威胁情报平台, 威胁评分, 安全告警, 安全运营中心, 技术栈Python, 技术栈监控, 折线图, 攻击技术映射, 数据采集, 机器学习, 检索词: AI安全分析, 检索词: CVE跟踪, 检索词: MITRE ATT&CK, 检索词: 威胁情报, 深度包检测, 漏洞情报, 热图, 网络安全, 网络安全分析, 网络映射, 自动化威胁情报, 逆向工具, 隐私保护, 饼图