AadiBagde/CyberIntel_Agent
GitHub: AadiBagde/CyberIntel_Agent
基于 LangGraph 构建的自主多智能体威胁情报调查平台,通过整合 NVD 和 CISA KEV 数据源实现自动化的漏洞研究、去重、分析与校验。
Stars: 0 | Forks: 0
# CyberIntel Agent
具备多智能体推理、结构化输出、校验防护机制和持久化内存的自主威胁情报系统——而非简单的 LLM 封装。
**当前状态:第三阶段已完成**(研究 + 去重 + 威胁分析 + NVD + CISA KEV)。
## 架构
```
User / Scheduler → n8n (Phase 7) → FastAPI → LangGraph
→ Research → Dedup → Analysis → Validation
→ Memory (Postgres + Qdrant) → Report → API
```
- **[docs/ARCHITECTURE.md](docs/ARCHITECTURE.md)** — 系统设计
- **[docs/PHASE1.md](docs/PHASE1.md)** — 研究 agent 与提供者
- **[docs/IMPLEMENTATION_PHASES.md](docs/IMPLEMENTATION_PHASES.md)** — 完整路线图
## 快速开始
```
cp .env.example .env
docker compose up --build
```
或本地开发:
```
pip install -r requirements.txt
docker compose up -d postgres qdrant
alembic upgrade head
uvicorn backend.api.main:app --reload
```
## API
| 方法 | 路径 | 描述 |
|--------|------|-------------|
| GET | `/health` | 快速状态检查 |
| GET | `/api/v1/health` | Postgres + Qdrant 健康状态 |
| POST | `/api/v1/investigate` | 运行 CVE 研究 + 去重 + 分析 pipeline |
| GET | `/api/v1/investigation/{id}` | 获取调查结果 |
### 调查 CVE
```
curl -X POST http://localhost:8000/api/v1/investigate \
-H "Content-Type: application/json" \
-H "X-Trace-Id: demo-001" \
-d "{\"query\": \"CVE-2024-3094\"}"
```
成功时返回包含 `research`、`assessment` 和 `deduplication` 的 `InvestigationResponse`。
### 获取调查结果
```
curl http://localhost:8000/api/v1/investigation/{id}
```
响应包含一等制品(first-class artifacts):
```
{
"investigation": {
"id": "...",
"status": "completed",
"research": { },
"assessment": { },
"deduplication": {
"is_duplicate": true,
"similarity_score": 1.0,
"method": "exact_match"
}
}
}
```
## 当前功能
**研究(第一阶段)**
- CVE 验证(`CVE-YYYY-NNNN`,容忍大小写和空格)
- 异步 NVD CVE 2.0 API 集成(支持重试和速率限制处理)
- CISA KEV 目录(带缓存,可优雅降级)
- 用于未来数据源的 provider 抽象
- 结构化的 `ThreatResearch` 持久化到 PostgreSQL
**分析(第二阶段)**
- `ThreatAnalysisAgent` 通过 Gemini LLM 对 `ThreatResearch` 进行推理
- 结构化的 `ThreatAssessment`:严重程度、置信度 (0–100)、推理过程、修复建议、不确定性说明
- 分析失败会以结构化的 workflow 错误呈现;研究结果仍会被持久化
**去重(第三阶段)**
- 基于规范化 CVE 查询的 SHA-256 指纹识别
- 在分析前进行 PostgreSQL 查询;遇到完全重复时跳过 LLM
- 复用匹配的调查中先前的 `ThreatResearch` + `ThreatAssessment`
- LangGraph pipeline:`bootstrap → research → deduplicate → analyze → persist_artifact`
- 安全的数据库失败回退;每次调查均包含结构化的 `deduplication` 元数据
## 测试
```
pytest
```
## 下一阶段
**第四阶段 — 校验 Agent**:针对虚构的 CVE、不受支持的漏洞利用声明以及 CVSS 不匹配情况提供防护机制。
准备好后请说 **“implement Phase 4”**。
## MVP 进度
| 组件 | 状态 |
|-----------|--------|
| 阶段 0 基础设施 | 已完成 |
| 研究 Agent (NVD + CISA KEV) | 已完成 |
| 威胁分析 Agent | 已完成 |
| 去重层 | 已完成 |
| 校验 Agent | 已规划 |
| 记忆层 | 已规划 |
| 报告生成器 | 已规划 |
| 基础 n8n 触发器 | 已规划 |
标签:AV绕过, FastAPI, LangGraph, Web报告查看器, 威胁情报, 安全智能体, 实时处理, 密码管理, 开发者工具, 测试用例, 自动化调查, 请求拦截, 逆向工具