渗透测试工具集成

Pentester-MCP是一个开源渗透测试工具集成平台,通过Model Context Protocol (MCP)为AI助手提供200多种流行的网络安全和渗透测试工具,使其具备自主渗透测试能力。

  • by halilkirazkaya
  • Python
  • 本地部署
  • 60 星标
  • 更新于
在 GitHub 查看 halilkirazkaya/pentester-mcp

使用说明

Pentester-MCP

Empower your AI assistants with the ultimate open-source penetration testing arsenal.


概述

Pentester MCP 提供 模型上下文协议(MCP) 整合过度 200多种最受欢迎的开源网络安全和渗透测试工具.

通过将Pentester MCP添加到AI助手(如Claude Desktop、Cursor或专业代理)中,AI获得了作为渗透测试仪的自主能力:

  • 它可以跑 nmap 扫描、分析开放端口,并自动决定运行 ffuf 在已发现的web服务器上。
  • 它可以执行 sqlmap 针对它识别为易受攻击的参数。
  • 得益于注入到每个MCP工具中的AI优化文档字符串,它能够理解工具参数、所需标志和语法。

全部235个Python *_mcp.py 工具是从备忘单中智能生成的,以确保安全执行(例如,防止shell注入、强制超时和处理巨大的终端输出)。

阿森纳

这 tools/ 目录包括几乎所有类别的MCP服务器:

  • 侦察: nmap, masscan, recon-ng, amass, subfinder, nuclei
  • 网络攻击: sqlmap, commix, ffuf, gobuster, dirsearch, nikto
  • Active Directory和网络: impacket (全套), bloodhound, responder, evil-winrm
  • 强制破解密码(&P): hydra, medusa, john, hashcat, nxc
  • 200多个 涵盖WiFi、云、Kubernetes、Android和反向。

安装与使用

由于工具数量庞大,在主机上安装所有内容可能会很混乱。因此,Pentester MCP提供了两种主要的运行方式: 本地执行 和 Docker沙盒 (推荐)。

方法A:Docker沙盒(推荐且安全)

通过Docker运行工具可以将执行与主机操作系统隔离开来,避免数百个依赖项污染系统。

  1. 克隆存储库:

    git clone https://github.com/halilkirazkaya/pentester-mcp.git
    cd pentester-mcp
    
  2. 选择您的工具(configs/*.yaml): 在中打开目标配置文件 configs/ 目录(例如。, example-config.yaml)并设置 true 对于您希望启用的任何工具。默认情况下 docker-compose.yml 指向 example-config.yaml.

  3. 构建并运行沙盒:

    docker compose up -d --build
    

    您的容器现在正在后台静默运行。

  4. 添加到您的AI客户端: 打开MCP客户端的配置(例如。, claude_desktop_config.json)并将命令直接路由到 server.py 入口点。看 mcp-config.json 对于一个即用型代码段。


方法B:本地执行(最快设置)

如果您已经拥有Kali Linux、Parrot OS,或者您只想使用已安装在主机系统上的工具:

  1. 克隆和设置虚拟环境:

    git clone https://github.com/halilkirazkaya/pentester-mcp.git
    cd pentester-mcp
    python3 -m venv .venv
    source .venv/bin/activate
    pip install -r requirements.txt
    
  2. 添加到您的AI客户端: 指示AI客户端使用本地python环境执行特定工具。您需要从中提取工具定义 configs/ 目录并替换 "docker exec -i pentester-mcp /app/.venv/bin/python" 与主机的python路径相关的参数。

    注:如果工具二进制(例如。, nmap 或 gobuster)如果您的主机系统上没有安装,AI将优雅地收到 FileNotFoundError 并通知您。


🔧 配置MCP客户端(Claude、Cursor等)

与要求您在235个选项中为每个工具注册服务器的传统设置不同,Pentester MCP现在使用 统一服务器体系结构.

  1. 通过在中编辑配置文件来定义要使用的工具 configs/ (例如。, example-config.yaml).
  2. 添加 单一统一服务器 到您的Claude/Cursor配置。

Claude桌面示例

只需复制以下内容 mcp-config.json 进入你的 claude_desktop_config.json 文件。它看起来就像这样:

{
  "mcpServers": {
    "pentester_mcp": {
      "command": "docker",
      "args": [
        "exec",
        "-i",
        "pentester-mcp",
        "/app/.venv/bin/python",
        "/app/server.py"
      ]
    }
  }
}

警告: 配置使用 docker exec -i pentester-mcp 其目标是名为的正在运行的Docker容器 pentester-mcp.确保集装箱正在通过 docker compose up -d 在使用AI助手之前。


贡献与架构

Python脚本在 tools/ 目录是从YAML备忘单自动生成的,以确保API设计的一致性(正确超时,将输出截断为>8000个字符,无 shell=True 漏洞)。

如果您有添加新工具的请求,请随时提出问题。


免责声明

法律免责声明: 该项目严格用于教育目的、授权审计和道德黑客。Pentester MCP的开发人员对此软件造成的任何误用或损坏不承担任何责任。 切勿在您不拥有或没有明确书面许可进行测试的环境中使用这些工具。