自动化与运维 penetration-testingoffensive-securitymulti-agent-systemactive-directorynmapvulnerability-scanningsecurity-automationcli

PentestCode

运行在终端里的自主 AI 渗透测试多智能体系统,自带持久化作战状态、战略协调与并行自治操作。

FollowAgents 评估 · FARS-2.1
不推荐
55/ 100 五分制 2.8 / 5
1 2 3 4 5 6
1信任安全14 / 29 · 2.4/5

README 宣称有 scope_check 工具、guided 模式逐步审批、pause 策略与解析器强制管线,但提供的证据文件中没有任何工具实现或权限配置可供核对,最小权限只能记为有主张无实证(1)。guided 模式与 pause always 的描述支持用户确认机制(2)。engagement state、findings.md 的数据流描述较清晰(2)。凭据、hash、shell 访问被显式存储在状态中,但未见加密、脱敏或访问控制说明(1)。依赖大量打了补丁的第三方包与 beta 版 effect(4.0.0-beta.83),补丁存在但无安全审计证据(2)。工具会对真实目标执行 nmap、凭据喷洒、漏洞利用等外向动作,README 仅靠'授权测试'一词约束,且 free 模式'绕过 scope 检查'是明确扣分点(1)。无回滚/撤销机制的任何说明(1)。LICENSE 明确承认 fork 自 OpenCode 并保留 MIT(2)。

2可靠稳定6 / 14 · 2.1/5

CI 含 unit/e2e/typecheck 工作流,契约一致性测试写得相当扎实(2),但可见测试全部针对 client SDK,核心 pentest 逻辑(状态机、解析器、scope 检查)无测试证据。依赖大量 beta/RC 版本(effect beta、drizzle RC、pkg.pr.new 的 solid-start),可用性风险实际存在(1)。失败消息仅有 typed error 的间接证据(1)。

3适用触发9 / 18 · 2.5/5

面向 pentest/CTF/bug bounty 多场景,受众描述清楚(2)。beta 定位与'expect rough edges'诚实,但工具对目标的破坏性边界、scope 强制的技术保证在证据中缺失,且 free 模式故意绕过检查(1)。slash 命令与模式的触发语义有文档但无实现佐证(1)。支持 Linux/macOS、x64/arm64、多 provider(2)。

4规范维护13 / 18 · 3.6/5

README 结构 excellent:安装、快速开始、架构、工具表、命令表、配置、贡献(3)。安装有多种方式含版本固定,但 curl|bash 管道安装未给校验和(2)。命名一致(pentestcode-ai npm 包、目录名)(2)。有配置示例与使用示例但无 FAQ(2)。beta 声明与'expect rough edges'是诚实的局限说明(2)。LICENSE 全文完整且含 fork 归属(3)。有 release badge 但无 CHANGELOG 文件(1)。有 issue 流程与 CI,维护路径可见但发布者身份未验证(2)。

5有效结果9 / 13 · 3.5/5

findings.md、/status、/vulns、/creds、report_gen 提供了结构化可用输出(2)。相对'把提示词贴进聊天窗口'的基线,共享状态+解析器管线是真实的边际价值,但 4.3× 等 HPTSA 数字是外部研究的引用而非本项目实测(2)。单二进制、多 provider 降低了成本,但自主喷洒与并行子代理的 token/流量成本未给出估算(2)。

6证据核验4 / 8 · 2.5/5

架构主张(13 agents、18 tools、19 skills、30+ mutation types)无法在提供的文件中追溯到实现(1)。HPTSA 论文引用与 fork 声明可外部核对,但内部数字无源(1)。README 区分了自身主张与外部研究(arxiv 链接、fork 说明),混淆较少(2)。

证据充分度: 评估于 2026年9月7日 审查版本 095654f24a74
使用前请注意
  • 这是一个自主攻击型代理:nmap 扫描、凭据喷洒、漏洞利用均对真实目标执行,务必仅在书面授权范围内使用。
  • free 模式明确绕过 scope 检查;在无人监督的 auto 模式下此风险叠加,建议默认 guided + pause always。
  • 凭据、hash 与 shell 访问以明文存储在本地 engagement state 和 findings.md 中,注意文件权限与磁盘残留。
  • install.sh 通过 curl|bash 执行且无校验和;发布者身份未经验证,建议从源码构建或固定版本并核对哈希。
  • 大量依赖处于 beta/RC 且带本地补丁,存在供应链与稳定性风险;核心 pentest 逻辑(解析器、scope 检查)在可见证据中无测试覆盖。
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

PentestCode(GitHub: s0ld13rr/pentestcode,MIT 许可)是一个面向进攻性安全的终端 AI 渗透测试智能体,由 OpenCode(MIT)硬分叉而来,去除了代码编辑功能并重建为渗透测试专用。它采用 HPTSA 研究中的战略家—协调者模型,由一个 lead 智能体(pentest)规划任务并并行调度 13 个专职子智能体(recon、scanner、exploiter、identity、webapp、post-exploit、critic、reporter 等)。所有智能体共享一份结构化的 engagement state,涵盖主机与服务、漏洞、凭据、访问权限、实体关系图、AD 域模型、网段及基于 Dijkstra/Yen 算法的攻击路径。除 bash 外内置 18 个专用工具(如 nmap_parse、bloodhound_parse、cred_spray、attack_path_suggest),并提供 19 个按需加载的技能包。它以单个自包含二进制发布(Linux/macOS,x64/arm64),支持通过 ai-sdk 接入 Anthropic、OpenAI、Google、Ollama 等 20 多家模型提供商,并处于 Beta 阶段。

用户给出一条指令(如 "pentest 10.10.10.5, goal is domain admin")后,lead 智能体执行完整的渗透链路:运行 nmap -sS -p- 并通过 nmap_parse 将 XML 直接写入 engagement state;根据端口(88+389)识别域控并并行派发 SMB、LDAP、HTTP 枚举子智能体;执行 AS-REP roasting 获取首个凭据,再用 cred_spray 对所有已知主机的 SMB/WinRM/LDAP/RDP 进行凭据喷洒;拿到 WinRM 落脚点后由后渗透智能体转储 SAM/LSA/DPAPI。所有发现通过 state_update(30+ 变更类型)写入状态,可用 state_query(20+ 查询类型)或斜杠命令 /status、/vulns、/creds 实时查询;findings.md 以时间戳记录每个漏洞、凭据和权限提升,report_gen 生成 markdown/JSON 报告。bloodhound_parse 填充 AD 域模型,attack_path_suggest 基于代价的 Dijkstra + Yen K 最短路径在关系图上寻找攻击路径,scope_check 做 CIDR/通配符范围校验,tunnel_manage 规划 SSH/chisel/ligolo 隧道。

  1. 授权渗透测试人员对内网目标执行从侦察到报告的完整方法论,状态可跨会话续接
  2. CTF 选手在多目标比赛中协调枚举、攻击链和 flag 跟踪
  3. 漏洞赏金猎人自动化 Web 应用与 API 安全测试及侦察
  4. 红队/安全研究者对 Active Directory 环境做身份与攻击路径分析(Kerberos、Bloodhound 数据)
  5. 基础设施安全团队审计网络服务、检查默认凭据
  6. 漏洞研究人员进行系统化枚举与验证,critic 智能体负责过滤误报

这个 Agent 有哪些优点和局限?

优点
  • 13 个专职子智能体并行作战的多智能体架构,依据 HPTSA 研究相比单智能体有 4.3 倍提升
  • 结构化 engagement state 跨会话持久化,所有智能体共享主机、漏洞、凭据、访问与关系图数据
  • 18 个强制解析器工具(nmap_parse、cme_parse 等)确保工具输出结构化入state,而非靠手工 grep
  • 通过 ai-sdk 支持 20+ 模型提供商,单二进制自包含分发,无运行时依赖
  • 19 个按需加载的 markdown 技能包,可自行添加 SKILL.md 扩展而无需改代码
局限
  • 项目处于 Beta,README 明示在真实项目中有粗糙边缘,可能循环、遗漏明显路径或浪费 token
  • 依赖外部渗透工具(nmap、Nuclei、NetExec、Gobuster、sqlmap、SharpHound 等)需自行安装配置
  • 需要自备 LLM 提供商账号与 API 费用,自主多智能体并行运行的 token 消耗可能较高
  • free 模式会绕过范围检查,auto 模式自主执行攻击操作,存在越权风险,必须严格限定在授权范围
  • 仅支持 Linux 和 macOS,无 Windows 原生支持;README 未提供基准评测或第三方审计证据

如何安装或部署这个 Agent?

通过 npm 安装:npm install -g pentestcode-ai;或用 curl 安装脚本:curl -fsSL https://raw.githubusercontent.com/s0ld13rr/pentestcode/main/install.sh | bash。可固定版本:PENTESTCODE_VERSION=0.1.7 curl -fsSL ... | bash;可自定义目录:PENTESTCODE_INSTALL=/usr/local/bin curl -fsSL ... | bash。也可从源码构建:bun install && bun run build --single --skip-embed-web-ui,产物位于 packages/opencode/dist/pentestcode-<os>-<arch>/bin/pentestcode。需要 Linux 或 macOS(x64/arm64),无需 Bun/Node 运行时。

如何使用这个 Agent?

先连接模型提供商:pentestcode auth login(支持 Anthropic、OpenAI、Google、Azure、AWS Bedrock、Ollama 等 20+ 提供商)。然后:pentestcode 启动交互式会话;或一次性执行:pentestcode --prompt "scan 10.10.10.0/24 and enumerate all services"。配置文件位于 .pentestcode/pentestcode.c,例如 {"provider": {"anthropic": {"model": "claude-sonnet-4-20250514"}}}。运行中用 /status、/targets、/vulns、/creds、/scope、/phase 查看状态;/mode 切换 auto(自主跑完整流程)/ free(无阶段结构、绕过范围检查)/ guided(每步等待批准);/pause 设定发现时暂停策略(never/always/checkpoint);/report 生成报告。仅限授权目标使用。

这个 Agent 与同类方案有什么区别?

它是 OpenCode(MIT)的硬分叉,去除了代码编辑定位、重建为进攻性安全用途;多智能体设计引用 HPTSA 研究(arXiv:2410.02246)的 strategizer-coordinator 模型,声称比单智能体提升 4.3 倍。

常见问题

需要什么模型接入和费用?
需先运行 pentestcode auth login 连接一个提供商(Anthropic、OpenAI、Google、Azure、AWS Bedrock、Ollama 等 20+,通过 ai-sdk)。使用托管 API 会产生按 token 计费的费用;本地 Ollama 可避免 API 费用但需自行承担算力。多智能体并行会放大 token 消耗。
它会不会越出授权范围攻击?
内置 scope_check 做 CIDR/通配符范围校验,且支持 /scope 查看和编辑目标范围;但 free 模式明确绕过范围检查,guided 模式逐步等批准。务必只在书面授权的目标上使用,并用 auto + pause always 获得每发现即暂停的审查模式。
中途关闭终端会丢进度吗?
不会。engagement state 持久化跨会话保存,重新打开后智能体从中断处继续;findings.md 还以时间戳记录全部发现,可 tail -f 实时观察。
需要装哪些外部工具?
它协调真实渗透工具:nmap、Nuclei、NetExec、Gobuster、sqlmap、SharpHound、SSH/chisel/ligolo 等需存在于环境中。解析器工具(nmap_parse 等)是强制环节,确保输出进入状态库。
成熟度如何?
处于 Beta。README 建议在 CTF、HTB 或授权测试中实际使用并提交 issue 反馈,官方明示会有粗糙边缘。

相关 Agents