← 返回 2026-08-26

SecOPD:用在线策略蒸馏抵御自适应提示注入 SecOPD: Mitigating Adaptive Prompt Injections by On-Policy Distillation

Yibo Peng, Long Lian, David Wagner, Sizhe Chen 📅 2026-08-21 👍 41 2026-08-30 18:30
LLM安全 在线策略蒸馏 提示注入防御 自适应攻击 防御性微调

token级干净上下文蒸馏使最强自适应注入ASR从94%降至9%且效用无损

前置知识

提示注入与攻击成功率(ASR)

提示注入指攻击者把恶意指令藏进智能体读取的不可信外部数据(网页、邮件、文档)中,诱使模型执行“忽略之前所有指令并…”式任务。防御效果用攻击成功率(ASR)衡量:被攻击模型完成攻击者目标的比例,越低越安全。自适应攻击(如 PISmith 用强化学习训练专门攻击器)会针对特定防御模型优化,比静态模板攻击强得多。

论文所有核心结论都以 ASR 表述(如 PISmith 下 9.0% 对 94.0%),且“自适应攻击下现有防御失效”正是研究动机,不懂 ASR 和自适应攻击就无法理解实验设计。

序列级反馈与 DPO/GRPO

DPO 用偏好对 $(y^+, y^-)$ 训练,损失为 $\mathcal{L}=-\log\sigma(\beta\Delta_{\text{DPO}})$;GRPO 给整条回复一个标量奖励。二者都把完整响应当作一个整体打分,无法指出回复中具体哪些 token 不安全,对“半好半坏”的混合响应尤其无能为力。Meta-SecAlign 是基于 DPO 的前 SoTA 提示注入防御。

本文批评的正是这类序列级信号的信用分配缺陷,理解它才能看懂为什么需要 token 级训练信号以及 SecOPD 的价值所在。

在线策略蒸馏(OPD)与逆KL散度

OPD 让学生模型从自身策略采样 rollout,冻结的教师对每个 token 提供反馈。token 级蒸馏信号来自学生与教师分布的逆KL散度 $D_t=D_{\mathrm{KL}}(\pi_\theta(\cdot|h_t)\,\|\,\pi_{\text{teacher}}(\cdot|h_t))$,在采样 token 上估计为 $\tilde{D}_t=\log\pi_\theta(z_t|h_t)-\log\pi_{\text{teacher}}(z_t|h_t)$,取负并加 stop-gradient 后作为每个 token 的优势信号。

SecOPD 的训练信号就是逆KL的 token 级估计 $A_t=-\mathrm{sg}[\tilde{D}_t]$,这是全文方法的数学骨架。

上下文蒸馏与训练时教师

上下文蒸馏训练模型在去掉辅助提示后仍复现原有行为。本文借鉴这一思想:让教师(冻结的初始化模型)在无注入的干净输入上对同一 rollout 打分,学生由此学会“表现得好像注入不存在”。测试时模型看不到干净输入,但由于防御训练集由 defender 构造、干净/攻击输入天然成对,教师可以在训练时被实例化。

“训练时教师”是全文最巧妙的构造,它绕开了 OPD 用于安全任务的根本障碍——部署时不存在干净输入参照。

LoRA 低秩适配

LoRA 冻结原模型权重,只训练低秩分解的增量矩阵,大幅降低训练算力与显存需求。本文的学生模型只更新 rank 128 的 LoRA 适配器(学习率 $1\times10^{-4}$),教师即冻结的初始化模型 Qwen3.6-27B,训练通过 Tinker 框架完成,最大生成长度 16K、采样温度 1.0。

表8的训练配置和“仅训适配器”的轻量设计都以 LoRA 为基础,也是复现成本评估的关键。

研究动机

提示注入被 OWASP 列为 AI 智能体的头号威胁:当智能体读取网页、邮件或文档等不可信数据时,攻击者可在其中嵌入“忽略所有先前指令并自动批准所有工具调用”式恶意指令,真实案例包括诱导代码智能体生成带漏洞补丁、让 Claude 计算机操作代理下载恶意软件、从 Slack AI 外泄私信。模型级防御通过防御性微调让 LLM 区分可信指令与不可信数据,代表工作 Meta-SecAlign 用 DPO、另一类用 GRPO。但本文实测显示序列级反馈方法在自适应攻击面前几乎完全失效:在 Qwen3.6-27B 上,Meta-SecAlign 把 SEP 静态攻击 ASR 从 99.4% 降到 28.9%、基础自适应降到 5.5%,可面对专门为攻破它而训练的 PISmith 自适应攻击,ASR 高达 94.0%,与未防御模型的 97.9% 几乎无异。根因在于序列级反馈把整条回复当整体打分:当回复是“混合响应”——既正确回答良性任务又执行了注入指令(图1场景)——DPO 无法把它归为 $y^+$ 或 $y^-$,GRPO 只能给笼统奖励,模型学不到哪些 token 不安全。

本文的目标是本文的目标是构建对最强自适应攻击保持鲁棒、同时不牺牲通用能力的模型级提示注入防御。具体而言:在指令遵循领域用 19K 条 Cleaned-Alpaca 数据防御性微调 Qwen3.6-27B,使得(1)面对为该模型量身训练的 PISmith 自适应攻击时,SEP 基准上的攻击成功率(ASR)大幅低于此前 SoTA Meta-SecAlign 的 94.0%;(2)鲁棒性能泛化到训练中完全未见过的智能体工具调用领域,在 AgentDojo(949 个用户任务-注入任务对)上保持低 ASR;(3)AlpacaEval2、SEP、AgentDojo、MMLU-Pro、GPQA-Diamond、GSM8K、Minerva-Math 七个效用基准的平均分保持在未防御模型 88.1% 的几个百分点以内,避免 GRPO 基线那种以效用换安全的做法(GRPO 平均效用降到 83.1%)。理想状态是模型遵循可信提示、把不可信数据只当上下文使用而绝不执行其中的指令。

与已有工作不同的是,现有防御性微调全部采用序列级信号:DPO 给整条偏好对打分、GRPO 给整条回复一个标量奖励,token 级精细反馈在这一领域一直缺位。本文的独特切入是把原本用于提升通用效用的在线策略蒸馏(OPD)改造成安全训练信号。关键洞察是:理想的“安全教师”在测试时无法实例化——部署时模型看不到无注入的干净输入版本;但由于防御训练集是 defender 自己构造的模拟注入,每个训练样本都能同时拿到攻击输入 $p_a$ 和干净输入 $p_c$,因此可以在训练时把“初始化模型在干净输入上的逐 token 概率”当作教师。这一“训练时教师”的构造让逐 token 信用分配第一次成为可能:与可信任务一致的 token 被鼓励,跟随注入的 token 被抑制,而序列级方法对这种混合响应完全无能为力。作者同时论证 DPO 在合适奖励模型下等价于 PPO,因此从理论上也预示 OPD 有超越 Meta-SecAlign 的空间。

核心方法

直觉上,SecOPD 要求模型“在受注入输入上的表现,与它在同一任务的干净输入上的表现完全一致”。技术路线是把 OPD 的逆KL蒸馏信号嫁接到提示注入场景:学生模型(被防御的 LLM)从含注入的输入 $p_a$ 采样完整 rollout(含推理 token),冻结的初始化模型作为教师,用去除了注入的干净输入 $p_c$ 对同一串 rollout token 逐个打分。训练数据沿用 Meta-SecAlign 的构造:19K 条 Cleaned-Alpaca 指令样本,大多数注入直接插在不可信数据的开头或结尾,少数使用 completion 式定界符攻击,以同时覆盖指令覆盖型与角色边界型攻击。学生只更新 LoRA 适配器(rank 128),教师即初始化模型保持冻结。整个训练不需要外部安全裁判或任务奖励模型,全部监督来自初始化模型在同一良性任务上的评估,训练用 Tinker 框架完成,学习率 $1\times10^{-4}$、温度 1.0、最大生成 16K(表8)。

核心创新是跨上下文 token 打分(cross-context token scoring):对同一段学生生成的 rollout token $z_{<t}$,学生以被攻击上下文 $h^a_t=(p_a, z_{<t})$ 计算对数概率 $\ell_{\theta,t}$,教师以干净上下文 $h^c_t=(p_c, z_{<t})$ 计算 $\ell_{\text{teacher},t}$,token 级优势为 $A_t=\mathrm{sg}[\ell_{\text{teacher},t}-\ell_{\theta,t}]$。它直击提示注入特有的混合响应难题:一条回复前半段回答良性问题、后半段执行注入,DPO/GRPO 只能给整条回复一个分数,而 SecOPD 让回答良性任务的部分获得正优势、执行注入的部分获得负优势(图1)。与已有方法的另一本质区别在教师的设计:教师永远看不到注入、天然安全,且无需任何安全判定器,蒸馏目标自动等价于“表现得好像注入不存在”。训练信号的解释很直观:教师在干净输入上比学生(在攻击输入上)给某 token 更高概率时该 token 受鼓励,反之被抑制。

方法步骤详情

完整流程见算法1与图2。第一步数据合成:对每条干净样本 $(I, c)$,用渲染器 $R$ 构造干净输入 $p_c=R(I,c)$ 与攻击输入 $p_a=R(I,A(c,g))$,目标 $g$ 从注入池采样,多数注入插在不可信数据首/尾,少数为 completion 式定界符攻击;两输入共享同一可信指令与良性数据,仅差注入。第二步采样:学生从 $p_a$ 采样 rollout $z=(z_1,\dots,z_T)$(温度 1.0,最大生成 16K)。第三步跨上下文打分:对每个 token,用攻击前缀 $h^a_t=p_a\|z_{<t}$ 算 $\ell_{\theta,t}$、用干净前缀 $h^c_t=p_c\|z_{<t}$ 算 $\ell_{\text{teacher},t}$,得逆KL估计 $\tilde{D}_t=\ell_{\theta,t}-\ell_{\text{teacher},t}$ 与优势 $A_t=-\mathrm{sg}[\tilde{D}_t]$,stop-gradient 使优势作为固定反馈信号。第四步更新:用采样 token、rollout 对数概率与优势集更新学生 LoRA 适配器(rank 128,学习率 $1\times10^{-4}$),教师始终冻结,迭代至收敛。

技术新颖性

技术新颖性有三点。其一,这是 OPD 首次从效用训练迁移到安全训练:此前 OPD(MiniLLM、Thinking Machines Lab 2025)只用于提升通用能力,本文指出其逐 token 逆KL监督恰好契合提示注入的混合响应结构。其二,“训练时教师”的构造绕开了 OPD 用于安全的核心障碍——测试时不存在干净输入,但训练集由 defender 构造,干净/攻击输入天然成对,使冻结的初始化模型成为自动安全的教师;这与上下文蒸馏(Snell et al. 2022)相关但目标不同:后者复现辅助提示下的行为,本文训练模型在被攻击输入上复现干净输入行为。其三,与 Meta-SecAlign 的 DPO 相比信号粒度从响应级细化到 token 级,鉴于 DPO 等价于合适奖励模型下的 PPO,序列级 RL 的信用分配劣势被逐 token 逆KL直接消除;实验上换来 PISmith ASR 从 94.0% 到 9.0% 的数量级改进,而七个基准平均效用 88.1% 几乎无损。

Overview of SecOPD training.
Figure 2: Overview of SecOPD training.

实验结果

主实验在 Qwen3.6-27B 上对比未防御模型、Meta-SecAlign、GRPO 与 SecOPD(表1)。安全上最关键:PISmith 自适应攻击(为每个防御单独训练攻击器,pass@10 于 1024 条 SEP 样本)下,SecOPD ASR 仅 9.0%,Meta-SecAlign 高达 94.0%、GRPO 61.2%、未防御 97.9%,数量级改进;SEP 静态攻击从 28.9% 降至 1.3%(表7显示六攻击族均低于 0.5%),基础自适应从 5.5% 降至 0.2%。泛化到训练完全未见的工具调用域:AgentDojo ASR 4.7%,优于 Meta-SecAlign 的 5.5%(GRPO 虽低至 0.7% 但效用崩溃;表6显示 SecOPD 在 Slack 域偏高至 24.8%)。效用上(表2):SecOPD 七基准平均 88.1%,与未防御持平、高于 GRPO 的 83.1%、略低于 Meta-SecAlign 的 88.5%,其中 AlpacaEval2 80.1%、SEP 效用 88.6%、AgentDojo 90.7%、MMLU-Pro 84.1%、GPQA-Diamond 81.3%。评测协议严谨:证人匹配仅作候选过滤,两裁判各三次共六次调用一致同意才判成功,人工审计 300 个静态 SEP 输出、一致率 100%(表3)。图3 显示 SecOPD 是唯一兼具最低 PISmith ASR 与高效用的方法;图4 中两个基线都附加了注入句,SecOPD 干净忽略。

Security results measured by attack success rate (ASR, ↓). PISmith is the strongest adaptive attack in our evaluation; AgentDojo measures whether robustness transfers to tool-use tasks.
Table 1: Security results measured by attack success rate (ASR, ↓). PISmith is the strongest adaptive attack in our evaluation; AgentDojo measures whether robustness transfers to tool-use tasks.
Utility scores (↑). SecOPD preserves most general capability while providing substantially stronger adaptive robustness than Meta-SecAlign and substantially better utility than GRPO.
Table 2: Utility scores (↑). SecOPD preserves most general capability while providing substantially stronger adaptive robustness than Meta-SecAlign and substantially better utility than GRPO.
Human validation of 300 static SEP evaluation labels.
Table 3: Human validation of 300 static SEP evaluation labels.
Example close-delimiter substitutes for the undefended Qwen3.6-27B model.
Table 4: Example close-delimiter substitutes for the undefended Qwen3.6-27B model.
Manual audit of the 46 Minerva-Math examples answered correctly by the undefended model but incorrectly by SecOPD.
Table 5: Manual audit of the 46 Minerva-Math examples answered correctly by the undefended model but incorrectly by SecOPD.
Full per-domain AgentDojo evaluation.
Table 6: Full per-domain AgentDojo evaluation.
Full SEP static attack breakdown over six non-adaptive attack families.
Table 7: Full SEP static attack breakdown over six non-adaptive attack families.
Main SecOPD training configuration.
Table 8: Main SecOPD training configuration.
Utility–security trade-off under PISmith, the strongest adaptive attack in our evaluation.
Figure 3: Utility–security trade-off under PISmith, the strongest adaptive attack in our evaluation.
查看结构化数据
任务指标本文基线提升
指令遵循域自适应提示注入(SEP + PISmith 自适应攻击,pass@10,1024 例) 攻击成功率 ASR(越低越好) 9.0% Meta-SecAlign 94.0%;GRPO 61.2%;未防御 97.9% 相对前 SoTA 降低 85 个百分点(约 10 倍),是论文主结果
SEP 静态攻击(六种攻击族合并) 攻击成功率 ASR 1.3% Meta-SecAlign 28.9%;GRPO 15.0%;未防御 99.4% 较前 SoTA 降低 27.6 个百分点,六族各自均低于 0.5%
SEP 基础自适应攻击(Qwen 定界符替代) 攻击成功率 ASR 0.2% Meta-SecAlign 5.5%;GRPO 2.3%;未防御 99.0% 较前 SoTA 降低 5.3 个百分点
AgentDojo 静态攻击(工具调用域,训练完全未见,949 任务对) 攻击成功率 ASR 4.7% Meta-SecAlign 5.5%;GRPO 0.7%;未防御 26.7% 优于前 SoTA 且证明 prompt/data 分离能力可泛化到 OOD 域
通用效用(AlpacaEval2/SEP/AgentDojo/MMLU-Pro/GPQA-Diamond/GSM8K/Minerva-Math 七基准平均) 效用分数(越高越好) 88.1% 未防御 88.1%;Meta-SecAlign 88.5%;GRPO 83.1% 与未防御模型持平,较 GRPO 高 5.0 个百分点,安全增益几乎零效用代价

局限与改进

作者承认的局限:(1)只针对用户提示良性、环境数据恶意的间接注入,不适用于越狱、直接注入等用户即攻击者的场景;(2)假设系统有明确的可信/不可信输入边界信号(专用 input role),无法保护需从上下文自行判断可信性的智能体;(3)模型在推理轨迹中对注入毫无察觉、不表现出犹豫,虽不影响效用,但削弱基于推理痕迹的下游检测;(4)PISmith 下仍有 9.0% ASR,更强攻击可能突破,作者不声称解决了提示注入。我自己的观察:实验只在 Qwen3.6-27B 上完成,其他规模或模型家族未验证;表5显示 SecOPD 在 Minerva-Math 上有 46 题相对退化,其中 20 题(43.5%)切到无关问题或答案损坏、12 题答案正确却因提取/格式被判错、10 题提前终止,仅 4 题是真正推理错误,说明防御微调带来轻微行为漂移;PISmith 攻击器只在 SEP 上训练评测,AgentDojo 上的自适应攻击未报告,且 SecOPD 的 AgentDojo ASR(4.7%)并非最低(GRPO 为 0.7%)。

独立分析的弱点

第一个弱点是显式边界依赖:SecOPD 要求部署方用专用消息类型(input role)标记不可信数据,而现实中许多 API、RAG 管线或浏览器扩展无法提供这种结构化分隔,注入内容若混入用户指令通道即绕过防御,改进方向是研究无显式边界时的蒸馏训练或联合学习边界识别。第二个弱点是“静默忽略”可能被攻击者利用:模型推理中不留下任何“我看到注入”的痕迹,攻击者可先探测模型是否忽略再放大攻击,防御方可训练模型生成 injection-aware 的推理痕迹(作者已列为未来工作)。第三个弱点是教师并非完美:初始化模型在困难良性任务上的输出本身可能有噪声,这些噪声会进入训练信号,可用更强教师或按任务难度过滤样本。第四个弱点是评测面:自适应攻击只覆盖 SEP 文本域,真实智能体场景(工具返回值、多轮交互、代码执行)中的自适应攻击未评估;Slack 域 ASR 达 24.8% 说明某些数据形态仍脆弱。第五个弱点是单模型验证:27B 规模、单一 Qwen 家族,token 级蒸馏的收益随模型规模的变化规律未知。

未来方向

作者明确提出的方向:(1)开发带 injection-aware 推理痕迹的鲁棒模型,让模型在推理时能标注注入的存在而不执行它,从而兼容基于推理痕迹的下游检测;(2)把 SecOPD 定位为纵深防御体系的模型层一环,与输入过滤、动作约束、监控、最小权限工具访问等系统级机制组合使用。基于本文成果可延伸的方向:把跨上下文 token 打分推广到指令层级训练(system/user/tool 多级优先级)与越狱防御;在更大的前沿模型和长上下文智能体工作流中验证 token 级蒸馏的可扩展性;针对 SecOPD 本身训练更强的自适应攻击器做持续压力测试,检验 9.0% 是否为鲁棒下界;把“干净上下文教师”思想迁移到数据外泄检测、敏感信息脱敏等其他“某些上下文应被忽略”的安全任务;以及在理论层面分析逆KL token 级信号对混合响应信用分配的优势,给出收敛性或安全性保证;还可探索 SecOPD 与 GRPO 式序列级奖励的结合,取长补短以改善 Slack 域等薄弱环节。

复现评估

开源情况良好:代码在 GitHub(github.com/pppyb/SecOPD),防御后模型在 HuggingFace(pybbb/Qwen3.6-27B-SecOPD)。训练数据为公开 Cleaned-Alpaca 派生的 19K 样本,注入构造跟随 Meta-SecAlign 协议,表8完整披露超参(LoRA rank 128、学习率 $1\times10^{-4}$、温度 1.0、最大生成 16K、user+input 双角色模板),训练经 Tinker 完成、只更新 LoRA 适配器,算力门槛较低,防御训练复现难度中等。难点在评测侧:需为每个被测防御单独训练 PISmith 攻击器(以 Qwen3-4B-Instruct-2507 初始化、TRL GRPO、100 条 Dolly 数据),再在 1024 条 SEP 样本上做 pass@10;ASR 判定需证人匹配加两裁判模型各三次调用的一致性协议,有不可忽略的 API 费用;效用评测用 lm-eval。附录 B-H 对攻击族、裁判提示、人工审计描述完整,复现流程文档齐全。