提示注入实测:单次 17.8%,连续 200 次后 78.6%
提示注入实测:单次 17.8%,连续 200 次后 78.6%

关于提示注入,有一个流传很广的说法是「现在的大模型已经能防住绝大多数提示注入了」。这句话的问题在于:它没有说明「几次尝试之内」和「多少成功率」这两个限定条件。

2026 年一批公开的实测数据把这个模糊命题变成了可以计算的数字。Anthropic 在 Claude Opus 4.6 的系统卡里披露:单次提示注入的成功率是 17.8%,但在 200 次尝试之后,累计成功率上升到 78.6%。也就是说,只要攻击者愿意重复,平均不到三次就能成功一次。

而这还不是最坏的一组数字。第三方基准测试 Agent Security Bench 在覆盖 16 类攻击、11 种防御、13 个模型的测试中,记录到的最高平均攻击成功率是 84.3%。

这篇文章把这些数字放在一起,还原提示注入在 2026 年的真实工程含义——不是「能不能防住」的二元问题,而是「重复多少次、攻击者有没有反馈信号、你的系统有没有不可逆动作」这三个变量共同决定的概率问题。

一、17.8% 到 78.6%:模型代际之间的量化对照

Anthropic 在系统卡里给出了两代模型在同样测试条件下的对比数据,这组对照比任何单点数字都有价值。

模型单次尝试成功率重复尝试后的累计成功率
Claude Opus 4.54.7%10 次 33.6%;100 次 63.0%
Claude Opus 4.617.8%200 次 78.6%

这组数据里有一个必须被指出的细节:Opus 4.6 的单次成功率 17.8% 反而高于 Opus 4.5 的 4.7%。也就是说,更新的模型在单次尝试上表现更差。这不是数据错误,而是提示注入研究中的一个已知现象——模型能力越强、越善于理解复杂语境,就越容易被语义更精巧的注入绕过;更低的单次成功率有时来自更严格的拒答训练,而更强的推理能力同时给了攻击者更多可利用的语义空间。

换句话说,「换更强的模型来防提示注入」这个直觉,在数据上不成立。真正的变量是重复次数。

把累计成功率换算成期望尝试次数,可以看到更有实感的数字:

模型单次期望尝试次数达到 50% 累计成功率所需尝试
Opus 4.5(单次 4.7%)约 21 次约 15 次
Opus 4.6(单次 17.8%)约 6 次约 4 次

结论很直接:只要攻击者能自动重试,提示注入就不是一道需要「挡住」的墙,而是一个只需要「重试足够多次」的算术题。在 200 次量级的攻击预算下,两代模型的成功率都超过了 60%,模型代际的差异被重复次数完全抹平。

二、84.3%:基准测试给出的上限

如果说系统卡的数据来自模型厂商,Agent Security Bench 的数据来自第三方评测,两者可以互为参照。

维度覆盖范围
攻击类型16 类
防御措施11 种
受测模型13 个
最高平均攻击成功率(ASR)84.3%

84.3% 这个数字的分量在于它是「平均」值,而且是「最高平均」——也就是说,在 11 种防御措施全都启用的情况下,仍有某个配置的平均攻击成功率达到了这个水平。它不是「某个特别弱的模型被绕过了」,而是「11 种防御措施组合起来仍然不够」这个结论的量化表达。

需要说明这个数字的边界:ASR 的高低高度依赖攻击类型、目标系统权限和是否提供反馈信号。在没有反馈的盲攻场景下,成功率显著低于有反馈的场景;而在攻击者可以观察系统响应并迭代的场景下,成功率会大幅上升。所以 84.3% 更适合被理解为「在不利条件下可达成的水平」,而不是「任意系统上的日常表现」。

但即便如此,它也足以支撑一个工程判断:把提示注入的缓解责任全部压在模型的拒答能力上,在 2026 年已经不是一个可行的安全策略。

三、180 万次攻击:竞赛数据揭示的真实攻击强度

Agent Red Teaming 竞赛提供了一组视角完全不同的数据,它记录的不是成功率,而是攻击的绝对量级。

指标数值说明
提示注入攻击总次数约 180 万次自动化攻击的规模量级
成功触发违规次数超过 6 万次占总量约 3.3%
受测模型19 个前沿模型覆盖当时主流的 SOTA 水平

这组数据最值得注意的不是 6 万次成功,而是它对「模型能力与稳健性关系」的发现:模型规模、能力水平和推理算力投入,与抗注入稳健性之间的相关性有限。也就是说,把模型做得更大更贵,并不能线性地换来更低的注入成功率。这是一个对采购决策相当重要的结论——你不能用「我们用的是最强模型」来论证安全性。

同时,180 万次攻击这个数字把威胁模型彻底改写了。人工社工式的提示注入早就不是主要威胁,自动化批量尝试才是。一个攻击者可以用脚本在几小时内跑完几十万次尝试,成本极低,而且可以覆盖你的系统里所有的用户输入入口。任何把「单次成功率 4.7%」写进安全报告的结论,都必须同时写上「攻击者可以重复 200 次」这个前提,否则就是误导。

四、现有防御的一个明确盲区:记忆投毒

把上述数据放在一起看,会暴露出当前防御体系的一个结构性缺口——它几乎全部围绕「当次输入」设计。

防御对象覆盖情况问题
单次输入过滤较成熟只管这一次
系统提示保护较成熟只管当前上下文
输出校验中等下游可能不校验
跨会话记忆不覆盖污染一旦写入就持续生效

学术界的攻击研究(arXiv 编号 2606.04329)提出了一类专门针对 AI 系统长期记忆的攻击:攻击者不必在单次对话里完成劫持,只需让被污染的内容进入系统的持久记忆,此后每一次对话都会读到它。而该论文的核心结论是:现有针对提示注入的防御机制无法覆盖记忆投毒攻击。

这条结论的分量在于它指出了一个结构性问题,而不是一个强度问题。所有主流注入防御都在「这次输入进来之前」和「这次输出出去之前」设卡,而记忆投毒的攻击点在两次之间——它污染的是被系统默认为「自己写的」的内容。一旦写入,现有防御机制在设计上就看不见它,因为从系统的角度看,那段内容是自己之前的对话记录。信任边界在这里被彻底绕过。

工程上的应对方向也随之明确:记忆必须按来源分层,并且可审计、可回滚。用户输入产生的记忆、工具返回产生的记忆、系统预置的记忆,在存储时就要分开标记,读取时可以分别追溯,删除时可以分别清除。「记忆」不是模型的一部分,它是数据,必须按数据的方式管理。

五、真实案例:提示注入如何变成供应链事件

抽象数字之外,2025 年披露的 CVE-2025-53773 给出了一个具体的、已落地的案例。它涉及 GitHub Copilot 与 VS Code 的组合,漏洞类型是命令注入,NVD 给出的 CVSS 评分为 7.8,部分厂商标记为 9.6。

这个案例的关键不在漏洞本身的技术细节,而在攻击路径的性质:

环节传统攻击提示注入攻击
入口需要用户执行可疑文件只需读一段被污染的文本
载荷恶意代码一段看起来像用户指令的自然语言
执行用户在终端敲命令AI 助手自己写入配置文件并建议执行
后果恶意软件运行开发者工作区配置被改为放行一切

这个案例的精妙之处在于它几乎不含恶意特征。攻击者没有提供恶意文件,没有可疑链接,没有异常二进制。它提供的只是「一个看起来是开发者会说的话」的文本——比如建议开启某项设置以解决某个问题。而 AI 助手在合理地执行「帮用户配置开发环境」这个请求时,把工作区配置改成了高权限模式。事后看,每一步单独看都像正常操作。

这也解释了 CrowdStrike 2026 全球威胁报告里那条 82% 的入侵不涉及传统恶意代码的统计。它们长这样:没有载荷,只有指令;没有攻击代码,只有一次「听话」。

六、五个可落地的工程动作

综合上面所有数据,以下五条是按「不依赖模型变强」这个前提设计的——既然模型能力和稳健性相关性有限,防御就必须建在架构上。

第一,假设攻击者会重试,并且他们会重试很多次。安全设计的基线应该是 200 次尝试下的 78.6%,不是单次的 17.8%。落到具体做法:任何单一的过滤规则都不能作为唯一防线,需要多层独立机制叠加,因为攻击者只要突破一层就可以开始自动化重试。

第二,把不可逆动作从模型的权限里拿走。既然注入的成功率不可忽略,那么唯一可靠的防线是让被注入的模型没有能力造成不可逆后果。具体分级:读操作可以给、写操作要审批、不可逆操作(删除、支付、对外发布、权限变更)必须由人在回路里确认。这条与 OWASP 2026 版把过度代理权排到第 3 是同一件事的两面。

第三,记忆按来源分层并支持回滚。这是记忆投毒的直接对策。用户输入、工具返回、系统预置三者必须分开存储和标记,读取时保留来源信息,并且提供「查看某条记忆何时由谁写入」的能力。做不到这一点,就等于在系统里留了一个无法审计的持久后门。

第四,多模态输入一律按不可信处理。图片、音频、文档里的内容都可能携带指令。实践上最有效的做法是对图像做 OCR 后再送入文本防线,而不是让模型直接看图——这样能让现有的文本过滤规则真正生效,因为多模态载荷的风险不在模型看不看得懂,而在过滤器读不到。

第五,把「可检测性」当成一项独立指标来建设。既然 82% 的入侵不含恶意代码,传统的文件哈希和特征库检测基本失效。真正有效的是行为基线:哪个账号在什么时间调用了哪个工具、哪些 Agent 触碰了哪些数据、哪些写操作绕过了正常审批。这类检测不需要知道攻击手法是什么,只需要知道正常行为长什么样——这在攻击手法快速变化时优势明显。

七、结语

把 2026 年的这批提示注入数据放在一起,结论是清晰且不太舒服的:

单次成功率可以被优化(4.7% 到 17.8% 的波动说明它甚至可能反向),但在 200 次重试面前,两代模型的成功率都超过了 60%;在 11 种防御措施全部启用的基准测试里,最高平均攻击成功率仍达 84.3%;在 180 万次自动化攻击的竞赛中,超过 6 万次成功触发了违规;模型规模与稳健性的相关性被证明是有限的。

这些数字合起来否掉了一个很流行的方案:「等模型变强,提示注入问题自然会解决」。数据不支持这个推论。

但它们同时也指出了唯一走得通的方向:把安全责任从模型层转移到架构层。权限分级、不可逆动作人工确认、记忆来源分层可回滚、多模态输入统一降级、行为基线检测——这五件事没有一件需要等下一代模型,也没有任何一件会因为模型变强而变得不必要。

而记忆投毒那个「现有防御无法覆盖」的结论,是这份清单里最需要立刻动手的一项。因为其他风险至少还有部分覆盖,而记忆一旦被污染,系统会主动、持续、忠诚地执行攻击者的指令,且从内部看完全正常。