<!-- Generated by scripts/build_llm_resources.py; edit the canonical HTML instead. -->

# MCP 安全：提示词注入与工具投毒详解

> 解释 MCP 工作流中提示词注入与工具投毒如何通过工具元数据、清单与输出进入系统，以及现实可行的防护层。

- Canonical page: [https://veridicuscan.app/zh-cn/mcp-security-prompt-injection-tool-poisoning](https://veridicuscan.app/zh-cn/mcp-security-prompt-injection-tool-poisoning)
- Language: Simplified Chinese
- Published: 2026-03-11
- Last materially updated: 2026-03-11

博客技术解读

当工具元数据不再只是文档，而开始像“指令”一样影响模型行为时，MCP 的安全问题就会出现。这正是 MCP 中提示词注入与工具投毒的核心。

更新于 2026年3月11日

本文包括

- MCP 是什么，信任边界在哪里断裂
- 提示词注入与工具投毒的差异
- 近期研究真正说明了什么
- 现实中哪些防线有效

短答案

## 为什么 MCP 会把问题变难

MCP 安全的难点不只在“工具返回了坏输出”。真正的风险更早开始：模型会读取工具名称、描述、清单、提示模板与相关发现元数据，并给这些文本过高权威。

这也是为什么“提示词注入”和“工具投毒”必须放在一起讨论。提示词注入是更广义的问题：不受信文本被当成指令；工具投毒则是 MCP 形态下的体现，即恶意指令被埋进工具元数据或注册时上下文，导致模型选错工具、泄露数据或执行危险动作。

## 提示词注入与工具投毒在 MCP 中的区别

实用的判断方法是：如果不受信文本出现在 MCP 工作流里并开始影响模型行为，那就是提示词注入；如果这些文本具体埋在工具的描述层、清单层或注册层，那就属于工具投毒。

| 问题 | MCP 中的提示词注入 | 工具投毒 |
| --- | --- | --- |
| 恶意文本藏在哪里 | 工具输出、外部资源、提示模板、文档或任何 MCP 喂给模型的上下文里 | 通常在工具名称、描述、清单、提示或发现阶段元数据中 |
| 什么时候开始起作用 | 只要模型读取并让这些文本影响行为，就已经开始 | 常在发现、注册或工具选择阶段生效，甚至在工具执行前 |
| 被投毒工具必须真正运行吗 | 不一定 | 不需要。近期论文显示，仅元数据就能把模型引向另一个高权限合法工具 |
| 主要攻击目标 | 劫持工作流、泄露数据、触发危险动作 | 误导工具选择，借可信外观推动高权限操作 |

## 攻击入口通常比“工具执行后”更早

很多团队会误以为风险只从工具执行结果开始。近期 MCP 研究给出的结论更宽：工具元数据、工具输出、外部资源，以及注册表发现与更新机制，都是攻击面。

也就是说，用户甚至不需要直接输入恶意提示。只要接入一个看起来有用的第三方 MCP 服务器，模型就可能从该服务器的周边元数据里继承敌意文本。

- 把第三方服务器、清单、提示与工具描述视为不受信内容，除非已经被审核
- 使用可信注册表、版本固定与分阶段发布，避免服务器静默漂移
- 对本地或第三方 MCP 服务器进行沙箱化，并赋予最小权限
- 对敏感操作展示工具输入、保留用户确认，并验证工具输出
- 在 URL、文件与解析器可见工件进入智能体前先做检查

## 常见问题

### MCP 里的工具投毒是什么意思？

指恶意指令被嵌进工具元数据或注册阶段上下文，使模型以不安全方式选择或使用工具。简言之，工具的“说明层”本身成了攻击面。

### 工具投毒只是间接提示词注入吗？

可以把它理解为 MCP 语境下的一种间接提示词注入。广义问题是不受信文本变成了指令；工具投毒则是这件事发生在工具元数据里。

### 一个被投毒的工具即使没运行也会危险吗？

会。MCP-ITP 等研究显示，被投毒的工具可以仅凭元数据就把模型引向另一个高权限合法工具。

关键要点

- MCP 的安全问题常在工具执行前就已经出现
- 工具投毒是发生在工具元数据层的提示词注入
- 被投毒工具不一定需要真正执行就能造成危害
- 可信注册表、最小权限与审核门是最关键的控制层

继续阅读

- [返回博客](https://veridicuscan.app/zh-cn/blog)
- [MCP 安全最佳实践](https://veridicuscan.app/zh-cn/mcp-security-best-practices)
- [MCP 自动化](https://veridicuscan.app/zh-cn/mcp-automation)
- [风险收敛指南](https://veridicuscan.app/zh-cn/how-to-reduce-prompt-injection-risk)
