[工具·书·人]把渗透测试交给AI来做,这个开源项目做到了什么程度

admin 2026-03-03 08:12:01 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: PentAGI是一个基于多智能体协作架构的自主渗透测试平台,利用LLM作为大脑,集成20多个专业安全工具,通过三层记忆系统和知识图谱实现经验积累与关系推理,支持从情报收集到攻击执行的完整工作流,并具备可观测性设计以追踪AI决策过程。该项目展示了AI主导渗透测试的可行性,其架构设计思路对安全工具和AIAgent开发具有参考价值。 综合评分: 78 文章分类: AI安全,渗透测试,安全工具,红队,解决方案


cover_image

[工具·书·人] 把渗透测试交给 AI 来做,这个开源项目做到了什么程度

原创

丘驰 丘驰

极客零零七

2026年2月22日 04:28 加拿大

上周聊了 APT 组织在用 Gemini 策划攻击,我在想:「AI 辅助攻击已经是趋势了,那防御方/研究者有没有把 AI 用在渗透测试这端的成熟工具?」

有。而且比你想的更复杂。

这篇文章拆一个开源项目:PentAGI(全称 Pentesting Artificial General Intelligence),GitHub 地址是 vxcontrol/pentagi

这个项目的目标,是让 AI 自主完成渗透测试的全流程——不是”AI 辅助”,是”AI 主导”。

它是什么?

一句话:一个以 LLM 为大脑、以 20+ 专业安全工具为手臂、以多记忆系统为经验库的自主渗透测试平台。

PentAGI 的设计思路跟传统自动化扫描工具完全不同:

  • 传统工具(Nessus、OpenVAS):预设规则 → 执行扫描 → 输出报告,靠规则库驱动,不会”思考”
  • PentAGI:理解任务 → 推理路径 → 调用工具 → 分析结果 → 调整策略 → 继续执行,靠 AI 推理驱动

简单说,传统工具是”按剧本走”,PentAGI 是”临场发挥”。

核心架构:四个专职 Agent + 一个调度中枢

PentAGI 用的是多 Agent 协作架构,每个Agent有明确分工,由Orchestrator(调度中枢)统一协调。

各角色职责:

| Agent | 职责 | 具体工作 | | — | — | — | | Orchestrator | 任务总调度 | 分解测试目标、查询历史经验、分配子任务给其他 Agent | | Researcher | 目标情报收集 | 分析目标、搜索漏洞数据库、查找同类案例 | | Developer | 攻击路径规划 | 制定 Exploit 策略、研究可用工具、加载工具文档 | | Executor | 具体命令执行 | 在隔离容器中执行工具、记录结果、反馈执行状态 |

这个设计的核心逻辑是:把”动脑”和”动手”分开。Researcher 和 Developer 做分析推理,Executor 做工具调用,Orchestrator 做全局协调。每个角色的 LLM Prompt 和上下文都是独立设计的,不互相污染。

渗透测试的完整工作流

以一次典型渗透测试任务为例,PentAGI 的工作流长这样:

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
1. 任务初始化   └── Orchestrator 接收目标(如:192.168.1.0/24 网段)   └── 查询向量数据库,检索是否有类似任务的历史经验   └── 加载相关知识和工具能力描述
2. 情报阶段(Researcher 主导)   └── 调用 nmap 做端口和服务识别   └── 搜索漏洞数据库(CVE/Exploit DB)   └── 通过 Web 搜索补充目标背景信息
3. 规划阶段(Developer 主导)   └── 基于情报制定攻击路径   └── 选择合适的工具链   └── 预估可能的绕过障碍
4. 执行阶段(Executor 主导)   └── 在隔离 Docker 容器中执行工具   └── 实时分析输出结果   └── 根据结果动态调整策略   └── 将成功路径写入知识图谱
5. 报告生成   └── 整合所有发现   └── 生成结构化安全报告

整个过程中,AI 会根据中间结果实时调整策略——这是和传统自动化工具最大的差异。如果一条路走不通,它会换路,而不是报错停止。

记忆系统:三层记忆,让 AI 越测越聪明

这是 PentAGI 最有技术含量的部分之一。

大多数 AI 工具的”记忆”就是一个 Context Window,超出了就忘了。PentAGI 设计了三层记忆架构:

长期记忆: 是核心。基于 PostgreSQL + pgvector 扩展,每次成功的测试路径、工具使用经验、绕过技巧都会被向量化存储。下次遇到类似场景,系统会先检索相似经验,而不是从零开始推理。

情景记忆: 让系统能追溯”上次做了什么”,避免在同一任务里重复无效操作。

工作记忆: 维护当前测试状态,保证多 Agent 协作时信息同步。

知识图谱:理解实体之间的关系

除了向量记忆,PentAGI还集成了Neo4j 图数据库 + Graphiti API 构建知识图谱。向量数据库擅长语义相似性检索(”找跟这个类似的东西”),但它不擅长表达关系(”这个漏洞跟这个服务跟这个目标是什么关系”)。知识图谱补的就是这个缺口:

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
目标主机 192.168.1.10    ├── 开放端口 22 (SSH)    │       └── 服务版本 OpenSSH 7.4   │└──已知漏洞CVE-2018-15473 (用户名枚举)    ├── 开放端口 8080 (HTTP)    │       └── 应用 Tomcat 9.0.12   │└──已知漏洞CVE-2019-0232 (RCE)    └── 操作系统 Linux CentOS 7

每次 Agent 执行一次工具调用,发现一个新实体(主机、服务、漏洞、凭据),都会自动写入图谱。这让系统在执行复杂多步骤攻击链时,能清晰追踪”我已经知道了什么,下一步可以做什么”。

Chain Summarization:解决 LLM 的上下文瓶颈

渗透测试是一个长流程任务。从初始扫描到最终横向移动,工具输出、AI 推理、操作记录会产生大量文本——远超任何 LLM 的 Context Window 上限。

PentAGI 的解法是 Chain Summarization(链式摘要)

  • 1
  • 2
  • 3
  • 4
原始对话历史 [长度超出上限]→ 分段摘要最老的消息 [保留关键信息,压缩细节]→ 保留最近 N 轮对话 [维持短期工作记忆]→ 压缩后的上下文 [继续推理]

具体策略包括三种:

  • Section Summarization:按段落摘要
  • Oversized Pair Processing:处理超大消息对
  • QA Pair Strategies:保留问答结构,压缩中间过程

这让系统可以在不丢失关键信息的前提下,处理时间跨度很长的测试任务——而不是像某些 AI 工具一样跑到一半就”忘了开头在做什么”。

工具套件:20+ 专业安全工具,全在 Docker 里

PentAGI 集成的安全工具覆盖渗透测试的主要阶段:

| 阶段 | 代表工具 | 用途 | | — | — | — | | 侦察 | nmap、masscan | 端口扫描、服务识别 | | Web 漏洞 | sqlmap、nikto | SQL 注入、Web 漏洞扫描 | | 漏洞利用 | metasploit | Exploit 框架 | | 密码攻击 | hydra、john、hashcat | 暴力破解、哈希破解 | | 流量分析 | tcpdump、wireshark | 网络数据包捕获 | | 信息收集 | whatweb、ffuf | Web 指纹识别、目录爆破 |

所有工具运行在独立的 Docker 容器里,和主系统完全隔离。这个设计有两个好处:

  1. 安全隔离:工具执行的任何操作不会影响宿主系统
  2. 动态选择:系统根据任务需要,自动选择对应的 Docker 镜像启动相应工具

AI 可以组合调用多个工具,把一个工具的输出作为另一个工具的输入。比如先用 nmap 扫描发现目标跑了旧版 Tomcat,再自动加载 CVE 对应的 Metasploit 模块执行利用——整个过程不需要人工干预。

LLM 支持:不绑定单一模型

PentAGI 支持以下 LLM 后端:

  • OpenAI(GPT-4o 系列)
  • Anthropic(Claude 3.5/3.7 系列)
  • Ollama(本地部署,完全离线)
  • AWS Bedrock
  • Google Gemini
  • DeepSeek、Moonshot、OpenRouter

支持多模型的意义在于:可以针对不同子任务选择不同模型。比如情报检索用轻量快速的模型,攻击路径规划用推理能力更强的模型,降低成本同时保证质量。

对于需要数据保密的场景(比如企业内网测试),也可以接 Ollama 在本地完全离线运行,数据不出网。

观测系统:知道 AI 在做什么

这个系统里还有一套完整的可观测性栈,这是我比较意外的部分——因为很多 AI 工具对于”AI 具体做了什么推理”这个过程是个黑盒。

PentAGI 集成了:

| 组件 | 用途 | | — | — | | OpenTelemetry | 分布式追踪,追踪每次工具调用的链路 | | Grafana + VictoriaMetrics | 实时监控 Dashboard | | Jaeger | 请求追踪,分析 Agent 间的调用关系 | | Loki | 日志聚合 | | Langfuse | LLM 性能追踪,分析每次推理的 token 消耗和延迟 |

这让你可以看到 AI 在每个节点具体推理了什么、调用了哪个工具、工具返回了什么、AI 下一步做了什么决策——完整链路可追溯。

对于需要做渗透测试报告的场景,这些日志本身就是很好的操作记录。

部署:最低配置能跑起来

支持 Docker Compose 一键部署,有交互式安装脚本。

平台支持:

  • Linux(amd64 / arm64)
  • Windows(amd64)
  • macOS(Intel / M 系列芯片)

最低配置:

  • 2 vCPU
  • 4 GB RAM
  • 20 GB 磁盘

核心前置条件: 需要至少一个 LLM API Key(OpenAI、Anthropic 等),或者本地跑 Ollama。

真正值得关注的,是这套架构的设计思路

PentAGI 现在还是一个相对早期的项目,从真实渗透测试能力来看,离”替代人”还有相当距离。LLM 在复杂推理链上的稳定性、工具调用的成功率、在真实环境里的实际效果——这些都还是未知数。

但这套架构本身的设计思路,非常值得研究:

第一,记忆分层设计解决了 AI 的”失忆”问题。 向量记忆做语义检索、知识图谱做关系推理、Chain Summarization 处理长上下文——三层叠加,让 AI 能真正”积累经验”。

第二,多 Agent 分工解决了单一 LLM 的专注力问题。 一个大 LLM 又要搜集情报、又要规划攻击、又要执行命令,Context 会很快变得混乱。把角色拆开,每个 Agent 只专注自己的部分,推理质量更稳定。

第三,可观测性设计解决了 AI 黑盒问题。 知道 AI 在做什么,才能发现它做错了、才能调优、才能出报告。

这三点放到任何 AI Agent 系统里都成立,不只是渗透测试。

小结

PentAGI 不是一个”你下载下来就能用来打靶机拿分”的即插即用工具,更像是一个验证”自主 AI 渗透测试”这个概念是否可行的研究性项目

对于安全研究者来说,它的架构设计是最有价值的部分:多 Agent 协作、三层记忆系统、知识图谱 + 向量记忆的组合——这套方案值得认真研究,不管你做的是安全工具开发、AI Agent 开发,还是红队研究。

参考链接

https://github.com/vxcontrol/pentagi

你用过哪些 AI 辅助渗透测试的工具或工作流?欢迎在评论区聊聊你的方案——看看大家都在用什么。

关注「极客零零七」获取更多网安资讯 回复「工具」获取渗透测试工具清单


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:极客零零七 丘驰 丘驰《[工具·书·人] 把渗透测试交给 AI 来做,这个开源项目做到了什么程度》

评论:0   参与:  0