by Netw0rkNoob
基于 AI Agent + MCP 工具链 + 渗透 Skill 编排, 配合大语言模型, 自然语言输入 → 自动完成「信息收集 → 漏洞发现 → 漏洞利用 → 报告生成」全流程。
# Add to your Claude Code skills
git clone https://github.com/Netw0rkNoob/VulnClawLast scanned: 8/10/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-08-10T05:25:00.433Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}VulnClaw is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by Netw0rkNoob. 基于 AI Agent + MCP 工具链 + 渗透 Skill 编排, 配合大语言模型, 自然语言输入 → 自动完成「信息收集 → 漏洞发现 → 漏洞利用 → 报告生成」全流程。. It has 2,665 GitHub stars.
Yes. VulnClaw passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/Netw0rkNoob/VulnClaw" and add it to your Claude Code skills directory (see the Installation section above).
VulnClaw is primarily written in Python. It is open-source under Netw0rkNoob on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh VulnClaw against similar tools.
No comments yet. Be the first to share your thoughts!
AI 驱动的渗透测试 CLI 工具 — 说人话,打漏洞。
🌐 English version: README_EN.md
本项目是可独立运行的 AI 渗透测试 Agent。 项目官网:https://unclecheng-li.github.io/vulnclaw.com/
基于 LLM Agent + MCP 工具链 + 可选 Skill 参考资料, 配合 OpenAI / Anthropic / MiniMax / DeepSeek 等兼容模型, 自然语言输入 → 自动完成「信息收集 → 漏洞发现 → 漏洞利用 → 报告生成」全流程。
输入自然语言,AI 自动执行渗透测试全流程:
用户输入:帮我对 http://target.example.com 进行渗透测试
VulnClaw 自动执行:
Round 1: 信息收集 → 指纹识别、端口扫描、目录枚举
Round 2: 漏洞发现 → 检测注入点、已知 CVE、配置缺陷
Round 3: 漏洞利用 → PoC 验证、权限获取
Round 4: 报告生成 → 结构化报告 + Python PoC 脚本
适用于已授权的渗透测试、CTF 竞赛、安全教学、红队演练等场景。
AgentState.evidence,raw 原文完整保留;active context 默认只注入高信号预览,evidence_search / evidence_view 用于按需回查原始证据fetch / memory 本地实现开箱即用,chrome-devtools / burp 对接外部 MCP 服务实现浏览器自动化和 HTTP 抓包重放evidence/traffic/,内置 traffic_list / traffic_view / traffic_repeat / traffic_sitemap 工具直接读写vulnclaw plugins)load_skill_reference 按需读取,不再作为强制剧本注入上下文fetch / http_probe_batch 遇到 highlight_file、HTML 高亮源码或混杂 HTML/JS body 时会自动在 raw body 前追加 clean source;http_probe_batch 默认关闭 TLS 校验并记录完整响应头,避免丢失 X-Powered-By 等运行时证据;内置 source_extract 仍可用于按需重读历史 evidence,并固定危险 sink、表单与 endpoint 信号shell_command,用于 php -r 反序列化验证、curl 精确请求、rg/Select-String 文件检索等 Codex-style 本地调试场景;raw stdout/stderr 完整写入 evidence,大输出进入模型时使用高信号预览runtime_diff_probe,用于正则/字符串过滤器与运行时解析器不一致的场景,帮助模型批量生成并验证“过滤器漏过、解析器接受”的候选;PHP 序列化模式会提示目标/本地运行时版本差异,并把 PHP5 signed length 候选标记为必须远程验证,避免被本地新版 PHP 误杀python_execute 工具,适合 payload 构造和响应解析;当前仍属高风险实验能力,不应视为强隔离沙箱http_probe_batch,用于一次比较多组 URL/参数/header/body/raw URL 变体,默认返回每个响应的完整 body,并在模型可见输出中展示实际请求面(method、URL、params、headers、cookies、body/json),减少重复 LLM 轮次和手写请求代码NO_PATH 闸门:当源码 sink、表单/参数、请求面、本地 proof 或响应差异等高信号尚未耗尽时,不接受模型因单次 payload 无回显/远端 same-body 就提前判死think on/off 一键切换 LLM 思考过程的显示/隐藏vulnclaw web 启动本地 Web 界面,默认 127.0.0.1:7788# 从 PyPI 安装(推荐)
pip install vulnclaw
# 从源码安装
git clone https://github.com/Netw0rkNoob/VulnClaw.git
cd VulnClaw
pip install -e .
镜像已内置 Web UI 以及默认 MCP 服务所需的运行时(npx / uvx),所有状态持久化到 /data 数据卷。
cp .env.example .env # 填入 VULNCLAW_LLM_API_KEY 等
docker compose up --build # 构建镜像并启动 Web UI
# 打开 http://127.0.0.1:7788
也可用纯 docker 运行某条 CLI 命令:
docker run --rm -it \
-e VULNCLAW_LLM_API_KEY=sk-your-key-here \
-v vulnclaw-data:/data \
vulnclaw:latest scan <target>
⚠️ 容器内的
localhost指向容器自身。扫描宿主机服务请使用host.docker.internal,扫描其它容器请共享网络并用容器名访问。详见 DOCKER.md。
# 1. 选择提供商(自动填充 Base URL 和模型名)
vulnclaw config provider minimax (或 openai/anthropic/deepseek/zhipu/moonshot/qwen/siliconflow/ollama)
# 1.2(可选)自定义 Base URL 或模型名
vulnclaw config set llm.base_url https://your-own-api.example.com/v1
vulnclaw config set llm.model your-model-name
# 2. 设置 API Key
vulnclaw config set llm.api_key sk-your-key-here
# — 或改用 ChatGPT 订阅登录(无需 API Key):
# vulnclaw login (浏览器登录;详见 docs/keyless-auth.md,注意 ToS 风险)
# 3. 默认:打开原 CLI / REPL
vulnclaw
# 4. 可选:打开 TUI 工作台
vulnclaw tui
vulnclaw doctor
输出示例:
🦞 VulnClaw 环境检查
Python: 3.14.4
Node.js: v24.14.1
npx: 已安装
nmap: 已安装
LLM 配置:
Provider: openai
Auth Mode: static
Credentials: configured
Base URL: https://api.openai.com/v1
Model: gpt-4o
MCP 服务:
fetch: 已启用 [P0]
memory: 已启用 [P0]
...
✅ 环境就绪,运行 vulnclaw 开始
$ vulnclaw --help
🦞 VulnClaw — AI-powered penetration testing CLI
Usage: vulnclaw [OPTIONS] COMMAND [ARGS]...
Commands:
run 🚀 一键全流程渗透测试(默认使用 solve 引擎)
solve 🧩 目标驱动求解(模型主导,无固定轮数)
persistent 🔄 持续性渗透测试(100轮/周期)
recon 🔍 仅信息收集阶段
scan 🔎 执行漏洞扫描阶段
exploit 💥 执行漏洞利用阶段
report 📝 从会话记录生成报告
repl 💬 启动经典 REPL 交互界面
config ⚙️ 管理配置(set/get/list/provider)
plugins 🧩 管理漏洞检测插件(list/info/run)
init 🔧 初始化配置
doctor 🏥 检查运行环境
tui 🖥️ 打开终端图形化工作台
web 🌐 启动本地 Web UI
| 命令 | 说明 | 示例 |
|---|---|---|
vulnclaw |
默认打开原 CLI / REPL | vulnclaw |
vulnclaw tui |
终端图形化工作台 | vulnclaw tui --target target.com |
vulnclaw repl |
启动经典 REPL 交互界面 | vulnclaw repl |
vulnclaw solve <target> |
目标驱动求解(无固定轮数,拿到目标即停) | vulnclaw solve target.com --goal "拿到flag" |
vulnclaw run <target> |
一键全流程渗透(默认走 solve 引擎) | vulnclaw run 192.168.1.1 |
vulnclaw persistent <target> |
持续性渗透(100轮/周期) | vulnclaw persistent 192.168.1.1 |
vulnclaw recon <target> |
仅信息收集(不利用漏洞) | vulnclaw recon target.com |
vulnclaw scan <target> |
漏洞扫描阶段 | vulnclaw scan target.com --ports 80,443 |
vulnclaw exploit <target> |
漏洞利用阶段 | vulnclaw exploit target.com --cve CVE-2024-1234 |
vulnclaw report <session> |
从会话 JSON 生成报告 | vulnclaw report session_xxx.json |
vulnclaw config set <key> <value> |
设置配置项 | vulnclaw config set llm.api_key sk-xxx |
vulnclaw config provider <name> |
切换 LLM 提供商 | vulnclaw config provider minimax |
vulnclaw plugins list |
列出漏洞检测插件 | vulnclaw plugins list --stage discovery |
vulnclaw plugins info <id> |
查看插件元信息 | vulnclaw plugins info builtin.web.headers |
vulnclaw plugins run <id> |
运行插件(仅分析传入数据) | vulnclaw plugins run builtin.web.headers --input headers.json |
vulnclaw
无参数启动会进入 🦞 交互界面,用自然语言对话:
🦞 vulnclaw> 对 192.168.1.100 进行渗透测试,这是我授权的靶场
[*] 进入自主渗透模式,按 Ctrl+C 可随时中断
── Round 1 ──
[+] 目标: 192.168.1.100
[+] 开放端口: 22, 80, 443, 8080
[+] Web 指纹: Apache/2.4.62
── Round 2 ──
[+] 发现 /manager/html (Tomcat Manager)
[+] 命中 CVE-202X-XXXX: Apache Tomcat 认证绕过
── Round 3 ──
[+] 漏洞验证成功
🦞 192.168.1.100 | 报告> 生成渗透报告
[+] 报告已保存: ./reports/192.168.1.100_20260418.md
[+] PoC 脚本已保存: ./pocs/CVE-202X-XXXX.py
REPL 内置命令:
| 命令 | 说明 |
|---|---|
target <host> |
设置渗透测试目标 |
status |
查看当前状态 |
tools |
列出当前可用 MCP 工具 |
think on/off |
切换推理过程显示 |
persistent |
启动持续性渗透测试 |
clear |
清空当前会话 |
help |
显示帮助信息 |
exit / quit / q |
退出 |
自动渗透触发: 输入包含「渗透测试」「找 flag」「爆破」等关键词 + 目标地址时,自动进入多轮自主渗透循环。Ctrl+C 随时中断。
可选的终端图形化工作台,展示授权目标、检查模式、运行概览、安全边界,让用户先确认范围再启动任务。
vulnclaw tui
vulnclaw tui --target https://target.example --mode quick --only-port 443
vulnclaw tui --dry-run --target https://target.example --mode deep --only-path /admin
常用菜单:
vulnclaw doctor)vulnclaw run 192.168.1.100 # 一键全流程
vulnclaw recon 192.168.1.100 # 仅信息收集
vulnclaw scan 192.168.1.100 --ports 80,443 # 漏洞扫描
vulnclaw exploit 192.168.1.100 --cve CVE-2024-1234 --cmd id # 漏洞利用
vulnclaw report session.json # 生成报告
适用于需要长时间深度渗透的场景,以周期循环方式运行:
┌──────────────────────────────────────────────┐
│ Cycle 1 (100轮) → 自动报告 → 继续 │
│ Cycle 2 (100轮) → 自动报告 → 继续 │
│ ... │
│ 直到 Ctrl+C 或达到最大周期数(默认10) │
└──────────────────────────────────────────────┘
vulnclaw persi