anantchakravarthy/Bishma
GitHub: anantchakravarthy/Bishma
基于LangGraph编排的多智能体APT仿真系统,通过模拟真实威胁组织进行攻防演练和事件响应训练。
Stars: 0 | Forks: 0
```
____ _ _ ____ _ _
| __ )(_)___| |__ _ __ ___ __ _ | _ \(_) |_ __ _ _ __ ___ __ _| |__ __ _
| _ \| / __| '_ \| '_ ` _ \ / _` | | |_) | | __/ _` | '_ ` _ \ / _` | '_ \ / _` |
| |_) | \__ \ | | | | | | | | (_| | | __/| | || (_| | | | | | | (_| | | | | (_| |
|____/|_|___/_| |_|_| |_| |_|\__,_| |_| |_|\__\__,_|_| |_| |_|\__,_|_| |_|\__,_|
```
# 🏹 Bishma Pitamaha — 多智能体 APT 仿真系统
**一个由 LangGraph 编排的多智能体系统,通过模拟高级持续性威胁 (APT) 进行事件响应 (IR) 训练。**
Bishma 利用 AI 驱动的智能体模拟现实世界的 APT 组织(Cozy Bear、Fancy Bear、APT41、Lazarus),这些智能体能够根据实时发现调整其攻击策略。每一个动作都会生成兼容 CrowdStrike 的遥测数据和全面的 IR 训练报告。
## ⚔️ Kurukshetra 的十位智能体
| 智能体 | 代号 | 角色 | MITRE 阶段 |
|-------|-----------|------|-------------|
| 🎭 Bhishma | Orchestrator | 战役指挥官 (LangGraph) | 全部 |
| ⚒️ Parashurama | Arsenal Manager | 工具发现与安装 | — |
| 🔭 Sahadeva | Recon | 网络与服务扫描 | TA0043 |
| 🗝️ Nakula | Initial Access | 漏洞利用与入侵 | TA0001 |
| 📜 Yudhishthira | AD Enum | Active Directory 映射 | TA0007 |
| ⚡ Arjuna | Cred Harvest | Kerberoast, AS-REP, DCSync | TA0006 |
| 🐍 Bhima | Priv Esc | 委派滥用, ADCS | TA0004 |
| 🦅 Ashwatthama | Lateral Move | Pass-the-Hash, WMI, WinRM | TA0008 |
| 🔥 Drona | Persistence | Golden Ticket, CrowdStrike 规避 | TA0003/TA0005 |
| 📊 Sanjaya | IR Reporter | Kill chain 报告 & ATT&CK 导出 | — |
## 🚀 快速开始
```
# 克隆并安装
cd Bishma
pip install -e ".[dev]"
# 设置 API keys(必需)
export BISHMA_CLAUDE_API_KEY="sk-ant-..."
export BISHMA_GROQ_API_KEY="gsk_..."
# 列出可用的 APT actors
bishma actors
# 扫描你的 Kali arsenal
bishma scan
# 运行 campaign(默认需审批)
bishma run campaigns/ad_lab_cozy_bear.yaml --actor apt29_cozy_bear
# Dry-run 模式(仅计划,不执行)
bishma run campaigns/ad_lab_cozy_bear.yaml --dry-run
```
## 🎭 APT 组织档案
| 组织 | 来源 | 噪音 | Mandiant ID |
|-------|--------|-------|-------------|
| APT29 / Cozy Bear | 俄罗斯 (SVR) | 低 | UNC2452 |
| APT28 / Fancy Bear | 俄罗斯 (GRU) | 中 | APT28 |
| APT41 / Winnti | 中国 (MSS) | 高 | APT41 |
| Lazarus Group | 朝鲜 (RGB) | 高 | UNC577 |
每个档案包含 MITRE ATT&CK 技术链、工具偏好、行为模式以及 CrowdStrike 签名映射。
## ⚙️ 配置
所有敏感配置均通过环境变量(前缀为 `BISHMA_`)进行:
```
# 必需 — 至少一个 LLM
export BISHMA_CLAUDE_API_KEY="sk-ant-..."
export BISHMA_GROQ_API_KEY="gsk_..."
# 可选覆盖
export BISHMA_EXECUTION_MODE="plan-only" # approval | plan-only | autonomous
export BISHMA_CLAUDE_MODEL="claude-sonnet-4-20250514"
export BISHMA_GROQ_MODEL="llama-3.3-70b-versatile"
```
## 📊 输出报告
每次战役结束后,Sanjaya 会生成:
- **CLI 简报** — 包含 7 个部分的富文本终端报告
- **JSON 报告** — 用于 SIEM 导出的完整战役数据
- **ATT&CK Navigator** — 颜色编码的 `.json` 层(红色=遗漏,绿色=检测到)
- **CSV 时间线** — 按时间顺序排列的操作日志
报告内容包括:
- IR 训练评分(A-F 等级)
- 被攻陷的账户及方法
- 捕获的 Flags/Artifacts(如 Golden Tickets 等)
- 防御缺口及建议修复方案
- 检测率与规避分析
## 🛡️ 安全架构
- **审批门控执行** — 每个命令都需要 `y/n/edit` 确认
- **命令黑名单** — 自动拦截 Fork 炸弹、磁盘擦除、`rm -rf /` 等操作
- **实验室 IP 验证** — 仅允许私有 IP 范围(10.x, 172.16-31.x, 192.168.x)
- **高风险警报** — 突出标记 DCSync、Golden Ticket、用户创建等操作
- **仅计划模式** — 在不执行任何操作的情况下进行完整的战役规划
## 📁 项目结构
```
Bishma/
├── src/bishma/
│ ├── agents/ # 10 Mahabharata-themed agents
│ ├── actors/ # APT actor profiles with Mandiant IDs
│ ├── arsenal/ # Tool scanner, installer, 40+ known tools
│ ├── execution/ # Approval-gated executor + safety guardrails
│ ├── state/ # 20+ Pydantic models (BishmaState)
│ ├── parsers/ # Campaign YAML parser
│ ├── telemetry/ # CrowdStrike telemetry generation
│ ├── reporting/ # Report templates
│ ├── config.py # Env-var configuration
│ ├── cli.py # Typer CLI (4 commands)
│ └── utils/ # Rich theming, logging, agent registry
├── campaigns/ # Example campaign YAMLs
├── pyproject.toml # Dependencies & project config
└── LICENSE # MIT License
```
## 🔧 技术栈
- **LangGraph** — 具备条件路由的有状态智能体编排
- **Claude / Groq** — 用于攻击规划的双 LLM 支持
- **Pydantic v2** — 类型安全的状态管理(20+ 模型)
- **Rich** — 战争主题的控制台输出
- **Typer** — 专业 CLI
- **PyYAML** — 战役和行动者档案解析
## ⚠️ 免责声明
Bishma 专为**授权渗透测试和 IR 训练**设计。在对任何目标运行之前,请务必获得适当授权。该工具包含多重安全机制,但操作者需对伦理使用负责。
*"正如库鲁王朝的始祖指挥战场,此工具亦将指挥全域。"*
标签:AD枚举, APT仿真, APT模拟, C2框架, Cloudflare, DCSync, Go语言工具, Kerberoasting, LangGraph, MITRE ATT&CK, PE 加载器, PyRIT, Sliver C2, STIX/TAXII, Web报告查看器, 事件响应训练, 侦察扫描, 协议分析, 多智能体系统, 威胁情报, 安全学习资源, 开发者工具, 数据展示, 杀伤链, 权限提升, 模拟器, 横向移动, 红队, 编程规范, 网络安全, 网络攻击模拟, 自动化攻击, 逆向工具, 隐私保护, 高级持续性威胁, 黄金票据