跳转至

MCP工具投毒攻击

风险概览

风险编号:GAARM.0046
子风险:GAARM.0046.001、GAARM.0046.002
安全阶段:应用安全
生命周期:应用阶段
创建时间:2025.05.23
修改时间:2025.05.23

攻击概述

MCP是一个开放协议,用于标准化应用程序向大语言模型提供上下文的方式,MCP工具投毒攻击是一种针对该协议的攻击方式。攻击者通过恶意MCP Server的工具描述中注入攻击性提示词,实现对工具行为的恶意操纵。其核心特征是在工具描述中嵌入恶意指令,利用模型解析完整工具描述的过程,通过隐藏指令(如特殊标签或编码)诱导模型执行非授权操作,例如生成恶意内容、泄露敏感信息或绕过其他安全限制。

攻击案例

案例 描述
案例一 攻击者通过操纵工具描述实现恶意攻击,导致敏感模型信息泄露到恶意的MCP Server
案例二 利用MCP Tool的描述进行投毒,实现简介提示词注入,控制其他工具的参数实现信息外带等攻击目的

攻击风险

MCP工具投毒攻击可能导致严重的系统性风险,影响模型的安全性、可靠性和用户信任。以下是主要风险:

  • 信任破坏:可能导致用户对模型及其开发工具的信任下降,影响其在敏感场景中的应用。
  • 目标劫持:可通过投毒使模型偏离其原始设计目的,执行自定义的恶意指令,增加滥用风险。
  • 系统安全性威胁:可能导致在MCP工具中植入恶意代码,导致系统被进一步入侵或功能被破坏。
  • 数据隐私泄露: 可利用投毒提取模型训练数据或用户输入的敏感信息。

缓解措施

缓解方式 描述
白盒评估机制 对MCP Server的代码进行白盒审计,及时发现恶意的工具描述以及代码行为
审计与监控 实时监控模型行为,记录工具调用日志,及时检测异常操作
模型安全训练 对模型进行对抗性训练,增强对投毒攻击的防御能力
API访问控制 限制工具对敏感数据的访问,降低泄露和滥用风险

参考