Damn Vulnerable MCP Server

Damn Vulnerable MCP Server

🚀 该死的易受攻击模型上下文协议 (DVMCP)

Damn Vulnerable Model Context Protocol(DVMCP)是一个专门为教育目的设计的项目,故意实现了易受攻击的模型上下文协议(MCP)。它包含10个难度递增的挑战,能帮助研究人员、开发人员和AI安全专业人员了解MCP实现中的安全漏洞及防护方法。

🚀 快速开始

在克隆仓库后,请运行以下命令:

docker build -t dvmcp .
docker run -p 9001-9010:9001-9010 dvmcp

⚠️ 重要提示

在Windows环境下如果不使用Docker可能会不稳定。如果您不想使用Docker,请使用Linux环境。强烈推荐使用Docker来运行此实验,并且可以保证它在Docker环境中良好运行。

✨ 主要特性

  • 教育性:通过10个难度逐渐递增的挑战,展示MCP实现中不同类型的安全漏洞和攻击向量。
  • 实用性:适用于研究人员、开发人员和AI安全专业人员学习MCP实现中潜在的安全问题以及如何进行防护。

📚 详细文档

什么是MCP?

模型上下文协议(Model Context Protocol,简称MCP)是一个标准化协议,允许应用程序以一种结构化的方式为大型语言模型(LLMs)提供上下文信息。它将提供上下文与实际的LLM交互分离开来,使应用程序能够向LLM暴露资源、工具和提示。

推荐的MCP客户端

安全风险

尽管MCP提供了许多好处,但它也引入了新的安全考量。该项目展示了MCP实现中可能出现的各种安全漏洞,包括:

  1. 提示注入:通过恶意输入操纵LLM的行为
  2. 工具中毒:在工具描述中隐藏恶意指令
  3. 权限过大:利用过于宽松的工具访问权限
  4. 拉地毯攻击:利用工具定义的更改进行攻击
  5. 工具覆盖:使用恶意工具覆盖合法工具
  6. 间接提示注入:通过数据源注入恶意指令
  7. 令牌窃取:利用不安全的令牌存储机制窃取令牌
  8. 恶意代码执行:通过漏洞工具执行任意代码
  9. 远程访问控制:未经授权获取系统访问权限
  10. 多向量攻击:结合多种漏洞进行复杂攻击

项目结构

damn-vulnerable-mcs/
├── README.md                 # 项目概述
├── requirements.txt          # Python依赖项
├── challenges/               # 挑战实现
│   ├── easy/                 # 简单难度挑战(1 - 3)
│   │   ├── challenge1/       # 基本提示注入
│   │   ├── challenge2/       # 中级提示注入
│   │   └── challenge3/       # 高级提示注入
│   ├── medium/               # 中等难度挑战(4 - 7)
│   │   ├── challenge4/       # 拉地毯攻击基础
│   │   ├── challenge5/       # 工具中毒入门
│   │   ├── challenge6/       # 间接提示注入
│   │   ├── challenge7/       # 复杂权限绕过
│   └── hard/                 # 高级难度挑战(8 - 10)
│       ├── challenge8/       # 恶意代码执行
│       ├── challenge9/       # 令牌窃取与持久化
│       └── challenge10/      # 综合多向量攻击
├── solutions/                # 解决方案
│   └── README.md             # 各挑战的解决方案说明
└── LICENSE                   # 许可证文件

解决方案

为了教育目的,提供了各挑战的解决方案指南。建议在查看解决方案之前先尝试自行解决这些挑战。 请参考 solutions/README.md 了解每个挑战的详细解决方案。

免责声明

此项目仅用于教育用途。本项目中演示的所有漏洞应在生产系统中严格避免。实施MCP服务器时,请始终遵循安全最佳实践。

📄 许可证

此项目在MIT许可证下发布,具体请查看 LICENSE 文件。

👨‍💻 作者

该项目由Harish Santhanalakshmi Ganesan使用Cursor IDE和Manus AI创建。

  • 0 关注
  • 0 收藏,10 浏览
  • system 提出于 2025-09-30 08:12

相似服务问题