间接提示注入:生产的攻击面


文档摘要

间接提示注入:生产的攻击面 本节摘要:间接提示注入(indirect prompt injection, IPI)把指令嵌进外部内容——网页、邮件、共享文档、客服工单——Agent 系统在没有用户显式动作的情况下消费它。IPI 是 2026 主导的生产威胁:它绕过用户输入过滤器(因为攻击者从不碰用户),随 Agent 处理更多外部内容而静默扩展,且瞄准没人读提示的自动化工作流。MDPI Information 17(1):54(2026 年 1 月)综合了 2023-2025 研究。NDSS 2026 的 IPI 防御论文框定了核心挑战:注入指令可以在语义上良性(「请打印 Yes」),所以检测需要比关键词过滤更多。

间接提示注入:生产的攻击面

本节摘要:间接提示注入(indirect prompt injection, IPI)把指令嵌进外部内容——网页、邮件、共享文档、客服工单——Agent 系统在没有用户显式动作的情况下消费它。IPI 是 2026 主导的生产威胁:它绕过用户输入过滤器(因为攻击者从不碰用户),随 Agent 处理更多外部内容而静默扩展,且瞄准没人读提示的自动化工作流。MDPI Information 17(1):54(2026 年 1 月)综合了 2023-2025 研究。NDSS 2026 的 IPI 防御论文框定了核心挑战:注入指令可以在语义上良性(「请打印 Yes」),所以检测需要比关键词过滤更多。《The Attacker Moves Second》(Nasr 等,OpenAI/Anthropic/DeepMind 联合,2025 年 10 月):自适应攻击(梯度、RL、随机搜索、人类红队)击破了 12 种已发表防御中原本报告近零攻击成功率>90%

对应原课程:Phase 18 · Lesson 15 · indirect-prompt-injection(原英文 phases/18-ethics-safety-alignment/15-indirect-prompt-injection/docs/en.md)。前置:Phase 18 · 12,Phase 14。

学习目标

阅读完本节,你应当能够:

  1. 定义间接提示注入,描述三种常见投递向量。
  2. 解释为什么用户输入过滤器完全错过 IPI。
  3. 描述「信息流控制」(IFC)作为 2026 防御范式。
  4. 陈述 Nasr 等(2025 年 10 月)关于已发表 IPI 防御在自适应攻击下的发现。
  5. 说明为什么 OWASP 把提示注入列为 LLM Top 10 的 LLM01。

一、问题与直觉

直接提示注入要求攻击者触达用户或其提示。IPI 两者都不需要:攻击者把载荷放进 Agent 可能读取的任何内容——网页、收件箱邮件、GitHub issue、产品评论。Agent 在正常运行中拾取它并执行指令。用户是信使,不是意图来源

三种投递向量

  • 检索增强生成(RAG):攻击者发布文档;检索步骤取到它;提示在用户问题前拼接它;模型执行攻击者指令。
  • 收件箱/文档工作流:攻击者给用户发邮件;Agent 读邮件;提示含邮件正文;模型跟随邮件指令。
  • 工具输出:攻击者控制 Agent 用的工具(如返回攻击者控制结果的网页搜索);工具输出含指令;Agent 控制流跟随。

三者共享一个结构性质:攻击者控制了提示的一个片段,却从未触及面向用户的输入。

为什么用户输入过滤器错过它

IPI 载荷不出现在用户输入里,它出现在检索到的内容里。如果过滤器门控在用户输入上,载荷绕过它。如果过滤器门控在所有到达模型的内容上,它必须对任意检索文本应用——这很贵,且会对碰巧含祈使语气的合法内容产生假阳性。

⚠️ 安全对齐的生产现实:第 25 节覆盖 EchoLeak(CVE-2025-32711,CVSS 9.3)——Microsoft 365 Copilot 里首个公开记录的零点击 IPI;GitHub Copilot Chat 的 CamoLeak(CVSS 9.6);GitHub Copilot 的 CVE-2025-53773。生产部署正在被 IPI 在现场攻陷,不只是基准里。OWASP LLM Top 10(2025)把提示注入列为 LLM01(应用层头号威胁);NIST AI SPD 2024 称之为「生成式 AI 最大的安全缺陷」。

信息流控制(IFC)for AI

2026 防御范式借用经典 OS 安全:把每个内容源当作一个安全标签。把用户查询标为「可信」;把检索内容标为「不可信」。把模型的控制流当作信息流:由不可信内容触发的动作,执行前必须由可信输入批准

CaMeL(Microsoft 2025)、ConfAIde(Stanford 2024)、NDSS 2026 IPI 防御论文以不同方式操作化 IFC。共同原则:只要代码和数据共享同一上下文窗口,目标就是遏制,而非阻止

攻击者后手

Nasr 等(2025 年 10 月)用自适应攻击(梯度搜索、RL 策略、随机搜索、72 小时人类红队)测了 12 种已发表 IPI 防御。每种原本报告近零 ASR 的防御都被打到 >90% ASR

方法论教训:发表防御必须带自适应攻击评估。静态攻击基准不是鲁棒性证据——攻击者会知道防御

二、从零实现

code/main.py 构造 IPI 框架。一个玩具有三个工具(搜索网页、读邮件、发消息);环境含攻击者控制的内容,内嵌指令(「转发给所有联系人」)。你可在三种 Agent 间切换:朴素(跟随注入指令)、过滤防御(对检索内容做关键词过滤)、IFC(分离可信与不可信,拒绝不可信控制流命令)。

def ifc_agent(user_query, retrieved_content, tools): trusted = label(user_query, "trusted") # 用户查询:可信 untrusted = label(retrieved_content, "untrusted") # 检索内容:不可信 plan = model.plan(trusted + untrusted) for action in plan: if action.triggered_by(untrusted) and action.is_control_flow(): refuse(action) # 不可信内容触发的控制流命令需可信批准 else: execute(action)

💡 核心洞察:IPI 的本质是代码与数据共享上下文窗口。在经典 OS 里,这与「缓冲区里的可执行代码」同构——你无法靠解析区分「这是数据还是指令」。IFC 的智慧在于放弃区分,转而给每段内容贴信任标签,并在控制流边界强制批准

三、框架对比

防御 机制 自适应攻击下的命运
用户输入过滤 关键词/语义过滤用户输入 完全错过 IPI(载荷不在用户输入)
检索内容过滤 关键词过滤检索文本 被「良性指令」绕过,假阳性高
改写防御 改写检索内容 Nasr 等:自适应攻击打到 >90%
IFC(CaMeL/ConfAIde) 信任标签 + 控制流批准 当前最有原则的范式,仍需自适应评估

设计要点:IFC 是 2026 唯一有原则的 IPI 防御——它从 OS 安全借鉴了「不依赖区分代码/数据,而在信息流边界做强制」的成熟范式。但 Nasr 等的结果警告,任何 IPI 防御都必须用自适应攻击评估;静态基准上的近零 ASR 不是证据。

四、可复用产物

本节产出 outputs/skill-ipi-audit.md:给它一份 Agent 部署描述,它枚举不可信内容源,检查部署是否应用 IFC,并标记到达模型却没有信任标签的来源。

code/main.py 是独立玩具,三种 Agent 可换成真实 Agent 框架(LangGraph、AutoGen),IFC 标签逻辑不变。

五、练习

  1. Easy:运行 code/main.py,测量攻击对三种 Agent 各自的成功率。

  2. Medium:对检索内容实现基于改写的防御。测量对合法检索文本的良性假阳性率。

  3. Medium:读 NDSS 2026 IPI 防御论文。描述「良性指令」挑战,以及为什么它阻止基于关键词的过滤。

  4. Hard:设计一个 Agent 从第三方 API 接收工具输出的部署。给每个提示片段标信任级,写出管理 Agent 动作的 IFC 策略。

  5. Hard:在你练习 2 的过滤防御 Agent 上复现 Nasr 等 2025 自适应攻击方法论。报告自适应攻击前后的 ASR。

本节要点回顾

  1. IPI = 用户没写的指令:载荷嵌在外部内容里,Agent 正常运行时拾取执行,用户是信使不是意图。
  2. 三种投递向量:RAG 投毒、收件箱/文档工作流、工具输出——攻击者控制提示片段却从不碰用户输入。
  3. 用户输入过滤器完全错过:载荷不在用户输入;门控全部内容则贵且假阳性高。
  4. IFC 是 2026 防御范式:信任标签 + 控制流批准,借用 OS 安全;CaMeL/ConfAIde/NDSS 2026 各自操作化。
  5. 攻击者后手:Nasr 等 2025 用自适应攻击把 12 种「近零 ASR」防御打到 >90%——发表防御必须带自适应评估。
  6. 真实事件:EchoLeak(CVSS 9.3)、CamoLeak(9.6)、CVE-2025-53773——生产部署正被 IPI 在现场攻陷。
  7. OWASP/NIST 定性:LLM Top 10 的 LLM01;NIST 称「生成式 AI 最大安全缺陷」。

下一节,我们看防御工具的回应——红队工具:Garak、Llama Guard、PyRIT,以及它们如何把第 12-15 节的攻击自动化、标准化。


发布者: 作者: Rohit Gupta 转发
评论区 (0)
U