CynicPoet/ThreatForge
GitHub: CynicPoet/ThreatForge
一款自动化检测工程平台,能将 CVE、MITRE ATT&CK 技术或自然语言输入在十秒内转化为经过验证的多 SIEM 检测规则和事件响应剧本。
Stars: 0 | Forks: 0
# ThreatForge
**自动化检测工程 —— 从任意威胁到经过验证的多 SIEM 检测规则,耗时不到 10 秒。**
## 功能简介
ThreatForge 接收任意威胁输入 —— CVE ID、MITRE ATT&CK 技术或纯英文文本 —— 并自动生成:
- 经过验证的 **Sigma 检测规则**(YAML 格式,行业标准)
- 同时生成 **3 种 SIEM 查询格式** — Splunk SPL、QRadar AQL、Microsoft Sentinel KQL
- **合成攻击日志**,用于证明规则有效
- 针对 synthetic 和真实攻击日志样本的**双重验证**
- 一份**事件响应 playbook**,包含分流、遏制和证据收集步骤
- 一个**一键导出包** — 包含所有产物的 ZIP 压缩包,可直接用于 GitHub/CI-CD
**总耗时:不到 10 秒。** 手动处理等效耗时:每位分析师 2-5 小时。
## 快速开始(2 分钟)
### 1. 获取免费的 Gemini API 密钥
前往 [https://aistudio.google.com](https://aistudio.google.com) → Get API Key → Create API Key
无需付费。无需信用卡。永久免费(15 次请求/分钟,1M token/天)。
### 2. 克隆并配置
```
git clone https://github.com/shivampokharkar/threatforge
cd threatforge
copy .env.example .env
# 编辑 .env 并设置 GEMINI_API_KEY=your_key_here
```
### 3. 运行
```
docker compose up --build
```
### 4. 打开
[http://localhost:3000](http://localhost:3000)
### 5. 演示(无需手动输入)
点击 **Demo Cases** → 选择任意案例或点击 **Run All**
## 可选:使用 Ollama 完全离线运行
```
docker compose --profile ollama up --build
```
首次运行会下载约 4.7GB 的模型 (llama3.1)。之后即可完全离线运行。
在控制面板右上角切换至 Ollama。
## 演示案例
| 案例 | 输入 | 技术 | 类别 |
|---|---|---|---|
| Log4Shell RCE | CVE-2021-44228 | T1190 | Initial Access |
| PowerShell LOLBA | T1059.001 | T1059.001 | Execution |
| AWS S3 Exfiltration | 自然语言 | T1530 | Collection |
| SSH Brute Force | T1110.001 | T1110.001 | Credential Access |
| LSASS Credential Dump | T1003.001 | T1003.001 | Credential Access |
## 架构
```
Input (CVE / MITRE technique / plain text)
↓ MITRE ATT&CK mapping (LLM)
↓ Sigma rule generation (LLM + pySigma validation)
↓ Multi-SIEM conversion (Splunk SPL + QRadar AQL + Sentinel KQL)
↓ Synthetic log generation (LLM)
↓ Dual validation (synthetic + real attack logs)
↓ IR playbook generation (LLM)
↓ Export bundle (YAML + JSON + queries)
```
**技术栈:** Python FastAPI · React + Vite · pySigma 1.x · Gemini 1.5 Flash / Ollama · Docker
## 技术栈
| 组件 | 技术 |
|---|---|
| 后端 | Python 3.11 + FastAPI |
| 前端 | React 18 + Vite |
| Sigma 解析 | pySigma 1.3.x |
| Splunk 转换 | pysigma-backend-splunk |
| Sentinel KQL | pysigma-backend-microsoft365defender (KustoBackend) |
| QRadar AQL | 基于模板的生成器 |
| LLM(默认) | Google Gemini 1.5 Flash(免费层) |
| LLM(离线) | Ollama (llama3.1) |
| 部署 | Docker + Compose |
## 项目结构
```
threatforge/
├── backend/ # FastAPI application
│ ├── core/
│ │ ├── llm/ # Gemini + Ollama providers with hot-swap
│ │ ├── detection/ # MITRE mapper, Sigma generator, converter, validator
│ │ └── playbook/ # IR playbook generator
│ ├── api/routes/ # REST API endpoints
│ ├── data/
│ │ ├── test_cases.json # 5 predefined demo cases
│ │ └── real_logs/ # Real attack log samples per technique
│ └── tests/ # pytest suite
└── frontend/ # React dashboard
└── src/
├── components/ # Header, InputPanel, DemoRunner, ResultPanels
└── services/api.js # Backend API client
```
## 运行测试
```
# Unit tests (不需要 LLM)
docker compose exec backend pytest tests/test_validation.py -v
# 完整准确性测试 (需要 LLM)
docker compose exec backend python tests/test_accuracy.py
```
完整架构文档请参阅 [THREATFORGE_DOCUMENTATION.md](./THREATFORGE_DOCUMENTATION.md)。
*由 Shivam Pokharkar 构建*
标签:AI安全, AI风险缓解, AMSI绕过, Chat Copilot, CISA项目, Claude, Cloudflare, CVE检测, DLL 劫持, Gemini API, IR剧本, LLaMA 3, LLM评估, Microsoft Sentinel KQL, MITRE ATT&CK, Ollama, OpenCanary, QRadar AQL, SIEM查询生成, Sigma规则, Splunk SPL, 代码安全, 双重验证, 合成攻击日志, 多SIEM支持, 大语言模型, 威胁检测, 安全剧本, 日志验证, 本地大模型, 漏洞枚举, 目标导入, 网络安全, 自动化安全工程, 请求拦截, 逆向工具, 隐私保护