pentest-ai
从一个命令中自主完成五项测试。真正的工具、可工作的PoC、可审计的报告。
     
⚠️ 攻击性工具,仅限授权测试。 通过安装,您接受 可接受使用政策 和 条款.全文载于 负责任的使用↓
将ptai指向目标。它执行侦察、登录,并将发现与多步攻击路径联系起来。每一个发现都伴随着一个有效的PoC。报告是自己写的。
在您的笔记本电脑上运行。没有云,没有遥测。
0.14.0(2026-05-13)有什么新功能。 现在,Claude Code、Cursor、Codex和任何MCP客户端都可以通过以下方式访问200多种包装安全工具(wpscan、dalfox、hydra、hashcat、paramspider、ffuf、gobuster、sqlmap等)list_tools,run_tool,plan_tools,ensure_tools_installed. 不需要Anthropic API密钥。 选择一个工具,在一个批量提示中安装缺失的工具,运行,获取结果。代理循环(ptai start --agent-mode)获得相同的界面以及一个预先安装提示,该提示根据参与配置文件预测工具列表。看 更新日志.
看它运行
一个提示克劳德代码。MCP服务器针对目标运行ptai的工具,Claude将结果流式传输回会话。订阅驱动,无API密钥。
扫描返回 17个关键、53个高、107个总发现、7个已确认的攻击链和264个生成的检测规则 针对OWASP Juice Shop的库存实例。JWT alg:none 在8+个受保护的端点上接受,在 /rest/user/login,基于UNION的SQLi /rest/products/search,通过NUL字节绕过路径过滤器,XXE公开 /etc/passwd,文件上传多语言,批量分配,绕过密码重置。每个都有一个可用的PoC。
录音是以下内容的实际输出claude -p反对当地的OWASP果汁店pentest-ai注册为MCP服务器。导入文件assets/realdemo.cast;用于GIF的时间节奏重新渲染在assets/realdemo-paced.cast调查结果是真实的;自claude -p缓冲区和转储处于非交互模式。确定性综合回退(assets/demo.tape+assets/demo.sh)保留用于可再现的重新渲染。
诚实警告: Juice Shop是互联网上关于故意易受攻击的应用程序的文章最多的,因此LLM和调查作者都有一个良好的开端。反对a *小说* 目标捕获率是策划的探测库实际覆盖的任何内容:目前有60个网络探测,每个版本都在增长。LLM坐标和结果原因;它不会取代探头。私人蜜罐马具tests/honeypot/衡量我们自己编写的bug的覆盖率,并在CI中声明为10/10捕获(tests/honeypot/test_mcp_honeypot_e2e.py).那里的数字比果汁店低,这就是重点。我们两者都出版。查看完整 果汁店基准vs ZAP/Nuclei/HexStrike.
安装
pip install ptai路径1:从克劳德代码驱动它(没有API密钥)
如果你已经为Claude Pro/Max/Team付费,那么你的订阅就是LLM。将端口连接为MCP服务器:
claude mcp add pentest-ai -- ptai mcp重新启动Claude Code,然后问:
*对staging.acme.com运行经过身份验证的渗透测试。登录名位于/Login,密码位于$APP_PASS中*
什么打击了网络:ptai的工具和探测器在本地针对您的目标执行。克劳德代码读取的提示和工具输出通过Anthropic的API,与任何克劳德代码会话相同。如果需要气隙路径,请参见路径3(Ollama/本地LLM)。
Claude Code通过这些MCP工具驱动ptai(截至0.14.0,其中49个):
list_tools/run_tool:列出并调用200多种打包安全工具中的任何一种plan_tools/ensure_tools_installed:获取订婚、批量安装的规范工具列表list_probes/run_probe:针对OWASP十大漏洞类的60个SPA感知探测器http_request:新链的硬范围保护下的原始HTTPstart_engagement/get_findings/get_attack_chains:订婚记录- 加
test_web_app,test_active_directory,test_cloud,test_api_security,其余的
路径2:其他MCP客户端(游标、VS代码副本、Codex、Claude桌面)
ptai setup --mcp自动检测您安装的每个MCP兼容客户端,并写入其配置文件。重新启动客户端,同样的49个工具就在那里。
路径3:没有MCP客户端时的独立CLI
如果您使用的是Claude Code、Cursor、Codex或Claude Desktop,请使用上述路径1或2并跳过此部分。 不需要API密钥。
路径3适用于CI/CD管道、定时cron作业、气隙终端和没有MCP客户端的用户。独立CLI没有自己的LLM,因此您可以通过env-var引入一个LLM:
export ANTHROPIC_API_KEY=sk-ant-... # Claude (best results)
# or
export OPENAI_API_KEY=sk-... # OpenAI
# or, fully local, no cloud
export OLLAMA_HOST=localhost:11434 # Ollama
# or, any of 300+ models via LiteLLM (OpenRouter, Azure, DeepSeek, Groq, Mistral, ...)
pip install ptai[litellm]
ptai start https://your-target.com安装安全工具
ptai封装了200多种外部工具。有三种方法可以把它们放在盒子上:
# 1. Zero-config (recommended). At engagement start, the planner predicts
# which tools the LLM will need and asks ONCE to install the missing
# ones. Decline once and the answer persists in
# ~/.pentest-ai/install-preferences.json.
ptai start https://target.example.com
# 2. Batch install upfront. Skips the engagement-time prompt entirely.
ptai setup --tier core # ~6 essentials, ~30s
ptai setup --tier recommended # + fuzzers, crawlers, password tools, ~5m
ptai setup --tier full # everything, ~30m
# 3. Install specific tools by name.
ptai setup --per-tool wpscan,dalfox,paramspider
ptai setup --wizard # interactive picker在非交互式环境中(PTAI_NON_INTERACTIVE=1 或者没有TTY)ptai使用PATH上的内容,并记录(而不是提示)任何缺失的内容。
Other paths: REST API, MCP composition, HITL teleoperation, cloud workspace, public benchmarks
HTTP REST API(用于仪表板和集成)
pip install ptai[api]
ptai serve --port 8888终点: /health, /version, /agents, /tools, /engagements (列表、详细信息、发现、链、检测规则、SARIF导出)。写入端点(POST /engagements, POST /engagements/{id}/abort)要求 Authorization: Bearer $PENTEST_AI_API_TOKEN.现场活动流媒体 WS /engagements/{id}/stream.
将其他MCP服务器作为工具源加载
使用hexstrike或任何其他兼容MCP的安全服务器进行编写。编辑 ~/.pentest-ai/mcp_servers.json:
{
"servers": [
{"name": "hexstrike", "command": "python3 hexstrike_mcp.py", "transport": "stdio"}
]
}中途接管(HITL遥操作)
在订婚期间,按下 Ctrl+C 在600ms内两次暂停编排器并进入REPL: step, inspect findings, inject , skip, resume, abort。当前的LLM不是完全自主的。在重要的时候,接线员拥有通话权。
公共基准
实时可再现的求解速率测量 benchmarks/:
./benchmarks/scripts/run_all.sh # writes JSON per run + RESULTS.mdSpec、harge、result都用git表示。Juice Shop与ZAP/Nuclei/HexStrike的完整比较见 docs/benchmarks/juice-shop.md没有“98.7%的检测率”是你无法审计的。
云工作空间(专业版/团队版/企业版)
CLI永远免费,并在本地存储所有内容。如果您需要参与历史记录、品牌客户就绪的PDF报告和团队协作,请将CLI链接到 附录pentestai.xyz 工作区:
# Sign up, then Dashboard → API Keys → Generate → copy ptai_...
ptai auth login # paste the key (hidden prompt)
ptai auth status # confirm link
# or use an env var for CI:
export PENTESTAI_API_KEY=ptai_...ptai start 授权后自动将发现同步到您的云工作区。没有云=没有电话;除非您登录,否则集成将自动关闭。
根本没有LLM(交互式启动器)
ptai menu数字类别导航、搜索(/term),标签过滤(t web),基于关键字的推荐。真正的约定仍在进行中 ptai start 经过全面确认。
为什么不同
| 🤖 LLM协调,不依赖LLM | 17个代理涵盖reco、web、API、AD、云、移动、无线、浏览器、凭据、隐私、漏洞扫描、链接、PoC、检测、报告、社会工程和LLM红队。LLM运行相位环路并分析结果原因;错误检测在精心策划的确定性探测库中。不设置API键,相同的探测仍在运行。LLM坐标;它不扫描。 |
| 🔓 MCP路径上没有API密钥 | Claude Code/Cursor/Code用户使用其现有订阅通过MCP驱动ptai。200多个工具包装器和60个探头可以在没有Anthropic密钥的情况下进行LLM调用。独立CLI(ptai start --agent-mode)是API的关键所在;这就是没有MCP、CI和气隙路径的Codex。 |
| 🔐 它登录 | 大多数扫描仪在登录页面时就会死机。此工具保存会话,在凭据过期时刷新凭据,每个下游工具都继承cookie。身份验证配置文件存储 *参考文献* (环境变量, op://、Vault路径、AWS Secrets Manager ARNs),而不是值。 |
| 🧪 每一项发现都得到了证实 | 非破坏性的概念验证与目标背道而驰。不再从嘈杂的扫描仪中筛选40个可能。 |
| ⚡ CI本地 | GitHub操作、严重性门、SARIF输出、PR评论。将其放入工作流文件中,它将在下一个PR上运行 |
| 💾 在笔记本电脑上运行 | 麻省理工学院授权,无云通话。与Ollama离线运行。结果保留在您的磁盘上。 |
运作原理
┌─────────────────────────────────────────────────────────────┐
│ ptai start │
└─────────────────────────────────────────────────────────────┘
│
┌──────────────────┼──────────────────┐
▼ ▼ ▼
┌────────┐ ┌────────┐ ┌─────────┐
│ recon │ → │ auth │ → │ web │
└────────┘ └────────┘ └─────────┘
│
┌────────────────────────────────────┤
▼ ▼
┌────────┐ ┌─────────┐
│ ad │ ┌──────────────────┐ │ cloud │
└────────┘ │ Findings DB │ └─────────┘
│ │ (sqlite + evidence)│ │
└───────▶│ scope-guarded │◀──────┘
│ deduplicated │
└──────────────────┘
│
┌────────────┼────────────┐
▼ ▼ ▼
┌──────┐ ┌─────────┐ ┌──────────┐
│chain │ │validate │ │ detect │
└──────┘ └─────────┘ └──────────┘
│
▼
┌──────────┐
│ report │ md · html · pdf · SARIF · JUnit
└──────────┘当您设置了密钥时,每个代理都使用LLM运行,或者当您没有设置密钥时,作为确定性工具循环运行。无论哪种方式,阶段顺序都是相同的。
代理
| 代理 | 阶段 | 做 |
|---|---|---|
recon | 1 | 端口扫描、DNS和子域枚举、服务指纹识别 |
web | 2 | 经过身份验证的OWASP测试指南v4通过 |
api_security | 2 | OpenAPI/GraphQL/REST表面分析,OWASP API前10名 |
browser | 2 | 剧作家驱动的DOM分析、XHR捕获、安全标头分级 |
ad | 3 | AD枚举、Kerberoasting、BloodHound寻路、滥用授权 |
cloud | 4 | AWS、Azure、GCP IAM、配置错误、K8s RBAC、无服务器 |
credential_tester | 4 | 密码喷涂、凭证填充、MFA旁路检查 |
privesc | 5 | 根据收集到的上下文提供本地和横向特权升级建议 |
vuln_scanner | 5 | 与调查结果DB的交叉缺陷聚集 |
exploit_chain | 6 | 将发现与多步攻击路径相关联 |
poc_validator | 7 | 根据发现进行无损概念验证 |
detection | 8 | 蓝色团队的Sigma、SPL、KQL规则 |
report | 9 | Markdown、HTML、PDF、SARIF、JUnit、合规性地图 |
llm_redteam | opt | OWASP LLM十大探头 |
social_engineer | opt | 网络钓鱼语料库和借口生成 |
mobile | opt | Android/iOS静态+动态检查 |
wireless | opt | 无线侦察和握手捕获 |
剧本
你的方法论就像一个文件。检查了git。与您的团队共享。
name: internal-ad-pentest
inputs:
domain: { required: true, prompt: "AD domain" }
dc_ip: { required: true, prompt: "DC IP" }
phases:
- id: recon
tools: [nmap, masscan]
- id: ad-enum
depends_on: [recon]
condition: "any_finding(type='open_port', port=445)"
tools: [enum4linux, ldapsearch, bloodhound-python]
- id: kerberoast
requires_finding: { type: ad_user_enumerated }
tools: [impacket-getuserspns]
llm_decide: true # let the LLM skip if context says uselessptai playbook list # show installed playbooks
ptai playbook show web-app-quick # preview before running
ptai playbook run ./my-ad.yaml # execute内置五本剧本。社区目录即将推出。
将其放入您的CI
# .github/workflows/security.yml
name: Security scan
on: [pull_request]
jobs:
ptai:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: pip install ptai
- run: |
ptai start ${{ vars.STAGING_URL }} \
--ci \
--fail-on high \
--sarif pentest.sarif
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
- uses: github/codeql-action/upload-sarif@v3
if: always()
with:
sarif_file: pentest.sarif结果作为PR评论发布,SARIF上传到GitHub代码扫描,构建在门控严重性上失败。 GitLab CI和Jenkins 模板加上高级选项(CI中的身份验证配置文件、成本门、范围文件)→ docs/ci-cd.md.
基准测试
ptai的设计是专门为SPA渗透测试而设计的,具有精心策划的探头覆盖范围。在OWASP果汁店,出版 4-工具矩阵 显示:
| 工具 | 调查结果 | 严重+高 | OWASP前10名 | FP率 |
|---|---|---|---|---|
| ptai 0.13.0 | 88 | 46 | 5 | 0% |
| 扎普2.17.0 | 593 | 0 | 1 | 47% |
| 核3.8.0 | 1 | 0 | 1 | 0% |
| HexStrike v6.0 | 11 | 0 | 1 | -- |
n=1名单次评分者,单次射击。方法论+原始工件 benchmarks/results/2026-05-12/juice-shop/.老实说:ptai更擅长SPA网络渗透测试,有精心策划的探测范围。HexStrike更广泛(云、二进制、CTF),可能在WordPress等传统可爬表面上击败ptai。v5将扩大比较范围。
最近的研究背景:完全自主的LLM pentest代理完成 21–31% 端到端的任务;人工辅助设置 64% (ARTEMIS,DARPA AICC亚特兰蒂斯,xOffense)。ptai是为人类辅助方案而构建的:LLM对结果的原因、精心策划的探针检测,以及Ctrl+C两次让操作员接管。
vs现场
| | ptai |Hexstrike | ZAP | Nuclei | Burp Pro | PentestGPT| |---|:-:|:-:|:-:|:-:|:-:|:-:| |通过MCP驱动的LLM(无API密钥)|✓ | ✓ | | | | | |LLM在作用域保护下合成HTTP |✓ | 部分| |通过MCP进行身份验证扫描|✓ | partial | partial |原始HTTP |✓ | | |漏洞链接|✓ | 部分| |无损PoC验证|✓ | | | | 部分|| |储存注射链(POST→ GET验证)|✓ | 手动|部分|手动|| |精心策划的探针(专业,非模板驱动)|60|工具包装器驱动|规则驱动|8000+模板|手动+扫描|--| |打包的CLI安全工具|200+|150+|--|--|--|--|-| |工具安装向导|核心/推荐/完整+每个工具|--|n/a|n/a| n/a|--| |参与开始时智能安装|✓ | | | | | | |CI本地(严重急性呼吸系统综合征+严重性门)|✓ | | 部分|部分|部分| |LLM红队调查|✓ | | | | | | |YAML剧本|✓ | | | 模板||| | 许可证 | 麻省理工学院 | 麻省理工学院 | Apache-2.0 | 麻省理工学院 | 商业 | 麻省理工学院 |
里面有什么
- 17名代理人 跨越reco、web、API安全、AD、云、移动、无线、浏览器、凭据测试、权限升级、漏洞扫描、漏洞链接、PoC验证、检测、报告、LLM红队、社会工程
- 60个精心策划的网络探测器 涵盖OWASP前10名+API前10名
- 200+工具包装 自动安装:nmap、masscan、nucleus、ffuf、sqlmap、gobuster、wapiti、nikto、dalfox、xsstrike、wpscan、hydra、hashcat、enum4linux、寻血犬python、impacket套件、trufflehog、gitleaks、kube-hunter、trivy、prowler、侦察套件等等
- 4000多个Nuclei模板 集成用于原子漏洞检测
- 49个MCP工具 用于LLM驱动的项目,包括0.14.0的新增内容(
plan_tools,ensure_tools_installed)让外部LLM批量安装工具而没有Anthropic API密钥 - 300+LLM型号 通过LiteLLM提供商(Anthropic、OpenAI、Ollama direct;Azure、OpenRouter、DeepSeek、Groq、Mistral、Together AI、Bedrock、Vertex AI、Coherevia LiteLLM)
- HTTP REST API+WebSocket 表面(
ptai serve)用于非MCP集成 - 本地web仪表板 具有实时参与视图、调查结果表、攻击链可视化、SARIF导出
- 浏览器自动化代理 具有屏幕截图捕获、DOM分析、网络捕获、安全标头分级(由剧作家驱动)
- 人机交互遥操作 (按下Ctrl+C两次,在运行中接管一个任务)
- MCP客户端 将外部MCP服务器作为工具源加载的能力
- 公共可复制基准线束 在
benchmarks/.数字、代码、原始工件,全部用git编写。 - 6种输出格式:Markdown、HTML、PDF、SARIF 2.1.0、JUnit XML、合规性映射(OWASP、CWE、CVE、CVSS v3.1)
- 1000+次测试 在Python 3.10、3.11、3.12、3.13上使用CI
- 麻省理工学院许可,100%属于你
谁用它做什么
AppSec团队。 电线 ptai 进入您的CI。每个针对登台的PR都会得到一个经过身份验证的扫描。该构建因高度严重的发现而失败。修复→ 复测→ confirm循环会自行运行。
顾问。 安排一周的约会,点 ptai 在目标列表中,把时间花在需要人工的部分上:分析发现、挑选要展示的链、与客户交谈。报告是自己写的。
虫子赏金猎人。 把它放在早餐上。回到已验证的发现列表,PoCs已准备好粘贴到HackerOne中。
红队队员。 将您的AD方法编码为YAML剧本。每一次新的参与都会运行它。同样的方法,在整个团队中共享。
克劳德代码/光标/Codex用户。 将ptai添加为MCP服务器。让你的助手用简单的英语进行扫描。您现有的订阅支付LLM;ptai提供工具。
开发人员发布AI功能。 启用 --enable-llm-redteam 反对你的聊天机器人。在几分钟内获取OWASP LLM Top 10报告。
负责任的使用
pentest-ai 是攻击性安全工具。它对您指定的目标执行真实的网络和主机操作。 您全权负责确保您有明确的书面授权来测试每个目标。
通过安装或运行 ptai 您同意 可接受使用政策 和那个 服务条款未经书面授权,您不拥有的测试系统可能违反《计算机欺诈和滥用法》、《1990年计算机滥用法》和《通用数据保护条例》第32条,以及您所在司法管辖区的同等法律。滥用是你的唯一责任。
第一次运行会提示您确认AUP接受,并坚持选择 ~/.pentest-ai/aup-consent.txt.Set PENTEST_AI_AUP_ACCEPTED=1 在CI中以非交互方式绕过提示。
启动时 ptai 加载作用域文件。超出范围的主机在工具调用时被拒绝。默认情况下,PoC是非破坏性的。在隐身模式下,速率限制会自动生效。别做那种人。
生态系统
| Repo | 什么 |
|---|---|
| 你 悔改 | 这个回购。CLI和MCP服务器。Python产品。 |
| 最重要的人工智能代理 | 独立的Claude Code子代理标记文件。可选,不使用此CLI运行。 |
需要共享工作区、品牌PDF报告、SSO或托管参与?这 网站 具有Pro/Team/Enterprise仪表板和一次性启动参与选项。OSS工具永远免费。
社区
贡献
PR欢迎。提交之前:
ruff check . && mypy . && pytest -q看 贡献.md 对于全流量。
贡献者
明星历史
许可证
MIT。你想用它做什么就做什么。
如果 ptai 为你节省了一个星期天, 明星回购这是我唯一要求的付款。
