治理更新于 2026-06-21 · 版本 1.0
什么是提示词注入?
提示词注入是一种攻击方式,隐藏在语言模型输入中的恶意指令会劫持其行为——使其忽略自身规则、泄露数据或滥用工具。它位列 OWASP LLM 应用十大安全风险之首。其根本原因在于模型无法可靠地将可信指令与不可信内容区分开来,因此智能体读取的任何文本(网页、文档、工具结果)都可能携带攻击载荷。
证据: 行业观察置信度: 高来源: 行业观察来源: 论文
定义
提示词注入是一种安全攻击,嵌入在不可信输入中的对抗性指令会导致语言模型偏离其预期行为、绕过安全防护或执行非预期的操作。
核心要点
- 模型读取的不可信文本可能包含隐藏指令。
- 它是 OWASP LLM 应用十大安全风险中排名第一的风险。
- 间接注入将攻击载荷隐藏在文档、网页或工具输出中。
- 风险随着工具访问权限的增加而增长——注入可能会触发真实的物理操作。
- 没有单一的解决方案;防御需要分层进行(最小权限、隔离、人工审批)。
背景
模型遵循自然语言指令,无法可靠地将可信的系统指令与不可信的用户或文档内容区分开来。攻击者利用这一点,在模型会读取的地方植入诸如“忽略之前的指令并……”之类的指令。
直接注入来自用户;间接注入(且更具危险性)隐藏在智能体检索的内容中——如网页、电子邮件、文件或 MCP 工具结果。随着智能体获得工具访问权限,成功的注入可能会导致数据外泄或执行有害操作。
架构
防御是分层的,而不是单一的控制措施:最小权限的工具权限、隔离并清晰界定不可信内容、输出与操作验证、敏感操作的白名单,以及高影响操作的人工介入审批。
将所有工具和检索输出视为不可信输入。监控并记录智能体操作(可观测性)以便检测注入尝试,并定期对系统进行红队测试。
组件
不可信输入边界最小权限许可内容隔离 / 界定输出与操作验证高影响操作的人工审批监控与红队测试
风险
- 敏感上下文或凭据的数据外泄。
- 在连接的系统中执行未授权的工具操作。
- 绕过安全策略和护栏。
- 通过文档、网页或工具结果进行的间接攻击。
工具与技术
输入/输出护栏库权限与沙箱层工具操作白名单监控 / 可观测性红队测试框架
示例
- 智能体读取的网页包含隐藏文本,指示其通过电子邮件发送私密数据。
- 一份文档指示摘要生成器忽略其规则并输出恶意链接。
- 工具结果试图让智能体调用另一个它不应该调用的工具。
常见问题解答
- 为什么模型不能直接忽略注入的指令?
- 因为它们无法可靠地将可信指令与不可信内容区分开来——两者都以文本形式呈现。这种模糊性是核心漏洞所在。
- 什么是间接提示词注入?
- 指恶意指令隐藏在模型检索的外部内容(如网页、文件、电子邮件或工具输出)中,而不是由用户直接输入。这通常更具危险性。
- 提示词注入可以被完全防止吗?
- 目前无法通过单一措施完全防止。您可以通过分层防御来降低风险:最小权限、内容隔离、验证、监控以及对敏感操作的人工审批。
- 工具的使用如何提高了风险?
- 在没有工具的情况下,注入大多只会产生不良文本。而有了工具,注入的指令可以执行真实的物理操作——发送数据、进行修改——因此权限和审批变得更加重要。