HM

hoodoer/mcp-asd

Developer tools

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

34 stars 4 forks 品質 53 トレンド 26

MCP 攻撃面検知器 - Burp プラグインは、Burp Suite で簡単に MCP サーバーの手動テストを行う

概要

MCP-ASDは、モデルコンテキストプロトコル(MCP)サーバーの攻撃面を識別、マップ、およびテストするために設計されたBurp Suite拡張(Montoya API)です。 Burpの同期テストツール(Repeater、Intruder、Scanner)とMCP接続(SSE&WebSockets)の非同期、持続的な性質の間のブリッジを提供します。 これにより、セキュリティの専門家は、標準的なWebテストワークフローを使用してMCPツール、リソース、およびプロンプトを監査することができます。 - Server-Sentイベント(SSE)、WebSockets(ws/ws)、HTTP POST専用トランスポート(GET/SSEをサポートしていないサーバー)のフルサポート。 - 認証が必要な保護されたエンドポイントの検出を含むMCPエンドポイントの自動検出。 - 引数のスキーマ抽出を含むツール、リソース、およびプロンプトを自動的に発見し、視覚化します。 ・Burp RepeaterとIntruderのシームレスな使用を可能にし、非同期ID相関とセッション管理を処理します。 - 検出されたツールスキーマに基づいて有効なJSON-RPCペイロードを自動的に生成します.

概要(AI 翻訳)

バージョン: 1.2.0

MCP-ASDは、モデルコンテキストプロトコル(MCP)サーバーの攻撃面を識別、マップ、およびテストするために設計されたBurp Suite拡張(Montoya API)です。

Burpの同期テストツール(Repeater、Intruder、Scanner)とMCP接続(SSE&WebSockets)の非同期、持続的な性質の間のブリッジを提供します。 これにより、セキュリティの専門家は、標準的なWebテストワークフローを使用してMCPツール、リソース、およびプロンプトを監査することができます。

##特徴

-マルチプロトコールサポート: Server-Sent Events(SSE)、WebSockets(ws/ws)、HTTP POST専用トランスポート(GET/SSEをサポートしていないサーバー用)の完全なサポート。

  • エンドポイント自動開示: 認証が必要な保護されたエンドポイントの検出を含むMCPエンドポイントの自動検出。
  • 攻撃面列挙: 引数のスキーマ抽出を含むツール、リソース、およびプロンプトを自動的に検出し、視覚化します。
  • 同期ブリッジング: Burp RepeaterとIntruderのシームレスな使用を可能にし、非同期ID相関とセッション管理を処理します。
  • プロトタイプ生成: 発見されたツールスキーマに基づいて、有効なJSON-RPCペイロードを自動的に生成します.

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。

README

以下は原文 README の抜粋です。原文を見る。

MCP Attack Surface Detector (MCP-ASD)

Version: 1.2.0

MCP-ASD is a Burp Suite extension (Montoya API) designed to identify, map, and test the attack surface of Model Context Protocol (MCP) servers.

It provides a bridge between Burp’s synchronous testing tools (Repeater, Intruder, Scanner) and the asynchronous, persistent nature of MCP connections (SSE & WebSockets). This allows security professionals to audit MCP Tools, Resources, and Prompts using standard web testing workflows.

Features

  • Multi-Protocol Support: Full support for Server-Sent Events (SSE), WebSockets (ws/wss), and HTTP POST-only transport (for servers that don’t support GET/SSE).
  • Endpoint Auto-Discovery: Automated detection of MCP endpoints, including detection of protected endpoints that require authentication.
  • Attack Surface Enumeration: Automatically discovers and visualizes Tools, Resources, and Prompts, including schema extraction for arguments.
  • Synchronous Bridging: Enables seamless use of Burp Repeater and Intruder by handling asynchronous ID correlation and session management.
  • Prototype Generation: Automatically generates valid JSON-RPC payloads based on discovered tool schemas.
  • Authentication & mTLS: Support for custom HTTP headers (OAuth Bearer tokens, API keys) and mTLS client certificates (PKCS#12).
  • Native Integration: Reports discovered MCP servers directly to Burp’s Target and Dashboard.
  • Advanced Detection: Includes passive monitoring and active probing for MCP servers on discovered domains.
  • Auth Gateway Detection: Detects MCP endpoints behind authentication gateways (Zscaler, OAuth, SAML, SSO) by recognizing redirect patterns to auth endpoints, including URL-encoded origurl parameters.

Installation

Prerequisites

  • Java JDK 21+ (to build)
  • Burp Suite Professional or Community (2025.6+)
    • MCP server detection (passive and active checks) runs through Burp Scanner and requires Burp Suite Professional. Everything else works in Community.

Building from Source

Note: There is a precompiled .jar at:
https://github.com/hoodoer/MCP-ASD/releases/tag/v1.0

git clone https://github.com/your-repo/mcp-asd.git
cd mcp-asd
./gradlew shadowJar

The resulting JAR will be located at build/libs/mcp-asd.jar.

Loading the Extension

  1. Open Burp Suite.
  2. Navigate to Extensions -> Installed.
  3. Click Add.
  4. Select Java and browse to the generated mcp-asd.jar.

Usage

1. Connection Management

  • Use the New Connection button in the MCP-ASD tab to connect to a server.
  • The Auto-Detect Endpoints feature identifies common MCP paths.
  • Connection settings (host, port, headers, certificates) are persisted for the duration of the session.
  • Cancel Button: If a connection attempt hangs or takes too long, use the Cancel button to abort the handshake and reset the interface.
GitHub で README 全文を見る

インストール

This server does not publish a one-line install command.

Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →