使用说明

项目简介

BurpSuite MCP Server 是一个基于 FastAPI 框架构建的 MCP 服务器,它将强大的 BurpSuite 安全测试工具的功能通过标准化的 API 接口暴露出来,使得 LLM 应用能够方便地调用 BurpSuite 的代理、扫描和日志功能,从而实现更智能、更安全的网络应用交互。

主要功能点

  • 代理工具 (Proxy Tool):

    • 拦截和修改 HTTP/HTTPS 流量,允许 LLM 应用动态地分析和操控网络请求。
    • 查看和操作请求/响应,获取详细的网络通信数据。
    • 访问代理历史记录,方便回溯和分析之前的网络交互。
    • 实时请求/响应修改,支持 LLM 应用进行动态的安全策略调整或数据注入。
  • 扫描工具 (Scanner Tool):

    • 主动和被动安全扫描,帮助 LLM 应用识别潜在的安全漏洞。
    • 自定义扫描配置,允许根据具体需求调整扫描策略。
    • 实时问题跟踪,及时掌握扫描进度和结果。
    • 扫描状态监控,方便 LLM 应用进行自动化安全评估。
  • 日志工具 (Logger Tool):

    • 全面的 HTTP 流量日志记录,为 LLM 应用提供详细的网络行为审计数据。
    • 高级过滤和搜索功能,帮助快速定位关键日志信息。
    • 漏洞检测,自动识别潜在的安全风险。
    • 流量分析,支持 LLM 应用进行网络行为模式分析和异常检测。
    • 可疑模式检测,辅助识别潜在的攻击行为。
  • 漏洞检测:

    • 自动检测多种常见 Web 漏洞,包括 XSS、SQL 注入、路径遍历、文件包含、SSRF、XXE、CSRF、开放重定向和命令注入等。

安装步骤

  1. 克隆仓库

    git clone https://github.com/X3r0K/BurpSuite-MCP-Server.git
    cd BurpSuite-MCP-Server
  2. 安装依赖

    pip install -r requirements.txt
  3. 配置环境变量

    复制 '.env.example' 文件为 '.env',并根据你的 BurpSuite 环境和服务器配置修改 '.env' 文件中的值。

    cp .env.example .env

    '.env' 文件配置示例:

    BURP_API_KEY=Your_API_KEY  # 如果BurpSuite API 需要API Key,则配置
    BURP_API_HOST=localhost    # BurpSuite API 主机地址
    BURP_API_PORT=1337       # BurpSuite API 端口
    BURP_PROXY_HOST=127.0.0.1  # BurpSuite 代理主机地址
    BURP_PROXY_PORT=8080     # BurpSuite 代理端口
    MCP_SERVER_HOST=0.0.0.0    # MCP 服务器监听主机地址
    MCP_SERVER_PORT=8000     # MCP 服务器监听端口
  4. 启动服务器

    python main.py

    服务器将在 'http://localhost:8000' 启动。

服务器配置

MCP 客户端需要配置以下 JSON 格式信息才能连接到 BurpSuite MCP Server:

{
  "serverName": "BurpSuiteMCP",
  "command": "python",
  "args": ["main.py"],
  "host": "http://localhost:8000"  // MCP 服务器地址,根据实际情况修改
}

配置参数说明:

  • 'serverName': 自定义服务器名称,例如 "BurpSuiteMCP"。
  • 'command': 启动服务器的命令,这里使用 'python'。
  • 'args': 启动服务器命令的参数,这里指定运行 'main.py' 文件。
  • 'host': MCP 服务器的地址,需要与启动服务器的实际地址和端口一致。如果服务器部署在远程机器上,需要将 'localhost' 替换为服务器的 IP 地址或域名。

基本使用方法

BurpSuite MCP Server 通过 RESTful API 提供服务。你可以使用 HTTP 请求 (例如 'curl' 命令) 或编程语言的 HTTP 库来调用其功能。

常用 API 示例:

  • 拦截请求:

    curl -X POST "http://localhost:8000/proxy/intercept" \
      -H "Content-Type: application/json" \
      -d '{
        "url": "https://example.com",
        "method": "GET",
        "headers": {"User-Agent": "Custom"},
        "intercept": true
      }'
  • 启动扫描:

    curl -X POST "http://localhost:8000/scanner/start" \
      -H "Content-Type: application/json" \
      -d '{
        "target_url": "https://example.com",
        "scan_type": "active",
        "scan_configurations": {
          "scope": "strict",
          "audit_checks": ["xss", "sqli"]
        }
      }'
  • 获取日志:

    curl "http://localhost:8000/logger/logs?filter[method]=POST&filter[status_code]=200"

更多 API 详情请参考 Swagger UI ('http://localhost:8000/docs') 或 ReDoc ('http://localhost:8000/redoc')。

信息

分类

开发者工具