📌 项目地址vxcontrol/pentagi | ⭐ 19,251 颗星 | 🔧 Go | 📜 未标注

项目简介

PentAGI 是一个基于 AI Agent 的全自动渗透测试系统。它将 GPT-4、Claude、Gemini 等大语言模型与 20 多种专业安全工具(nmap、Metasploit、sqlmap 等)整合在一个 Docker 沙箱内,由 AI 自主决策并执行渗透测试步骤,同时支持人工监控和干预。

项目使用 Go 语言开发,GitHub 19251 星,代码库体积不大(约 500KB),核心在于编排 LLM 对话、工具调用和长期记忆(知识图谱)。README 明确说明“所有操作在完全隔离的 Docker 沙箱环境中执行”,适合信息安全专业人士、研究者以及需要高频自动化测试的团队。

快速上手

PentAGI 的安装依赖 Docker 和 Docker Compose。按照 README 的 Quick Start 部分,以下为基本流程(命令均摘自原文):

  1. 克隆仓库并进入目录:
    bash
    git clone https://github.com/vxcontrol/pentagi.git
    cd pentagi

  2. 复制配置文件并创建本地版本:
    bash
    cp config/config.yaml config/local.yaml
    cp docker-compose.yaml docker-compose.local.yaml

  3. 初始化并启动服务:
    bash
    make init
    make up

  4. 启动应用:
    bash
    make app

启动后,浏览器访问对应地址即可登录。登录后的交互方式为 Web 界面,README 中描述了三个步骤:
– 选择渗透测试 Agent
– 输入目标信息(如 IP、域名)
– 观察 AI 自主执行并输出结果(可随时暂停或提出新指令)

配置 LLM Provider

PentAGI 本身不内置大模型,需要用户提供 LLM API 密钥。支持的开源和商业模型包括:Ollama、OpenAI、Anthropic、Google AI (Gemini)、AWS Bedrock、DeepSeek、GLM、Kimi、Qwen。

以最常见的 Ollama(本地部署)和 OpenAI 为例,配置方式来自 README 的 API Access 节:

  • Ollama:设置环境变量
    bash
    export PENTAGI_LLM_PROVIDER=ollama
    export PENTAGI_LLM_MODEL=llama3 # 或 mixtral 等
    export PENTAGI_OLLAMA_ENDPOINT=http://localhost:11434

  • OpenAI
    bash
    export PENTAGI_LLM_PROVIDER=openai
    export PENTAGI_LLM_MODEL=gpt-4o
    export PENTAGI_OPENAI_API_KEY=sk-xxxx

其他提供商的配置类似,只需替换前缀和相应密钥变量。模型质量直接影响渗透任务的准确性——使用 GPT-4 或 Claude 3.5 等更强模型时,Agent 能更合理地选择扫描目标和漏洞利用方式。

与同类工具的区别

目前市面上已出现多个“AI 安全助手”或“自动化渗透 Agent”,但 PentAGI 有几个明显特点:

  • 专注渗透测试全链路:不局限于代码审查或日志分析,而是直接调用 nmap、sqlmap、Metasploit 等工具,生成攻击载荷并执行。AutoGPT 也能调工具,但 PentAGI 是针对安全测试场景优化过的 prompt 链和工具编排。
  • 长期记忆 + 知识图谱:利用 Neo4j 和 Graphiti 保存扫描结果、漏洞关系、成功攻击路径,后续测试可以复用经验,而非每次从头开始。
  • 内置 Web 情报:通过 scraper 容器访问互联网,Agent 可以查询 CVE、PoC 或公开漏洞库,辅助决策。
  • 人工监督模式:支持执行监控和智能任务规划,允许安全专家在关键步骤(如利用漏洞)前确认,降低误操作风险。

注意事项

  1. 安全警告:PentAGI 本身是授权渗透测试工具,未经对方许可使用可能违反法律法规。项目只应在自有环境或获得明确授权的目标上运行。
  2. 许可证:README 中 License 部分未详细说明(可能是 MIT 或 Apache 2.0),使用前应查看仓库许可证文件。
  3. 资源消耗:Docker 镜像下需要运行多个容器(scraper、Neo4j、PentAGI 主服务、LLM API 调用),建议至少 16GB 内存和现代 CPU。
  4. LLM 成本:若使用商业 API(如 GPT-4o),大量自动化扫描可能产生显著费用,可优先选用本地运行的 Ollama 模型(如 Llama 3 70B)控制成本,但效果可能略逊。

如需更详细的配置(Langfuse 可观测性、OAuth 登录、自定义 LLM URL 等),请参考官方文档: PentAGI README

这篇文章对你有帮助吗?

发表回复