使用说明

项目简介

Damn Vulnerable MCP Server (DVMCP) 是一个故意设计成存在安全漏洞的 Model Context Protocol (MCP) 服务器,旨在为安全研究人员和开发者提供一个学习和研究 AI/ML 模型服务漏洞的平台。请注意,DVMCP 包含已知的安全漏洞,绝对不能在生产环境中使用。

主要功能点

  • 资源管理 (Resources): 模拟托管和管理模型资源,例如 'gpt-4', 'gemini-pro' 等。
  • 工具注册和执行 (Tools): 提供一系列预定义的工具,用于演示 MCP 服务器的各种安全漏洞,例如 'prompt_injection', 'model_enumeration', 'context_manipulation' 等。
  • Prompt 模板 (Prompts): 支持通过 'prompts_generate' 工具生成 prompt,但存在注入漏洞。
  • JSON-RPC 协议: 使用 JSON-RPC 协议与客户端通信,处理客户端的请求。
  • 配置发现: 提供 '/.well-known/mcp-configuration' 终端点,暴露服务器配置信息。

安装步骤

  1. 克隆仓库到本地:
    git clone https://github.com/Karanxa/dvmcp.git
    cd dvmcp
  2. 安装依赖:
    pip install -r requirements.txt
  3. 设置 Gemini API 密钥 (用于部分漏洞演示,非MCP核心功能):
    export GOOGLE_API_KEY="your-api-key-here"
  4. 启动服务器:
    python -m dvmcp.app

服务器配置 (MCP 客户端配置)

MCP 客户端需要配置以下信息以连接到 DVMCP 服务器。以下是一个 JSON 格式的配置示例,您需要将其配置到您的 MCP 客户端中。

{
  "serverName": "dvmcp-server",
  "command": "python",
  "args": ["-m", "dvmcp.app"],
  "description": "Damn Vulnerable MCP Server for security testing"
}

参数注释:

  • 'serverName': 服务器的名称,您可以自定义。例如: "dvmcp-server"。
  • 'command': 启动服务器的命令。这里使用 'python' 命令。
  • 'args': 启动服务器命令的参数。 '"-m", "dvmcp.app"' 表示运行 'dvmcp.app' 模块,即启动 Flask 应用。
  • 'description': 服务器的描述信息,您可以自定义。

基本使用方法

DVMCP 服务器启动后,您可以使用 MCP 客户端向服务器的 '/mcp' 终端点发送 JSON-RPC 请求。

例如,您可以使用 'tools_list' 方法列出可用的工具:

{
    "jsonrpc": "2.0",
    "method": "tools_list",
    "id": "1"
}

服务器会返回包含可用工具列表的 JSON-RPC 响应。您可以参考仓库的 'README.md' 文件中提供的漏洞利用示例,了解如何使用不同的工具来测试和利用 DVMCP 服务器的漏洞。

您也可以访问 'http://<服务器地址>:<端口>/.well-known/mcp-configuration' (默认端口为 5000) 来查看服务器的 MCP 配置信息。

请务必仔细阅读 'README.md' 文件,了解 DVMCP 服务器包含的各种安全漏洞及其利用方法,以便更好地进行学习和研究。再次强调,请勿在任何生产环境中使用 DVMCP。

信息

分类

开发者工具