Back to MCP directory
publicPublicdnsLocal runtime

mcp-poisoning-poc

该项目展示了针对AI工作流程的MCP投毒攻击,包含多种攻击场景的验证,如代码生成污染、财务数据泄露等,用于教育研究目的。

article

README

🚀 MCP 投毒攻击 - 概念验证(PoC)

本项目仓库展示了多种 MCP 投毒攻击 方式,这些攻击可对现实世界中的 AI 代理工作流程产生影响,揭示了相关安全风险。

🚀 快速开始

本项目展示了 MCP 投毒攻击的概念验证,下面将介绍如何搭建环境并运行攻击模拟。

✨ 主要特性

  • 代码生成投毒:对代码生成过程进行投毒攻击。
  • 财务报告信息窃取:可窃取财务报告中的重要信息。
  • 竞争对手分析数据泄露:导致竞争对手分析数据的泄露。
  • 会议记录外泄:造成会议记录的对外泄露。
  • 代码审查信息窃取:窃取代码审查过程中的相关信息。
  • 跨服务器影子攻击:实施跨服务器的隐蔽攻击。

📦 安装指南

在运行本项目前,需要安装所需的依赖库。请在终端中执行以下命令:

pip install -r requirements.txt

💻 使用示例

基础用法

按照以下步骤运行概念验证(PoC):

  1. 启动假的 MCP 服务器
python fake_mcp_server.py
  1. 在另一个终端中运行代理模拟
python agent_poc.py

☠️ 影响

  • 静默数据窃取:在用户无感知的情况下窃取数据。
  • 跨工具劫持:实现对跨工具的劫持操作。
  • 对用户无明显提示:攻击过程中不会给用户明显的提示。

📄 许可证

本项目采用 Apache 2.0 许可证,仅用于教育和研究用途。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client