[论文学习]Learning to Inject:基于强化学习的自动化提示注入攻击

Learning to Inject: Automated Prompt Injection via Reinforcement Learning (AutoInject)

论文重点

AutoInject 提出了首个基于强化学习(RL)的自动化提示注入攻击框架,通过将稀疏的二元成功信号转化为稠密的可学习奖励,解决了传统优化方法在提示注入场景中"无梯度可循"的困境。在 AgentDojo 基准上,该方法在 GPT、Gemini、Claude 等主流生产级模型上均取得了统计显着的攻击成功率提升(p<0.05),甚至能够攻破专门针对提示注入进行安全微调的 Meta-SecAlign-70B 模型。

核心研究内容

问题定义

提示注入(Prompt Injection)是 LLM Agent 面临的关键安全漏洞------攻击者将恶意指令嵌入外部内容(如邮件正文、网页文档)中,劫持 Agent 行为以实现数据窃取、未授权操作等目的。

然而,现有的最强攻击方法仍高度依赖人工红队测试和手工构造的提示词。直接将自动化越狱优化器(如 GCG)迁移到提示注入场景效果有限,原因在于两者优化目标的本质差异:

  • 越狱攻击 优化的是模型生成"肯定性前缀"(如 "Sure, I can help with that")的 log-probability,目标是通用合规
  • 提示注入 要求模型精确发出特定工具调用 且参数完全正确(如 send_email(to="attacker@evil.com")),目标是精确执行

更高的合规概率并不等于正确的工具调用,因此基于合规性的奖励信号对提示注入目标而言只是弱近似。更棘手的是:提示注入的成功信号是二元的(0/1),而随机采样的后缀几乎永远不会触发成功,导致标准优化器"无梯度可循"------这构成了 AutoInject 要解决的核心技术难题。

创新方法

AutoInject 的核心创新在于通过基于比较的学习反馈将二元稀疏信号转化为稠密可学习奖励

具体而言,系统维护一个"参考后缀" x ∗ x^* x∗------即训练过程中观察到的最优后缀。对于每个新生成的后缀 x x x,系统通过一个学习到的比较模型对其进行评分,判断其相对于参考后缀的优劣。即使两个后缀都未能成功注入( r s e c = 0 r_{sec}=0 rsec=0),比较模型仍能识别出"哪个更接近成功",从而为 RL 优化提供持续的梯度信号。

复合奖励函数融合了三重信号:

R ( r s e c , r u t i l , r p r e f ) = α ⋅ r s e c + β ⋅ r u t i l + γ ⋅ r p r e f R(r_{sec}, r_{util}, r_{pref}) = \alpha \cdot r_{sec} + \beta \cdot r_{util} + \gamma \cdot r_{pref} R(rsec,rutil,rpref)=α⋅rsec+β⋅rutil+γ⋅rpref

其中 r s e c r_{sec} rsec 为攻击成功信号, r u t i l r_{util} rutil 为任务完成度(可用时), r p r e f r_{pref} rpref 为比较反馈的稠密信号。

在策略优化层面,AutoInject 采用 Group Relative Policy Optimization(GRPO) ,通过组内相对优势估计来避免学习额外的价值函数,即使在所有奖励都较低时仍能提供有意义的梯度信号:

A ^ i = R i − mean ( { R j } j = 1 K ) std ( { R j } j = 1 K ) \hat{A}i = \frac{R_i - \text{mean}(\{R_j\}^K{j=1})}{\text{std}(\{R_j\}^K_{j=1})} A^i=std({Rj}j=1K)Ri−mean({Rj}j=1K)

该框架支持两种攻击模式:

  1. 在线查询攻击:在查询预算内实时优化后缀;
  2. 离线可迁移后缀:在代理模型和任务上训练后直接部署,部署时无需访问目标系统的效用反馈。

研究成果

AutoInject 在 AgentDojo 基准上取得了以下核心成果:

主实验结果(Table 1)

模型 最优模板 ASR AutoInject ASR AutoInject 效用
Gemini-2.5-flash 23.60% 58.00% 41.77%
GPT-4.1-nano 20.48% 47.97% 60.38%
GPT-5-nano 1.60% 11.49% 90.20%
Claude-Sonnet-3.5† 5.69% 12.59% 98.52%

值得注意的是,AutoInject 在 GPT-5-nano 和 Claude-Sonnet-3.5 上攻击成功时的效用甚至超过了无攻击时的基准效用------这反映了 RL 优化的独特优势:由于效用被纳入奖励函数,策略被训练为生成既能保证攻击成功又能最大化任务完成度的后缀。

与其他优化方法的对比(Table 2)

方法 Qwen3-4B ASR Gemma3-4B ASR
Direct Instruction 11.20% 6.70%
GCG 23.00% 20.20%
TAP 36.60% ---
Adaptive Attack 30.00% 26.25%
Evolutionary Search 40.00% 35.00%
AutoInject 42.50% 35.00%

对抗模型级防御(Table 3) :Meta-SecAlign-70B 是首个专门针对提示注入进行模型级防御的开源 LLM,能够将所有模板攻击的 ASR 降至接近 0%。然而 AutoInject 在该模型上仍实现了 21.88% 的 ASR,同时保持了与无攻击相当的效用。

迁移性实验 :在固定注入迁移场景下,AutoInject 在 GPT-4o-mini 上达到 45.0% ASR,显着优于专为迁移攻击设计的 RL-Hammer(22.9%)。跨任务迁移中,AutoInject 在五个目标模型中的四个上显着优于 RL-Hammer。尤其值得关注的是,AutoInject 仅使用 5 个源任务260 次查询/后缀 ,就击败了使用 114 个源任务3,900 次查询的 RL-Hammer。

所有改进均在 McNemar 检验或 Mann-Whitney U 检验下达到 p < 0.05 的统计显着性。

实际落地应用的可能性

AutoInject 的学术价值在于首次为提示注入攻击建立了自动化的、可量化的基线。但在实际落地层面,需要审慎看待:

  • 安全评估场景:可作为 LLM Agent 安全评估管道的自动化红队工具,帮助厂商在部署前发现模型的安全边界;
  • 持续对抗测试:可集成到 CI/CD 流程中,对每次模型更新进行自动化安全回归测试;
  • 防御研究:AutoInject 揭示的"偏好式防御与自适应优化攻击者之间的差距",为设计更强健的防御机制提供了研究靶点。

需要强调的是,该技术的攻击属性 决定了其应用必须严格限定在授权的安全评估和白帽研究场景中。

技术细节

问题形式化

AutoInject 将提示注入攻击生成形式化为马尔可夫决策过程(MDP) 。给定注入目标 g g g 和用户任务上下文 c c c,策略 π θ \pi_\theta πθ(参数化为语言模型)生成对抗性后缀 x x x。目标是最大化期望奖励:

max ⁡ θ E x ∼ π θ ( ⋅ ∣ g , c ) R ( r s e c , r u t i l ) \max_\theta \mathbb{E}{x \sim \pi\theta(\cdot|g,c)} \left R(r_{sec}, r_{util}) \\right θmaxEx∼πθ(⋅∣g,c)R(rsec,rutil)

其中奖励仅在 episode 结束时返回,是典型的稀疏奖励问题。

比较式反馈模型

奖励稀疏性是 AutoInject 要突破的核心瓶颈。即使二元成功信号定义明确,大多数随机采样的后缀都会失败( r s e c = 0 r_{sec}=0 rsec=0),导致同一组内的所有 rollout 获得相同奖励,许多算法的相对优势估计器因此崩溃。

AutoInject 的解决方案是引入一个学习到的比较式反馈模型 F F F。该模型对候选后缀相对于当前最优参考后缀 x ∗ x^* x∗ 进行评分,产生稠密的偏好信号 r p r e f r_{pref} rpref:

r p r e f = F ( x , x ∗ ) r_{pref} = F(x, x^*) rpref=F(x,x∗)

参考后缀 x ∗ x^* x∗ 在训练过程中动态更新------每当发现更高复合奖励的后缀时即进行替换。

GRPO 策略优化

AutoInject 使用 Qwen2.5-1.5B 作为策略模型 π θ \pi_\theta πθ,GPT-4o-mini 作为反馈模型。每个(用户任务,注入目标)对的查询预算为 B = 260 次评估

GRPO 的核心优势在于无需学习价值函数,而是通过组内相对优势计算来估计优势。策略更新采用裁剪代理目标:

L ( θ ) = E i min ⁡ ( π θ ( x i ∣ g , c ) π θ o l d ( x i ∣ g , c ) A \^ i , clip ( ⋅ , 1 − ϵ , 1 + ϵ ) A \^ i ) − β ⋅ D K L ( π θ ∥ π r e f ) L(\theta) = \mathbb{E}i \left \\min\\left( \\frac{\\pi_\\theta(x_i\|g,c)}{\\pi_{\\theta_{old}}(x_i\|g,c)} \\hat{A}_i, \\text{clip}(\\cdot, 1-\\epsilon, 1+\\epsilon) \\hat{A}_i \\right) \\right - \beta \cdot D{KL}(\pi_\theta \| \pi_{ref}) L(θ)=Eimin(πθold(xi∣g,c)πθ(xi∣g,c)A\^i,clip(⋅,1−ϵ,1+ϵ)A\^i)−β⋅DKL(πθ∥πref)

其中裁剪操作防止策略更新过大,KL 散度正则化则稳定训练过程。

算法流程

AutoInject 的完整训练流程如 Algorithm 1 所示:

  1. 从预训练 LM 初始化策略 π θ \pi_\theta πθ, x ∗ ← ∅ x^* \leftarrow \emptyset x∗←∅, q u e r i e s ← 0 queries \leftarrow 0 queries←0;
  2. 当 q u e r i e s < B queries < B queries<B 时循环:
    a. 从 π θ ( ⋅ ∣ g , c ) \pi_\theta(\cdot|g,c) πθ(⋅∣g,c) 采样 K 个后缀 { x 1 , . . . , x K } \{x_1, ..., x_K\} {x1,...,xK};
    b. 对每个后缀查询受害 Agent 管道,获取 r s e c r_{sec} rsec 和 r u t i l r_{util} rutil;
    c. 通过比较式反馈模型计算 r p r e f r_{pref} rpref;
    d. 计算复合奖励 R i R_i Ri 和组内相对优势 A ^ i \hat{A}i A^i;
    e. 通过 GRPO 更新策略 π θ \pi
    \theta πθ;
    f. 若发现更优后缀则更新 x ∗ x^* x∗;
  3. 返回训练后的策略 π θ \pi_\theta πθ 和最优后缀 x ∗ x^* x∗。

研究设定

基准测试环境

  • Benchmark :AgentDojo,包含 97 个用户任务,涵盖银行、旅行、工作空间和 Slack 四个领域。每个用户任务配对多个注入任务,对抗内容嵌入在环境(如邮件正文)中。AgentDojo 提供程序化的真实评估函数,可自动验证任务完成和注入成功。

模型配置

组件 配置
策略模型 Qwen2.5-1.5B
反馈模型 GPT-4o-mini
优化算法 GRPO
查询预算 260 次评估/(用户任务, 注入目标)
目标模型 Gemini-2.5-flash, GPT-4.1-nano, GPT-5-nano, Claude-Sonnet-3.5, GPT-4o-mini, Gemini-2.0-flash 等

对比基线

AutoInject 与两类攻击方法进行了对比:

  • 模板攻击:Direct Instruction、Ignore Previous、Important Instructions、InjecAgent、System Message、Tool Knowledge;
  • 优化攻击:GCG(白盒梯度方法)、TAP(黑盒树搜索)、Random Adaptive Attack、RL-Hammer(迁移 RL 攻击策略)、Evolutionary Search(LLM 驱动的进化搜索)。

评估指标

采用 AgentDojo 的三个标准指标:

  • Benign Utility:无攻击时的任务完成率;
  • Utility Under Attack:存在对抗后缀时的任务完成率;
  • Attack Success Rate (ASR):注入目标被成功执行的试验比例。

理想攻击应在保持高 ASR 的同时维持接近 Benign Utility 的效用水平。

综合分析

为什么现有越狱优化器无法直接用于提示注入?

这是理解 AutoInject 贡献的关键切入点。越狱攻击(如 GCG)优化的目标是让模型生成"肯定性前缀"------这是一个连续性 的代理目标,可以通过 log-probability 进行梯度优化。而提示注入要求的是精确的工具调用------模型必须输出完全正确的函数名和参数格式。更高的"合规概率"并不等于"正确的工具调用"。这种优化目标的本质不匹配,解释了为什么直接将 GCG 等越狱方法迁移到提示注入场景效果有限。

奖励工程:从稀疏到稠密的转化艺术

AutoInject 最精妙的设计在于奖励工程。在提示注入场景中,随机采样的后缀几乎永远不会触发成功------这意味着在 RL 训练的早期阶段,策略几乎收不到任何正向信号。AutoInject 通过比较式反馈绕过了这一困境:即使两个后缀都失败了,比较模型仍能判断"哪一个更好"。这种设计让 RL 算法在"漫长的零奖励区间"中仍能持续进步。

效用优先:攻击与功能的平衡

一个值得注意的发现是:AutoInject 在某些模型上的攻击成功时的效用甚至超过了无攻击时的基准效用。这并非偶然------因为效用被显式地纳入了奖励函数。相比之下,模板攻击往往因"暴力"干扰 Agent 行为而导致效用大幅下降。AutoInject 的策略被训练为"在维持正常功能的同时完成注入",这种精细化的攻击方式在真实场景中更具威胁性------也更具研究价值。

迁移性的启示:少即是多

AutoInject 在迁移实验中仅使用 5 个源任务和 260 次查询,就击败了使用 114 个源任务和 3,900 次查询的 RL-Hammer。这一反直觉的结果表明:AutoInject 发现的对抗模式可能捕获了生产级模型中共享的结构性漏洞,而非简单地过拟合特定任务。论文还观察到一个有趣的"allelujah"token 模式,在 Gemini-2.5-flash 上可成功攻击多达 70 个(用户任务,注入任务)对------这暗示某些特定的 token 序列具有跨模型、跨任务的通用对抗效果。

对防御研究的启示

AutoInject 成功攻破 Meta-SecAlign-70B 的事实具有重要警示意义。SecAlign 这类偏好优化方法通过在训练中随机化注入位置和使用自生成响应目标来提升泛化能力,在标准基准上报告了显着的防御效果。然而,AutoInject 的 RL 基础攻击属于训练分布之外的 attack 模式------这揭示了当前偏好式防御的一个根本局限:它们能够识别和抵抗已知的攻击模式,但面对自适应优化攻击者时防御边界会被突破。论文指出这"暴露了偏好式防御与自适应优化攻击者之间的差距"------这一发现为未来防御研究指明了方向:需要将静态防御与自适应红队测试相结合。

实践应用

对 LLM 服务提供商的安全建议

  1. 将 AutoInject 纳入红队工具链:在模型上线前,使用 AutoInject 类方法对模型进行自动化压力测试,识别偏好式防御的盲区。

  2. 关注效用保持型攻击:传统安全测试往往只关注攻击成功率,但 AutoInject 展示了"高 ASR + 高效用"的攻击模式。安全评估应同时监控攻击成功时的任务完成率。

  3. 防御的适应性升级 :静态的偏好优化防御不足以应对自适应优化攻击者。建议采用动态防御策略------定期使用 AutoInject 类工具重新评估和更新防御边界。

对安全研究者的建议

  1. 将 AutoInject 作为基线:论文明确指出其"为提示注入建立了自动化基线"。未来的提示注入防御研究应将 AutoInject 纳入评估基准,检验防御方案在面对自适应优化攻击时的鲁棒性。

  2. 探索比较式反馈的其他应用:AutoInject 的核心思想------用比较式反馈将稀疏奖励稠密化------不仅限于提示注入。任何"成功信号二元、随机采样几乎不会成功"的离散优化问题都可能受益于此思路。

  3. 关注迁移性的深层机制:AutoInject 用极少数据实现高效迁移的现象值得深入挖掘。理解这些跨模型、跨任务的通用对抗模式,可能有助于揭示 LLM 安全边界的结构性弱点。

参考资料

相关推荐
zbtlink16 小时前
给自动售货机配的那台WiFi6路由器,它用上了吗
网络·智能路由器
迁移科技16 小时前
周转箱拆垛码垛自动化实战:3D视觉实现 ±2mm 毫米级稳定作业
3d·自动化·视觉检测
实验如有神祝女士16 小时前
不同参数规模大模型在医学翻译场景的适配差异
论文阅读·人工智能·深度学习·学习·算法·语言模型·论文笔记
三言老师16 小时前
clear与history历史命令管理实操
linux·运维·服务器·网络·centos
上海云盾-小余17 小时前
CC 高频请求 + DDoS 流量攻击实战防御:全链路 WAF 流量清洗部署完整流程
网络·爬虫·安全·小程序·ddos
w678200717 小时前
,攻击者通过构造特殊的XML使其包含恶意外部实体。外部实体可以为服务器敏感文件,也可以为网络请求等,之后利用方式类似于文件包含和SS ...
xml·服务器·网络
weixin_4038101318 小时前
02-iOS免越狱无线投屏-投屏鼠标操作输入以及主控同步
自动化·新媒体运营·跨境电商·ios投屏·ios脚本·营销获客
若衹如初見19 小时前
一步一步学习使用LiveBindings() LiveBindings图像绑定与自定义绑定方法()
学习·命令模式
kdxiaojie19 小时前
Linux 驱动研究 —— V4L2 (15)
linux·运维·笔记·学习
HiDev_20 小时前
【非标自动化】2、认识元器件(激光位移传感器)
运维·自动化