BAIZE AI RESOURCE

AI 渗透测试助手

Pentestagent

PentestAgent 是用于渗透测试的 AI Agent,面向获得授权的安全测试人员。它提供交互式任务执行、预设测试流程和 MCP 工具连接,帮助用户在指定目标上组织测试操作、记录过程并生成会话报告。

Pentestagent

资源介绍

PentestAgent 是一款面向授权渗透测试的 AI Agent,适合需要对指定目标开展安全评估的测试人员使用。用户配置模型 API Key 后,可以在终端界面设置目标,并选择单次指令、自主任务、多智能体协作或交互引导模式。项目提供面向黑盒测试的预设流程,也能通过终端、浏览器等内置工具执行操作;需要接入其他工具时,可配置 MCP 服务器。测试过程中可保存笔记、恢复已保存的对话,并从会话生成报告。它的作用是把目标设置、任务执行和过程记录集中在一个工作界面中;具体测试范围仍应由使用者事先确定并获得授权。

Agent 能力

多种任务模式

提供 /assist、/agent、/crew 和 /interact 命令,分别用于单次指令、自主执行单项任务、多智能体协作和交互式引导。

预设测试流程

提供面向黑盒安全测试的 playbook,可在运行时指定目标和流程,例如使用 thp3_web。

连接外部 MCP 工具

可通过项目根目录的 mcp_servers.json 连接 stdio 或 SSE 类型的 MCP 服务器,启动后可在终端界面用 /mcp 管理。

记录与整理会话

支持查看已保存的笔记、浏览和恢复对话,并使用 /report 从当前会话生成报告。

隔离运行测试工具

可选择 Docker 运行方式,让终端工具在容器中执行;项目提供基础镜像和包含更多测试工具的 Kali 镜像。

资源配置

运行平台

本地运行Docker

配置方式

配置文件环境变量API Key

依赖资源

本地安装需要 Python 3.10+;浏览器工具需安装 Chromium。Docker 运行方式要求 Docker 已安装并运行。使用云模型需配置对应供应商的 API Key;使用本地 Ollama 模型时需提供本地模型服务。联网搜索工具另需 Tavily API Key。

运行与使用

  1. 准备 Python 3.10 或更高版本,以及受支持模型提供商的 API Key;如选择容器运行,还需安装并启动 Docker。

  2. 获取项目并运行对应系统的安装脚本,在项目根目录创建 .env,填写 API Key 和 PENTESTAGENT_MODEL。

  3. 运行 pentestagent 打开终端界面;对已获授权的目标,可用 -t 指定目标,或进入后使用 /target 设置。

  4. 选择 /assist、/agent、/crew 或 /interact 提交任务;需要外部 MCP 工具时,启动前在项目根目录配置 mcp_servers.json。

使用案例

授权目标的交互式评估

使用场景安全测试人员需要围绕指定目标开展测试,并保留过程记录。

安全测试人员在终端界面设置已获授权的目标,通过 /interact 逐步提交测试任务,用 /notes 查看笔记,最后通过 /report 生成会话报告。

运行预设 Web 测试流程

使用场景测试人员希望对授权网站使用预设的黑盒测试流程。

测试人员对已获授权的网站运行 pentestagent run -t example.com --playbook thp3_web,以指定目标启动预设的 Web 测试流程。

包含内容

pentestagent-source.zip
README-中文安装说明.md
LICENSE-MIT.txt
SHA256.txt

常见问题

PentestAgent 需要配置哪些模型信息?
在项目根目录的 .env 中配置模型提供商的 API Key 和 PENTESTAGENT_MODEL;README 给出了 OpenAI、Anthropic 及其他 LiteLLM 支持的提供商的配置方式。
外部 MCP 服务器应在什么时候配置?
启动 Agent 前,将 mcp_servers.json 放在项目根目录、与 .env 同级。服务器会在启动时连接,之后可通过 /mcp 命令查看或管理。
使用内置网页浏览工具还需要安装什么?
项目安装说明要求为浏览器工具执行 playwright install chromium,以安装所需的 Chromium 浏览器。
Docker 运行方式提供哪些工具环境?
README 提供带有 nmap、netcat、curl 的基础镜像,以及包含 metasploit、sqlmap、hydra 等工具的 Kali 镜像;使用前需要安装并启动 Docker。