模型 / 数据集
vxcontrol/pentagi avatar
vxcontrol/pentagi

PentAGI 实测前必读:自治渗透测试代理的能力边界与部署成本

PentAGI 是一套可自行托管的全自主 AI 智能体系统,可执行复杂的渗透测试任务,支持 OpenAI、Anthropic、Ollama 等多家 LLM 提供商。

24,391 个 Star3,126 个 ForkGoMIT

秒懂

它是什么?
PentAGI 是一个用 Go 编写的自治 AI 渗透测试系统,把 LLM 与 Docker 沙箱、20 多种安全工具组合成自动化流水线。本文基于其 README 与仓库信息,分析它的架构、启动方式、已知限制,以及它和 CALDERA 这类 BAS 工具的本质区别。
适合谁用?
适合需要把 LLM 驱动的渗透测试流程化、且愿意接受自治代理不确定性的安全团队,尤其是已有 Docker 和 PostgreSQL 运维经验、想用 Ollama 或 vLLM 控制数据流向的组织。不适合需要可重复攻击剧本、严格合规审计的团队,因为 PentAGI 明确不是 CALDERA 式 BAS,没有预定义战役或攻击计划,当前也不支持 JSON 格式的 flow report 导出。
能商用吗?
可以。MIT 是宽松许可证:你可以使用、修改并销售基于它的软件,只需保留版权和许可证声明。
还在维护吗?
在维护。仓库最近一次提交在 6 天前。
用什么语言写的?
主要是 Go(依据 GitHub 的语言统计)。

以上回答依据项目的 GitHub 数据(最近同步于 2026年9月14日)和我们的分析,不构成法律意见。

开源项目深度解析

它解决什么问题,谁该看

PentAGI 把渗透测试从手动执行命令变成 AI 代理的自治任务。它面向信息安全专业人员、研究者和爱好者,目标是让代理自动决定并执行渗透测试步骤,同时保留人工监控的选项。这不是一个扫描器,而是一个编排层:LLM 负责决策,Docker 沙箱负责隔离,内置的 20 多种工具负责具体动作。它的典型场景是持续性的安全评估,而不是一次性的漏洞扫描。对于没有专职渗透测试人员的小团队,它可能降低入门门槛,但代价是你得信任一个自治代理的判断,这本身就是风险。

架构拆解:LLM 决策、Docker 隔离、PostgreSQL 记忆

从 README 的架构描述看,系统由几个核心部分组成。所有操作在沙箱化的 Docker 环境里执行,强调完全隔离。代理不是单一体,而是一个团队系统,包含负责研究、开发和基础设施任务的专业子代理,这个设计是为了让较小的模型也能通过分工完成复杂任务。记忆系统是长期的,研究结果和成功方法会存进 PostgreSQL,配合 pgvector 扩展做向量存储。还有一个可选的 Graphiti 知识图谱,用 Neo4j 做语义关系追踪,这属于进阶配置。工具调用方面,内置了 nmap、metasploit、sqlmap 等,容器管理会自动根据任务类型选择 Docker 镜像。整个系统通过 REST 和 GraphQL API 暴露,用 Bearer token 认证。

快速启动:Docker Compose 与多租户变量

部署入口是 Docker Compose,README 强调通过环境配置即可完成设置。具体命令在文档里以 Quick Start 章节给出,但没有在截取的 README 片段中显示完整命令。根据仓库布局,用户需要先克隆仓库,然后编辑环境变量文件,最后运行 docker compose up。一个值得注意的配置项是 tenant_id,它用于运行多个实例,这意味着你可以为不同客户或项目隔离数据。LLM 提供商配置是核心步骤,支持 OpenAI、Anthropic、Gemini、AWS Bedrock、Ollama、DeepSeek 等十多家,还有 OpenRouter 这类聚合器。对于本地部署,README 专门提供了 vLLM 加 Qwen3.5-27B-FP8 的指南,这指向一个明确的使用场景:不想把流量发给外部 API 的团队。

能力边界:它明确不是 BAS 工具

README 用专门一节列出了能力边界,这在开源项目里很少见,值得认真对待。PentAGI 目前是自治和辅助引导的渗透测试平台,不是 CALDERA 风格的 Breach and Attack Simulation 工具,没有预定义战役或攻击计划。BAS 式的代理编写攻击脚本被描述为概念性或未来工作,不是今天已实现的功能。另一个限制是 flow report 的导出格式:支持网页查看、复制到剪贴板、Markdown 下载和 PDF 下载,但 JSON 导出没有作为支持格式列出。这些边界意味着,如果你需要可重复的合规测试流程,或者需要机器可读的报告去做自动化分析,PentAGI 现在不是合适的选择。

替代方案:CALDERA 的剧本化路径

与 PentAGI 形成鲜明对比的是 MITRE 的 CALDERA,它走的是完全不同的路线。CALDERA 基于预定义的 adversary emulation 插件和战役,攻击步骤是人工编排的剧本,代理按剧本执行,结果高度可预测。PentAGI 的自治代理则依赖 LLM 现场决策,每次运行可能有不同路径。这个差异决定了适用场景:需要审计追溯、合规报告、固定流程的团队应该选 CALDERA 这类 BAS 工具;需要探索未知攻击面、愿意接受非确定输出的团队才适合 PentAGI。两者不是竞争关系,而是互补,但如果你误把 PentAGI 当 BAS 用,会发现它缺少战役编排、进度控制这些核心功能。

运维成本与许可考量

运维负担不轻。你需要维护 PostgreSQL 加 pgvector,这是持久存储的基础。如果启用知识图谱,还要跑 Neo4j。监控方面集成了 Grafana 和 Prometheus,这本身又是一套要维护的组件。Langfuse 集成用于 LLM 可观测性,适合需要追踪提示词和 token 消耗的场景。许可证是 MIT,这意味着你可以自由修改和商用,没有 copyleft 约束。但要注意,项目依赖的 Docker 镜像和外部服务各有自己的许可和条款,比如 scraper 镜像、各搜索 API 的配额限制。升级成本方面,项目最近发布了 v2.1.0,v2.0.0 在 2026 年 4 月,迭代节奏约一个多月一个版本,跟随主分支需要持续关注配置变更。

测试与验证:ftester 和嵌入配置

README 专门列出了测试 LLM 代理、嵌入配置与测试、以及 ftester 函数测试三个开发相关章节。ftester 的存在说明项目意识到一个关键问题:LLM 代理的工具调用可能出错,需要系统化的函数测试来验证代理确实能正确调用内置工具。这对采用者是个提醒,不要假设代理第一次就能正确使用 metasploit 或 sqlmap,应该先跑测试套件确认工具链在你的 LLM 提供商下工作正常。嵌入配置影响记忆系统的检索质量,不同提供商有不同设置。这些测试环节是部署前的必要步骤,不是可选项,因为自治代理的失败模式往往不是工具崩溃,而是工具被错误调用。

编辑结论

适合需要把 LLM 驱动的渗透测试流程化、且愿意接受自治代理不确定性的安全团队,尤其是已有 Docker 和 PostgreSQL 运维经验、想用 Ollama 或 vLLM 控制数据流向的组织。不适合需要可重复攻击剧本、严格合规审计的团队,因为 PentAGI 明确不是 CALDERA 式 BAS,没有预定义战役或攻击计划,当前也不支持 JSON 格式的 flow report 导出。采用前应验证三件事:确认你的 LLM 提供商在支持的 10 多家列表内,或能配置 OpenAI 兼容端点;检查 Docker 沙箱与宿主机的隔离策略是否满足你的安全基线;用 ftester 跑一遍函数测试,确认代理的工具调用在目标环境里真实可用。PentAGI 的价值建立在 LLM 判断力之上,模型选型直接决定结果质量,这不是一个安装完就能放心的工具。

官方来源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
社区笔记

社区笔记