TL;DR: VulnClaw 是一个纯 Python 实现的 AI 渗透测试 CLI 工具。说一句\"帮我对 http://target.com 做渗透测试\",它就会自动执行信息收集→漏洞发现→漏洞利用→报告生成的全流程。支持 13 个 LLM Provider、MCP 工具链、目标驱动求解引擎、证据级反幻觉闸门,适合授权渗透、CTF 竞赛和安全教学。
一、这是什么项目?
VulnClaw(项目地址:https://github.com/Unclecheng-li/VulnClaw)是一个 AI 驱动的渗透测试 Agent,以 CLI 形式运行。
它解决的核心问题是:把人类渗透测试专家的思维流程,用 LLM Agent + 工具链的方式工程化。
传统的渗透测试自动化依赖固定的脚本和扫描器,缺乏\"思考\"能力。遇到 WAF 会卡死,发现不了非常规的攻击路径。VulnClaw 的思路是让 AI 来分析上下文、制定策略、调用工具验证,甚至根据失败原因自动更换绕过方式。
二、核心架构
VulnClaw 的架构分四层:
LLM Agent 层
对接 OpenAI、MiniMax、DeepSeek、智谱、Moonshot、通义千问等 13 个 LLM Provider,一键切换。支持原生 Tool Calling。
MCP 编排层
内置 4 个 MCP 服务:
- fetch——网页抓取(本地实现,开箱即用)
- memory——记忆管理(本地实现,开箱即用)
- chrome-devtools——对接外部 Chrome DevTools 实现浏览器自动化
- burp——对接 Burp Suite 实现 HTTP 抓包重放
Skill 体系
内置 21 个渗透 Skill(7 核心 + 14 专项),涵盖:
- 信息收集、端口扫描、目录枚举
- Web 漏洞检测(SQL 注入、XSS、SSRF、RCE 等)
- CTF Web/Crypto/Misc
- OSINT 信息收集
- 29 种编解码/加解密工具(Base64、Hex、URL、JWT、AES、Morse 等)
- 180 个参考文档
安全知识库
内置知识库模块,CLI 即可维护,检索增强正在逐步接入主流程。
三、最亮眼的特性3.1 目标驱动求解引擎(不是固定轮数循环)
旧版的渗透 Agent 大多是\"跑满 N 轮就停\",弱模型上经常出现\"反复请求同一页面、嘴上说测注入却不发包\"的死循环。
VulnClaw 重新设计了引擎,把渗透建模为状态空间搜索:
- Fact(事实):已被真实工具输出确认的客观事实(探测的落脚点)
- Intent(意图):声明要探索的方向,从 Fact 出发
循环是:
REASON(读全图)→ 目标达成?/ 提出新方向 ↓ EXPLORE(领一个 Intent)→ 用工具执行 → 结论写回 Fact ↓ 终止:目标达成 / 探索前沿耗尽 / 触达安全预算
结构上杜绝打转:一旦\"首页是登录框\"成为 Fact,就不会再提\"去看首页\",而是提\"测 SQL 注入\"。
3.2 证据级反幻觉闸门
这是对付大模型\"瞎编 flag\"的硬核机制。
传统 AI 渗透最头痛的问题:模型说\"找到了 flag\",但实际根本没拿到。VulnClaw 在 solve() 里录下所有真实工具输出(HTTP 响应体、python_execute 输出)作为唯一可信证据:
- 结论闸门:声称的 flag 必须在工具输出里逐字符出现,否则判定幻觉、丢弃
- 完成闸门:如果目标要 flag 但输出里从来没有 → 拒绝完成,继续探索
- 即时收敛:一旦拿到经过验证的 flag,立即完成
3.3 反思引擎(L0-L4 渐进绕过)
失败不是终点。VulnClaw 会:
- 自动归类失败原因(环境限制 / 路径错误 / 参数错误 / 信息不足)
-
按 L0 → L4 递进升级 payload 绕过策略:
-
L0:原始 payload
- L1:URL 编码
- L2:双写注释绕过
- L3:Unicode/Hex 编码
-
L4:多层混淆 / 换攻击面
-
Persistent 模式跨周期保留失败记忆
3.4 低耦合插件体系
不只是核心引擎,还带一个插件运行时。内置的只读 Web 插件可以分析安全响应头、JWT Token、JS 端点等,结果自动汇入报告链路。
四、使用方式
VulnClaw 提供了四种交互界面:
① CLI 命令行(最适合脚本化)
vulnclaw run 192.168.1.100 # 一键全流程 vulnclaw recon target.com # 仅信息收集 vulnclaw exploit target.com——cve CVE-2024-1234 # 漏洞利用 vulnclaw report session.json # 生成报告
② REPL 交互式(最适合探索)
vulnclaw
🦞 vulnclaw> 对 http://target.com 进行渗透测试,这是我授权的靶场
输入自然语言,AI 自动理解意图并执行。
③ TUI 终端图形界面
vulnclaw tui --target https://target.example --mode deep
先展示授权目标、检查模式、安全边界,确认后再启动。
④ Web UI
vulnclaw web
# 打开 http://127.0.0.1:7788
浏览器操作渗透全流程。
持续性渗透
100 轮/周期 × 最多 10 周期 = 1000 轮深度测试,每个周期自动生成增量报告:
Cycle 1 (100轮) → 自动报告 → 继续
Cycle 2 (100轮) → 自动报告 → 继续
... 直到 Ctrl+C 或达到最大周期数
五、快速上手
# 从 PyPI 安装
pip install vulnclaw
# 配置 LLM(支持 13 个提供商)
vulnclaw config provider minimax vulnclaw config set llm.api_key sk-your-key
# 环境检查
vulnclaw doctor
# 开始渗透
vulnclaw run target.com
也支持 Docker 部署和 ChatGPT 免 API Key 登录。
六、技术点评
VulnClaw 在技术设计上有几个独特的决策值得关注:
- 放弃固定轮数 → 目标驱动。这是 LLM Agent 从玩具走向实用化的关键一步。目标驱动意味着不会在死路上浪费 token,也不会在成功前盲目空转。
- 证据闸门反幻觉。在安全场景里,\"幻觉\"不是小问题而是致命问题。声称找到了一个不存在的漏洞,比没找到漏洞更危险。
- L0-L4 递进绕过。这是对人类渗透测试思维的工程化复现——一种绕过方式不生效,自动升级到下一个级别,并根据失败原因动态调整。
- 14 个 Label Provider + 自由切换。不绑定任何单一模型,可以针对不同阶段选择不同模型(比如信息收集用便宜的 flash 模型,漏洞利用用强推理模型)。
当然也要看到局限性:
- Python 代码执行目前仍是\"高风险实验能力\",不是强隔离沙箱
- 在复杂企业内网环境中,MCP 服务链的可靠性还需验证
- 弱模型(如小参数模型)在这种 Agent 架构中的表现会显著下降
七、授权声明
项目作者强调:仅适用于已授权的渗透测试、CTF 竞赛、安全教学和红队演练场景。
VulnClaw 内置了沙盒模式提示词,解锁 AI 安全测试能力专门面向授权场景。在非授权目标上使用属于违法行为,请自行承担法律责任。
八、总结
VulnClaw 代表了 AI + 安全 领域的一个新方向——不是用 AI 替代安全工程师,而是让 AI 作为安全工程师的\"副驾驶\":
- 你做战略决策(授权目标、攻击视角、风险承受度)
- AI 做战术执行(端口扫描、漏洞发现、payload 构造、报告撰写)
在 CTF 赛场上,这可能成为新一代的\"AutoPwn\"。在企业红蓝对抗中,这可能成为渗透测试团队的标准工具箱之一。
一个用起来像跟人说话一样的渗透测试工具,这本身就是一个足够有趣的开场。
━━━ ━━━ ━━━
后记: VulnClaw 完全开源(MIT 协议),代码托管在 GitHub。项目仍在活跃开发中,欢迎 Star 和贡献。如果你在安全测试或 CTF 中试用了,欢迎反馈体验。
━━━ ━━━ ━━━
*欢迎关注 LeisureLinux,获取更多深度技术解读。*
OpenAI 发布 GPT-5.6 Sol:最强模型却先给「一小撮人」
NSA 局长亲述:Anthropic Mythos 在数小时内攻破几乎所有机密系统
OpenAI 发布 Daybreak:AI 驱动的防御革命与安全范式转移