
harishsg993010/damn-vulnerable-mcp-server
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
Чёртов уязвимый сервер MCP
Обзор
Намеренно уязвимая реализация протокола Model Context Protocol (MCP) для образовательных целей. Протокол контекста уязвимой модели (DVMCP) — это образовательный проект, направленный на демонстрацию уязвимостей безопасности в реализациях MCP. Он содержит 10 задач с возрастающей сложностью, демонстрирующих различные типы уязвимостей и векторы атак. Этот проект предназначен для исследователей безопасности, разработчиков и специалистов по безопасности ИИ, чтобы узнать о возможных проблемах безопасности в реализации MCP и о способах их устранения. Протокол контекста модели (MCP) — это стандартизированный протокол, который позволяет приложениям структурированно предоставлять контекст для больших языковых моделей (LLM). Он отделяет вопросы предоставления контекста от фактического взаимодействия с LLM, позволяя приложениям предоставлять ресурсы, инструменты и запросы для LLM.
Обзор (машинный перевод)
Намеренно уязвимая реализация протокола Model Context Protocol (MCP) для образовательных целей.
Обзор
Протокол контекста уязвимой модели (DVMCP) — это образовательный проект, направленный на демонстрацию уязвимостей безопасности в реализациях MCP. Он содержит 10 задач с возрастающей сложностью, демонстрирующих различные типы уязвимостей и векторы атак.
Этот проект предназначен для исследователей безопасности, разработчиков и специалистов по безопасности ИИ, чтобы узнать о возможных проблемах безопасности в реализации MCP и о способах их устранения.
Что такое MCP?
Протокол контекста модели (MCP) — это стандартизированный протокол, который позволяет приложениям структурированно предоставлять контекст для больших языковых моделей (LLM). Он отделяет вопросы предоставления контекста от фактического взаимодействия с LLM, позволяя приложениям предоставлять ресурсы, инструменты и запросы для LLM.
Рекомендуемые клиенты MCP
CLINE - расширение VSCode См. этот раздел Подключение к удалёному серверу — Cline для подключения Cline к MCP-серверу
Быстрый старт
После клонирования репозитория выполните следующие команды:
Отказ от ответственности
Это нестабильно в среде Windows.
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
Damn Vulnerable Model Context Protocol (DVMCP)
A deliberately vulnerable implementation of the Model Context Protocol (MCP) for educational purposes.
Overview
The Damn Vulnerable Model Context Protocol (DVMCP) is an educational project designed to demonstrate security vulnerabilities in MCP implementations. It contains 10 challenges of increasing difficulty that showcase different types of vulnerabilities and attack vectors.
This project is intended for security researchers, developers, and AI safety professionals to learn about potential security issues in MCP implementations and how to mitigate them.
What is MCP?
The Model Context Protocol (MCP) is a standardized protocol that allows applications to provide context for Large Language Models (LLMs) in a structured way. It separates the concerns of providing context from the actual LLM interaction, enabling applications to expose resources, tools, and prompts to LLMs.
Recommended MCP Clients
CLINE - VSCode Extension
Refer to this Connecting to a Remote Server - Cline for connecting Cline with MCP server
Quick Start
Once you have cloned the repository, run the following commands:
docker build -t dvmcp .
docker run -p 9001-9010:9001-9010 dvmcp
Disclaimer
It’s not stable in a Windows environment. If you don’t want to use Docker then please use Linux environment. I recommend Docker to run the LAB and I am 100% percent sure it works well in the Docker environment
Security Risks
While MCP provides many benefits, it also introduces new security considerations. This project demonstrates various vulnerabilities that can occur in MCP implementations, including:
- Prompt Injection: Manipulating LLM behavior through malicious inputs
- Tool Poisoning: Hiding malicious instructions in tool descriptions
- Excessive Permissions: Exploiting overly permissive tool access
- Rug Pull Attacks: Exploiting tool definition mutations
- Tool Shadowing: Overriding legitimate tools with malicious ones
- Indirect Prompt Injection: Injecting instructions through data sources
- Token Theft: Exploiting insecure token storage
- Malicious Code Execution: Executing arbitrary code through vulnerable tools
- Remote Access Control: Gaining unauthorized system access
- Multi-Vector Attacks: Combining multiple vulnerabilities
Project Structure
damn-vulnerable-MCP-server/
├── README.md # Project overview
├── requirements.txt # Python dependencies
├── challenges/ # Challenge implementations
│ ├── easy/ # Easy difficulty challenges (1-3)
│ │ ├── challenge1/ # Basic Prompt Injection
│ │ ├── challenge2/ # Tool Poisoning
│ │ └── challenge3/ # Excessive Permission Scope
│ ├── medium/ # Medium difficulty challenges (4-7)
Установка
docker run -p 9001-9010:9001-9010 dvmcp