Aadhit77/agentic-malware-analysis
GitHub: Aadhit77/agentic-malware-analysis
这是一个基于Sysmon日志和LLM的恶意软件行为分析平台,能够自动检测MITRE ATT&CK技术并生成AI驱动的威胁情报报告。
Stars: 0 | Forks: 0
# 智能恶意软件行为分析与意图重构系统
一个行为恶意软件分析平台,接收 Windows Sysmon 日志,自动检测 MITRE ATT&CK 技术,重构攻击链,计算风险评分,并使用 Llama 3.3 70B 生成 AI 驱动的威胁情报报告。
## 功能说明
传统杀毒软件会问:*"此文件是否与已知恶意文件匹配?"*
本平台会问:*"该程序实际做了什么?"*
它分析来自 Windows Sysmon 的行为遥测数据,并根据 MITRE ATT&CK 框架自动对行为进行分类。
**基于包含的 Sysmon 日志的演示结果:**
- 解析了 2,327 个事件 → 543 个可疑 → 检测到 13 种 MITRE 技术
- 风险等级:**严重 (100/100)**
- AI 生成的威胁情报报告,解释攻击者意图
## 架构
```
Sysmon EVTX Log
│
▼
┌─────────────────────────────────────────────────────┐
│ 7-Stage Pipeline (FastAPI Backend) │
│ │
│ Stage 1: evtx_parser.py Binary → JSON │
│ Stage 2: event_filter.py Noise → Signal │
│ Stage 3: mitre_mapper.py Events → ATT&CK │
│ Stage 4: risk_engine.py Techniques → Score │
│ Stage 5: attack_graph.py Techniques → Graph │
│ Stage 6: feature_extractor.py → 25 Features │
│ Stage 7: threat_explainer.py → AI Report │
└─────────────────────────────────────────────────────┘
│
▼
React Frontend Dashboard
├── Risk Gauge (SVG arc, 0-100)
├── Behavioral Stats (LOLBins, injections, etc.)
├── D3.js Tactic Severity Chart
├── Sortable MITRE ATT&CK Table
├── Cytoscape.js Interactive Attack Graph
└── AI Threat Report (Markdown rendered)
```
## 技术栈
| 层级 | 技术 | 用途 |
|-------|-----------|---------|
| 日志采集 | Sysmon + EVTX | Windows 行为遥测 |
| 解析 | python-evtx | 二进制 EVTX 转结构化 JSON |
| 检测 | 自定义规则 (35 条) | MITRE ATT&CK 映射 |
| 图分析 | NetworkX | 攻击链重构 |
| 风险评分 | 加权公式 | 0-100 严重性评分 |
| AI 推理 | Groq + Llama 3.3 70B | 威胁情报报告 |
| API | FastAPI + Uvicorn | REST 后端 |
| 前端 | React + Vite | 仪表盘 UI |
| 可视化 | D3.js + Cytoscape.js | 图表与攻击图 |
| 容器化 | Docker + Docker Compose | 一键部署 |
## 快速开始
### 选项 A — 开发模式(不使用 Docker)
**后端:**
```
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
$env:GROQ_API_KEY = "your_key_here"
$env:LLM_BACKEND = "groq"
python -m uvicorn backend.api.main:app --reload --port 8000
```
**前端(新终端):**
```
cd frontend
npm install
npm run dev
```
打开:http://localhost:3000
### 选项 B — Docker(一条命令)
```
docker-compose up --build
```
使用 Groq AI:
```
$env:GROQ_API_KEY = "your_key_here"
$env:LLM_BACKEND = "groq"
docker-compose up --build
```
打开:http://localhost:3000
## API 端点
| 方法 | 端点 | 描述 |
|--------|---------|-------------|
| GET | `/demo` | 立即对内置 EVTX 运行流水线 |
| POST | `/upload` | 上传 EVTX 文件 |
| POST | `/analyze/{sha256}` | 对上传的文件运行完整流水线 |
| GET | `/results/{sha256}` | 获取缓存的分析结果 |
| GET | `/samples` | 列出所有上传的样本 |
| GET | `/health` | 健康检查 |
Swagger UI:http://localhost:8000/docs
## 运行集成测试
```
python scripts/test_pipeline.py
```
预期结果:`105/105 tests passed`
## MITRE ATT&CK 检测规则
跨越 10 种战术的 35 条规则,涵盖执行、持久化、权限提升、防御规避、凭证访问、发现、横向移动、收集、命令与控制以及外泄。
## 风险评分公式
```
score = base_weight x tactic_multiplier x log2(hit_count + 1)
```
战术权重:凭证访问 (1.5x) > 权限提升 (1.4x) > C2 (1.3x) > 持久化 (1.2x) > 执行 (1.0x) > 发现 (0.9x)
风险等级:严重 (>=75) | 高 (>=50) | 中 (>=25) | 低 (<25)
## LLM 后端选项
| 后端 | 成本 | 设置 |
|---------|------|-------|
| Groq Llama 3.3 70B | 免费,14,400/天 | console.groq.com |
| Gemini 1.5 Flash | 免费,1,500/天 | aistudio.google.com |
| OpenAI GPT-4o-mini | 约 $0.01/次分析 | platform.openai.com |
| Ollama 本地 | 免费,无限制 | ollama.com |
| Mock 离线模式 | 免费,始终可用 | 默认 |
## 项目结构
```
agentic-malware-analysis/
├── backend/ 7-stage Python pipeline
├── data/ sysmon_logs.evtx (included)
├── docker/ nginx.conf
├── frontend/ React Vite dashboard
├── sandbox/ user_simulation.py
├── scripts/ test_pipeline.py (integration tests)
├── Dockerfile backend container
├── Dockerfile.frontend frontend container
├── docker-compose.yml one-command deploy
└── requirements.txt
```
## 许可证
MIT License
标签:AI安全报告, API接口, ATT&CK映射, AV绕过, Cloudflare, D3.js, DAST, DLL 劫持, EVTX日志解析, FastAPI, HTTP/HTTPS抓包, Llama 3.3, LOLBins, MITRE ATT&CK, React前端, SSH蜜罐, Windows Sysmon, 协议分析, 大语言模型, 威胁情报, 安全运营, 开发者工具, 开源安全工具, 态势感知, 恶意软件分析, 扫描框架, 攻击链重构, 数据包嗅探, 权限提升, 横向移动, 特权检测, 私有化部署, 编程规范, 网络安全, 网络安全审计, 自动化分析, 请求拦截, 跨站脚本, 进程注入, 逆向工具, 逆向工程平台, 速率限制处理, 防御规避, 隐私保护