av4nth1ka/cve-research-agent
GitHub: av4nth1ka/cve-research-agent
基于 Claude Code 与 MCP 的自动化 CVE 研究代理,能够从漏洞元数据获取到 patch diff 分析、source→sink 追踪及 PoC 生成,并输出结构化的 Markdown 研究简报。
Stars: 0 | Forks: 0
# Research Agent
一个基于 Claude Code + MCP 构建的 CVE 研究 agent。给它一个 CVE ID 和一个易受攻击的源代码目录——它会获取元数据,分析 patch diff,在源码中追踪缺陷,并撰写一份准备好发布到博客上的研究简报和 PoC。
## 它的功能
1. 从 NVD 和 OSV 获取 CVE 元数据
2. 通过 GitHub 查找并获取 patch diff
3. 读取易受攻击的源码并追踪缺陷的 source → sink
4. 分析可利用性和 patch 完整性
5. 将研究简报写入 `output/.md`
如果它无法自动找到 patch,它会停止并要求你提供。
## 设置
**前置条件:** Node 18+、Python 3.9+、Claude Code CLI
```
git clone https://github.com/av4nth1ka/cve-research-agent
cd cve-research-agent
# 安装 fetch MCP server
pip install mcp-server-fetch
```
将你的 GitHub token 添加到 `.claude/settings.json` 中:
```
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_yourtoken"
}
},
"fetch": {
"command": "python",
"args": ["-m", "mcp_server_fetch"]
}
}
}
```
创建 src/、output/ 目录,并将易受攻击的源码放入 `src/` 中。
## 用法
```
# basic — agent 自行寻找 patch
claude "Research CVE-2024-23897. Source is in src/. Write brief to output/CVE-2024-23897.md"
# 提供 patch URL
claude "Research CVE-2026-53435. Source is in src/.
Patch diff: https://github.com/jenkinsci/jenkins/compare/jenkins-2.567...jenkins-2.568
Write brief to output/CVE-2026-53435.md"
```
请从项目根目录运行,以便 Claude Code 能够读取到 `CLAUDE.md` 和 `.claude/settings.json`。
## 输出
每次运行都会生成 `output/.md`,其中包含:
- 严重性、CVSS、CWE、受影响版本
- Patch 分析 —— 改变了什么以及揭示了什么
- 包含文件路径和行号的完整 source → sink 追踪
- 利用前提条件和步骤
- 带注释的 PoC
- Patch 完整性评估
- 博客草稿大纲
## 备注
- 已在 Java 源码上进行了测试
标签:AI代理, Claude, CVE检测, MCP, MITM代理, PoC生成, 情报收集, 漏洞研究, 补丁分析, 逆向工具