kayahalime/cve-enrichment-tool
GitHub: kayahalime/cve-enrichment-tool
一款基于多个开源威胁情报源的轻量级 CVE 富化与优先级排序工具,帮助安全团队快速识别最需要优先修复的漏洞。
Stars: 0 | Forks: 0
# CVE 富化工具
一个轻量级的 CVE 富化与优先级排序工具,使用开源安全情报源构建。
该应用程序通过确定以下内容来对 CVE 进行富化:
- 是否存在公开的 exploit
- 该漏洞是否已被在野利用
- 未来被利用的概率
- 用于辅助漏洞分类的最终优先级
## 数据源
使用了以下开源数据源:
- **NVD** – 基础 CVE 信息、描述和 CVSS 数据
- **Exploit-DB** – 公开 exploit 和概念验证元数据
- **Metasploit** – 公开 exploit 模块
- **CISA 已知被利用漏洞 (KEV)** – 已确认在真实攻击中被利用的 CVE
- **EPSS (Exploit Prediction Scoring System)** – 未来被利用的概率
## 优先级逻辑
| 优先级 | 条件 |
|----------|-----------|
| 🔴 严重 | CVE 被列在 CISA KEV 中 |
| 🟠 高 | 存在公开 exploit |
| 🟡 中 | 无公开 exploit,但 EPSS 显示高利用概率 |
| 🟢 低 | 未发现重大的 exploit 或风险信号 |
## 运行应用程序
启动图形界面:
```
python .\app.py
```
## 使用说明
该应用程序支持两种输入模式。
### 1. 单个 CVE
选择 **单个 CVE**,输入 CVE ID,提供您的 GitHub token,然后点击 **运行**。
示例:
```
CVE-2026-63030
```

### 2. CSV 导入
选择 **CSV 导入** 并上传名为 **cves.csv** 的文件。
该 CSV 文件必须包含名为 **cve_id** 的列。
示例:
```
cve_id
CVE-2025-9994
CVE-2025-9993
CVE-2025-9991
```

## 输出
对于每个 CVE,应用程序会显示:
- 最终优先级
- 公开 Exploit 状态
- 在野利用状态
- EPSS 得分
- EPSS 百分位
- CISA KEV 信息
- Exploit-DB 参考
- Metasploit 参考
结果也会写入到:
```
data/matched_output.jsonl
```
## 首次运行
在**首次执行**期间,应用程序会下载并构建本地 Metasploit 缓存。根据您的网络连接情况,这可能需要几分钟时间。
一旦创建了缓存,后续执行将重用本地缓存,速度会显著提升。
缓存仅在明确刷新时才会重新构建。
## GitHub Token
GitHub Personal Access Token 仅用于访问 Metasploit 仓库元数据,并避免 GitHub API 的速率限制。
该 token **不会被**应用程序存储,仅在执行期间使用。
## 要求
```
requests>=2.31.0,<3.0.0
```
## 免责声明
本项目仅用于漏洞富化、研究和优先级排序目的。
它**不会**执行 exploit 或进行漏洞利用。该应用程序仅关联来自多个受信任的开源情报源的公开可用安全情报。
标签:GPT, Python, 代码示例, 威胁情报, 开发者工具, 数据分析, 无后门, 桌面应用, 漏洞管理, 逆向工具