0xb4bal/phantom-htb

GitHub: 0xb4bal/phantom-htb

基于 Claude Code 的全自动 HTB 渗透测试 Agent,通过递归循环和跨目标知识库累积实现自主打靶。

Stars: 0 | Forks: 0

# PHANTOM — HTB 渗透测试 Agent ``` ┌─────────────────────────────────────────────┐ │ RECON ──► ENUM ──► EXPLOIT ──► PRIVESC │ │ ↑ │ │ │ └──────── REFINE LOOP ─────────┘ │ │ │ │ Every iteration → wiki/ compounds │ │ Zero hallucination. Facts only. │ └─────────────────────────────────────────────┘ ``` ## 架构 受三个项目启发: | 项目 | 借鉴之处 | |---------|-----------------| | [autoresearch](https://github.com/karpathy/autoresearch) | `program.md` 模式结构,递归的观察→假设→执行循环,固定预算的实验 | | [LLM Wiki](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f) | 持久化复合知识库,`index.md` + `log.md`,原始数据 → 知识库 → 模式结构三层架构 | | [caveman](https://github.com/JuliusBrussee/caveman) | Token 高效输出,去除冗余词汇,保持技术精确度 | ### 三层架构 (LLM Wiki 模式) ``` raw/ ← Immutable tool outputs (nmap, gobuster, etc.) wiki/ ← LLM-maintained knowledge base (you read this) index.md ← Master catalog log.md ← Append-only audit trail targets/ ← One page per HTB machine sessions/ ← One page per session techniques/ ← Reusable attack patterns flags/ ← Captured flags CLAUDE.md ← Agent schema (autoresearch: program.md) skills/ ← Claude Code skill files state/session.json ← Runtime state tools/ ← Helper scripts ``` ## 快速入门 ### 1. 安装 Claude Code ``` npm install -g @anthropic-ai/claude-code ``` ### 2. 克隆此仓库 ``` git clone https://github.com/0xb4bal/phantom-htb.git cd phantom-htb ``` ### 3. 连接 HTB VPN ``` sudo openvpn your_htb.ovpn ``` ### 4. 初始化会话 ``` chmod +x tools/setup.sh ./tools/setup.sh 10.10.11.XXX ``` ### 5. 启动 Claude Code ``` claude ``` ### 6. 启动 Agent ``` Have a look at CLAUDE.md and start Phase 1 recon on the target. ``` 完成。Agent 会读取 CLAUDE.md,遵循递归循环,并随着每次发现更新 wiki/。 ## 技能(斜杠命令) | 命令 | 阶段 | 功能描述 | |---------|-------|--------------| | `/recon` | 阶段 1 | Nmap + web/smb/ftp 枚举 | | `/enum` | 阶段 2 | 针对各项服务的深度枚举 | | `/exploit` | 阶段 3 | 漏洞利用尝试 | | `/privesc` | 阶段 5 | Linux/Windows 权限提升 | | `/report` | Post-pwn | 从知识库生成完整报告 | | `/state` | 任意 | 显示当前会话状态 | | `/caveman` | 任意 | 切换 Token 高效输出模式 | ## 状态追踪器 ``` # 检查当前状态 python3 tools/state.py status # 更新阶段 python3 tools/state.py phase EXPLOIT # 记录发现 python3 tools/state.py port 80 tcp http "Apache 2.4.38" python3 tools/state.py cred ssh admin password123 "gobuster found /admin" python3 tools/state.py flag user "abc123def456..." ``` ## 递归循环(autoresearch 风格) Agent 自主运行此循环。它从不跳过任何步骤。 ``` ITERATION N: 1. OBSERVE → Read last tool output + wiki state 2. HYPOTHESIZE → 3 ranked attack vectors 3. PLAN → Select highest probability → exact command 4. EXECUTE → Run tool → save to raw/ 5. REFINE → if null/error → update wiki → loop to OBSERVE if finding → update wiki → escalate phase ``` ## 知识库作为知识库 知识库在不同机器间不断积累复合。在机器 A 上学到的技术同样适用于机器 B。 ``` Machine A: Discovered LFI→log poisoning pattern → wiki/techniques/lfi-log-poison.md created Machine B: Sees similar web stack → Agent reads wiki/techniques/ → tries LFI first ``` 这是 LLM Wiki 模式的核心:**知识不断积累,而非重新推导**。 ## Token 效率 Caveman 模式默认开启。响应类似: ``` Ports: 22,80,443 HTTP: Apache 2.4.38. Running gobuster. SSH: OpenSSH 8.2. No known RCE. Low priority. Next: web enum, check /robots.txt, /admin ``` 而不是: ``` "I would recommend that we consider running gobuster against the web server on port 80 to enumerate any hidden directories that might be present on the target system..." ``` ## 贡献技术 当你攻破一台机器时,请添加该技术: ``` # 示例: cat > wiki/techniques/ssti-jinja2.md << 'EOF' # 技术:SSTI Jinja2 RCE Tags: ssti, jinja2, python, rce Payload: {{7*'7'}} → 7777777 (confirmed Jinja2) RCE: {{config.__class__.__init__.__globals__['os'].popen('id').read()}} EOF ``` ## 文件结构 ``` phantom-htb/ ├── CLAUDE.md ← Agent brain (read this first in Claude Code) ├── README.md ← This file ├── skills/ │ ├── recon.skill ← Phase 1 instructions │ ├── exploit.skill ← Phase 3 instructions │ └── report.skill ← Report generation ├── wiki/ │ ├── index.md ← Master catalog (LLM-maintained) │ ├── log.md ← Audit trail │ ├── targets/ │ │ └── TEMPLATE.md ← Copy for each machine │ ├── sessions/ │ │ └── TEMPLATE.md ← Copy for each session │ └── techniques/ │ └── privesc-linux.md ├── state/ │ └── session.json ← Runtime state ├── tools/ │ ├── setup.sh ← Initialize session │ └── state.py ← State manager CLI └── raw/ ← Tool outputs go here ``` ## 道德准则 此 Agent 仅用于授权的 HTB 实验室机器。 切勿对您没有明确测试权限的系统使用。 所有操作均记录在 wiki/log.md 中,以确保可追溯性。
标签:AI安全智能体, Claude, CSV导出, CVE检测, DLL 劫持, HackTheBox, HTB, Web报告查看器, Windows内核, XXE攻击, 协议分析, 反取证, 命令与控制, 大语言模型, 安全知识库, 安全评估, 密码管理, 应用安全, 数据展示, 权限提升, 白帽子, 红队, 网络安全, 网络安全审计, 脚本工具, 自动化攻击, 自动化渗透, 逆向工具, 递归循环, 防御加固, 隐私保护