PentestCode 是一种新的开源人工智能渗透测试代理,可以运行安全工具、分析其结果并从终端协调授权安全评估的各个部分。
该项目结合了 13 个人工智能代理、18 个专用工具和持久的参与状态。它可以自动执行侦察、服务枚举、漏洞分析、凭证测试、后利用和报告生成等重复性工作。
开发者 Zhangir Ospanov 描述渗透测试代码作为专业测试人员的力量倍增器,而不是替代人类专业知识。该软件仍处于早期阶段,在复杂、创造性和以秘密为重点的活动中存在很大的局限性。
什么是渗透测试代码?
PentestCode 是一个硬分叉开放代码,一个开源人工智能编码代理。其开发人员围绕攻击性安全工作流程重建了基于终端的框架,并根据 MIT 许可证对所得项目进行了许可。
测试人员可以提供目标、范围和目的。然后,协调代理将参与划分为任务,并将它们分配给可以并行工作的专家代理。
每个专家都会收到自己的说明、工具权限和安全知识。发现进入共享状态,允许一个代理使用另一个代理收集的信息,而无需完全依赖对话历史记录。
| 特征 | Pentest代码实施 |
|---|---|
| 界面 | 基于终端的用户界面 |
| 建筑学 | 战略家、协调员和专业代理人 |
| 专业代理 | 13 个代理,包括隐藏的会话管理代理 |
| 内置安全工具 | 除了 shell 访问之外还有 18 个工具 |
| 知识包 | 19 项按需技能 |
| 人工智能提供商 | 超过 20 个支持的提供商 |
| 操作系统 | x64 和 ARM64 上的 Linux 和 macOS |
| 执照 | 和 |
多代理系统如何工作
首席代理人充当战略家和协调员。它评估目标、创建任务、将工作委派给专家并在决定下一步做什么之前检查共享参与状态。
专家涵盖侦察、扫描、枚举、漏洞利用、身份系统、基础设施协议、Web 应用程序、漏洞利用后和漏洞开发。其他代理审查可能的误报并准备报告。
设计灵感源自HPTSA 对安全代理团队的研究。该研究发现,在 14 个 Web 漏洞的小型基准测试中,分层规划和特定任务代理的结果比早期代理框架提高了 4.3 倍。
- 协调员创建并跟踪安全测试任务。
- 专家可以在配置的限制内同时运行。
- 代理共享主机、服务、凭证和结果。
- 批评代理检查可疑漏洞是否存在误报。
- 报告代理将结构化证据转换为评估报告。
跨会话持久状态记录结果
PentestCode 将发现的资产和发现存储在结构化文件中,而不是仅将它们留在人工智能对话中。这为代理提供了一种持久记忆,并让测试人员可以在稍后的会话中恢复参与。
状态可以包含主机、操作系统、端口、服务、漏洞、凭证、访问级别、网段和 Active Directory 信息。漏洞记录可以包括置信度分数、状态字段和支持证据。
这项目文件还描述了一个实体图,该实体图通过关系(例如从系统获得的凭证、管理访问权限和可能的枢转路线)连接发现结果。
| 记录对象 | 示例信息 |
|---|---|
| 主办方 | IP 地址、主机名和检测到的操作系统 |
| 服务 | 端口、协议、横幅和软件版本 |
| 漏洞 | 严重性、置信度、证据和验证状态 |
| 证书 | 用户名、凭证类型和经过验证的服务 |
| 使用权 | 主机、访问方法和权限级别 |
| 人际关系 | 攻击路径、凭证来源和枢纽机会 |
该项目宣传了 18 个超出标准 shell 访问范围的内置渗透测试工具。其中一些解析来自已建立的安全实用程序的输出,并将结果移至参与状态。
支持的解析器包括 Nmap、Nuclei、NetExec、Gobuster、BloodHound 和 sqlmap 输出。其他功能分析 JSON Web 令牌、检查跨站点脚本响应、计划凭证验证、检查范围并生成报告。
PentestCode 要求代理在选定的扫描后使用其解析器。这减少了结果被困在原始输出中的可能性,尽管它并不能保证人工智能能够正确解释每个结果。
- Nmap结果解析和主机发现
- 核脆弱结果处理
- NetExec 凭证和访问解析
- Gobuster目录结果分类
- BloodHound Active Directory 数据处理
- sqlmap注入结果解析
- JWT分析和XSS检测
- 范围验证和证书测试规划
- 隧道跟踪和攻击路径建议
- 状态管理和报告生成
攻击路径模块使用图形搜索方法来建议攻击者当前访问和参与目标之间的路线。它将基于成本的 Dijkstra 和 Yen 的 K-最短路径算法应用于存储的关系图。
这种方法可以帮助测试人员识别薄弱的服务、暴露的凭据和过多的特权如何组合成更大的安全风险。人类测试人员仍然必须验证建议的路线是否有效并仍在范围内。

该设计遵循背后更广泛的理念与专业代理进行分层规划,其中规划组件探索可用选项并委派狭窄的任务,而不是要求一个模型来管理整个评估。
0.2.2版本减少了代币使用和重复工作
开发商发布了渗透测试代码 0.2.27 月 16 日。此更新默认启用确定性协调器,并限制并发子代理的数量以减少提供程序过载错误。
该版本可以将大型 Nmap、Nuclei 和 Gobuster 输出发送到更便宜的辅助模型进行汇总。主模型继续处理推理,而原始输出仍然可供以后检索。
0.2.2 版本还添加了一个用于解决攻击向量的分类帐。系统会记录不成功的路径,因此代理商没有理由重复已经产生明确结果的测试。
- 有界编排限制并行代理活动。
- 可配置的小模型总结了大型工具的输出。
- 特定于提供商的限制可减少 API 过载错误。
- 已解决的攻击路径仍被记录。
- 更新的会话控制区分正常完成和立即终止。
支持的AI模型和预期成本
PentestCode 通过其继承的模型集成层支持 20 多个 AI 提供商。选项包括 Anthropic、OpenAI、Google、Azure、AWS Bedrock、Ollama、Together、Groq、DeepSeek 和 Mistral。
开发人员估计,实际参与可能会消耗 5 至 50 美元的 API 调用费用,具体取决于所选模型、目标大小和工具输出量。大型扫描和重复操作会增加成本。
项目文档报告称,与 GPT-4o 或本地模型相比,Claude Opus 和 Sonnet 的多智能体协调能力更强。这代表了开发人员的经验,而不是独立的标准化比较。
重要限制和安全问题
PentestCode 没有图形界面、浏览器自动化、代理拦截或 Burp Suite 集成。它通过终端工作,并依赖于测试环境中安装的外部安全实用程序。
代理可能会重复扫描、遗漏漏洞、报告误报或选择低效的测试路径。由于开发仍然活跃,其 API 和状态格式也可能在版本之间发生变化。
这最新 PentestCode 版本改进了编排,但并没有消除监督的需要。测试人员必须审查命令、验证结果并保护提供给云人工智能提供商的任何凭证或客户端数据。
| 局限性 | 实际效果 |
|---|---|
| 没有隐形焦点 | 活动可能会触发监控和安全控制 |
| 没有 Burp Suite 集成 | 对交互式 Web 代理工作流程的有限支持 |
| 没有浏览器自动化 | 复杂的客户端应用程序测试仍然很困难 |
| 模型相关结果 | 人工智能提供商之间的性能各不相同 |
| API费用 | 大规模的参与可能会产生巨大的代币成本 |
| 早期软件 | 功能和文件格式可能会改变 |
自动渗透测试代理可以快速执行侵入式扫描和利用工具。在未经明确许可的情况下对系统运行它们可能会中断服务并违反计算机滥用法。
评估 PentestCode 的组织应该从孤立的实验室、夺旗环境或测试网络开始。他们应该使用严格的范围定义、低特权凭证、受控的 API 访问和人工批准来执行高影响力的操作。
作为一个叉子OpenCode 代理,PentestCode继承了强大的命令执行基础。安全团队应将代理本身视为特权软件,并将其与生产凭据和不相关的网络隔离。
FAQ
什么是渗透测试代码?
PentestCode 是一个基于终端的开源 AI 代理,可在授权渗透测试期间协调安全工具和专业代理。它是 OpenCode 的硬分叉。
PentestCode 包含多少种代理和工具?
该项目宣传了 13 个代理、18 个内置渗透测试工具和 19 个按需知识包。
PentestCode可以自动进行渗透测试吗?
PentestCode 可以自动执行侦察、枚举、结果分析、凭证验证和报告。人类测试人员仍然必须定义范围、监督其行为并验证结果。
PentestCode 最新版本是多少?
PentestCode 0.2.2 是最新的经过验证的版本。它于 2026 年 7 月 16 日发布,进行了旨在改进编排和减少令牌使用的更改。
PentestCode支持本地AI模型吗?
是的。 PentestCode 支持 Ollama 和其他提供商,以及来自 Anthropic、OpenAI、Google、Azure 和 AWS 的云服务。不同模型的结果可能会有很大差异。
PentestCode 在生产系统上使用安全吗?
安全团队应首先在隔离的测试环境中对其进行评估。它可以运行侵入式安全工具,并且可能会重复操作或做出错误的决定,因此生产使用需要明确的授权、严格的范围控制和积极的人工监督。
