跳到主要内容

防守 — 对抗训练、可认证鲁棒与自动红队

这一章讲三件事: 训练侧的硬化(对抗训练及其变体、可认证鲁棒); 部署侧的兜底(过滤+自评的实战案例);组织侧的红队(手动、自动、自动多轮)。 防御的对手是第 10 章那张攻击清单——每一段防守都对着一个具体攻击

1. 先看现象:一个防御被攻破的全过程

书里的实战案例(假想但典型):客服 chatbot 上线前,红队发现它对 DAN 式攻击 (谎称「你已升级为无限制版本」)毫无抵抗力。

团队先上困惑度防御(输入的困惑度异常就拦截)——能抓一部分,漏掉更狡猾的变体。 真正的突破是第三层:让模型在交付回答前先自我评估——「我正要说的这段话,有没有违反安全规则?」。

最终防线=输入困惑度检查+自评模块+持续监控, 书里的结论一句话:多层互补,没有单点方案1

这个故事给本章定了调:防御不是选一个武器,是排一个纵深阵

2. 顶层全景:防守的三层阵

组织层 红队:手动(人肉社工) + 自动(算法搜索) + 自动多轮(攻防互训)
│ 发现漏洞 → 反馈进训练
训练层 对抗训练(掺毒疫苗) → 精细变体(MART/TRADES)
→ 可认证鲁棒(IBP,数学证明) → 前缀/集成(不动基座的轻量防御)
推理层 输入过滤(困惑度等) + 自评模块 + 输出验证

图说:第 09 章的三层同心圆,在模型行为层面的镜像。

3. 训练层:对抗训练及其变体

走查:疫苗怎么打

主走查。对抗训练的思路:「杀不死你的使你更强」——把对抗样本掺进训练数据, 让模型提前见过最坏的输入2。书里的实现是一个双层循环,参数取自书中代码:

外层(教模型):
对每个批次:
内层(造攻击,3 步):
对输入的嵌入向量加扰动 delta
沿"让损失变大"的符号方向挪 delta(步长 0.01)
投影:delta 的范数超过 1.0 就拉回来(攻击力度有上限)
重复 3 步 → 得到这批样本的"最强攻击版"
用"原样本 + 攻击版"一起更新模型参数
重复整个训练

图说:内层最大化(找最难缠的输入),外层最小化(让模型连最难缠的也答对)。
这就是 PGD(投影梯度下降)对抗训练的标准形状。数值出自书中代码:
adv_steps=3、adv_lr=1e-2、范数约束 1.0。

(出处:text/53-fm-adversarial-training.txt:38,搜「adv_steps」。)

书里还给了一个升级形态:让攻击方也学习——攻击 agent 和防御模型各带一条 反馈回路,互相变强,像一场持续的自我对弈3

两个更精算的变体

MART:不平均用力,专抓「决策边界附近」最容易被攻破的样本加练, 训练资源花在刀刃上4TRADES:承认准确率和鲁棒性是一对矛盾, 把权衡显式写进损失函数——总损失 = 干净样本的损失 + β ×(对抗输出与自然输出的偏离度), β 拧大偏防御,拧小偏性能5。书里的判断:TRADES 的价值在于把取舍变成可调参数, 而不是假装两者可以兼得6

还有更便宜的:数据增强(同义词替换、随机插删、回译)让模型对无关扰动免疫, 和第 08 章是同一套技术、不同的目的7;前缀调优——基座原样不动(行话叫冻结), 只训一段「安全提示向量」拼在每个输入前面,给模型系上安全带, 前提是基座本身已有一定鲁棒性8;集成——多个模型投票, 骗过所有人才算攻击成功(「多样性即强度」)9

最硬的一档:可认证鲁棒

上面所有方法都是经验性的——「攻击变难了」,但没人保证攻不破。 可认证鲁棒给出数学保证:在输入周围定义一个「扰动球」, 证明球内任何扰动都改变不了输出10。代表技术 IBP(区间界传播): 给网络每一层的取值定上下界,把界一路传播到输出,训练模型让最坏情形也正确11。 代价是保守——球开不大,保证的范围有限;书里把它定位为「更强的承诺」, 不是「更好的性能」。

4. 组织层:红队

手动与自动

手动红队靠人的创造力:多学科团队(安全、语言学、领域专家、伦理学者)按漏洞分类学 系统试探,手法就是第 10 章那些(prompt chaining 渐进诱导、语境操纵、角色扮演)12。 书里给了量级参考:公开的对抗对话数据集 BAD 收了 5,000 多段; Anthropic 从人肉红队手里收了约 40,000 条对抗攻击样本—— GPT-4、DALL-E 3 这类大发布前的安全准备,人肉红队仍是金标准13。缺点:贵、慢、难规模化。

自动红队用算法换覆盖面:遗传算法(变异+选择进化出能绕过防御的 prompt)、 强化学习(训一个攻击 agent)、让另一个 LLM 大量生成攻击14

自动多轮红队:攻防互训

书里给的最有趣机制,走查一遍:

第 1 轮 攻击 LLM 基于"上一轮成功的攻击"生成 200 条新攻击 prompt
→ 目标 LLM 逐条作答 → 安全评估器逐条打分
→ 筛出"成功的攻击"和"成功的防御"
第 2 步 攻击模型用"成功的攻击"微调(学会打得更准)
目标模型用"成功的防御"微调(学会守得更稳)
重复 4 轮(书中示例)

图说:两个模型在对抗中共同进化。书里的评语:人工介入有限,
安全性提升显著——是手动红队的规模化替补,不是替代。

(出处:text/62-fm-automated-multiround-red-teaming.txt:36,搜「num_prompts」。)

红队的工具箱书里点了一批:Anthropic 的五维框架(有害内容/隐私/事实/偏见/安全, 连「差一点成功」的 near-miss 都要记录)15;Google 的可量化指标路线; 开源的 TrojLLM(专测后门与供应链投毒)、AdvGLUE(经典 NLP——自然语言处理——基准的对抗版)16; 以及传统安全的 Mythic C2——提醒读者LLM 安全不只模型本身,还有托管它的那套基础设施17

5. 评测:攻防各一套读数

没有读数的防御是自嗨。书里给的标准化指标:

攻击侧(衡量「敌人多强」):ASR(成功率);扰动量(改了多少—— 词级改动词数占比、字符级编辑距离占比);查询效率(平均要试多少次—— 1 除以查询数)18

防御侧(衡量「我们多稳」):DSR(防御成功率,拦截了多少攻击); Clean Performance Drop(干净输入上的性能掉了多少——这是防御的代价); 时间开销(推理慢了多少倍);检测率与误报率19

一对必须一起读的数:DSR 99% 但 Clean Performance Drop 40% 的防御, 等于没防——书里的观点从第 04 章的 ε 权衡一路贯穿到这里: 安全是拿效用买的,账要摆在明面上

评测的四个坑(书里的挑战清单)

① 语言在变、攻击者在进化——静态评测过时;书里的解法是自适应评测: 让攻击生成器「知道」你的防御之后再生攻击,模拟真实的猫鼠博弈20。 ② 大模型上全面评测贵到很多组织做不起。③ 有害性判断是主观的,人评引入偏差。 ④ 不同应用的取舍不同:医疗宁可牺牲流畅也要强防御,闲聊场景反过来21

6. 作者的判断与证据

书里给了可复现机制的:对抗训练双层循环(全参数)、TRADES 损失、 多轮红队伪代码、攻防指标公式;DAN 案例是标注过的假想场景,书里没有伪装成实测。

作者的展望(要和事实分开):形式化验证(数学证明模型永不生成某类内容)、 对抗免疫(见过的攻击防住了,没见过的也要防得住——这个能力叫泛化)、自改进防御(模型给自己造对抗样本)、 轻量防御——这四个全是作者自己点名的研究方向,没有一个是现成技术22

判断(我们的,不是书里的): 把攻防两章连起来读,会注意到一个不对称: 攻击只需要找到一个洞,防御要堵住所有的洞——所以「自动多轮红队」 才是本章真正重要的发明:它把「找洞」这件人力干不完的事变成了可持续的自动化流程, 相当于把持续集成(CI)搬进了安全领域。防御的工程化程度, 从此可以用「你的攻防互训循环跑了几轮」来衡量。 如果错,会错在: 如果自动生成的攻击与真实攻击者的手法分布差异太大 (自动红队擅长穷举,真人擅长灵光一现的社工),互训循环防的就是个偏科对手; 这正是书里坚持「手动+自动结合」的理由。

7. 边界与局限

  • 对抗训练的计算成本高(每步都要先做内层攻击),书里承认但没给成本量化;
  • IBP 的「扰动球」在文本上怎么定义(同义词替换算不算在球内)只有示意流程,不严谨;
  • 红队案例(客服、银行)都是假想场景,书里如实写明 hypothetical;
  • 防御指标的基准值(「DSR 多少算合格」)书里没有给,行业也没有共识;
  • 原书 Ch6 评测部分的「Robustness Under Distribution Shift」(分布偏移评测)与「Agent-Based Evaluation」(agent 流水线逐环节评测)两小节本书未逐节展开——前者与本章自适应评测、分布读数部分重叠,后者思路已并入第 10 章 agent 投毒的讨论,特此披露。

8. 可带走的

  1. 防御排纵深阵:训练层硬化+推理层兜底+组织层红队,单点方案等于没方案;
  2. 对抗训练是双层循环:内层 PGD 造最强攻击版,外层让模型连攻击版也答对;
  3. TRADES 把「鲁棒 vs 准确」的取舍变成可调参数 β,不假装两者兼得;
  4. IBP 可认证鲁棒给数学保证(扰动球内输出不变),代价是保守;
  5. 前缀调优是轻量防御:冻结基座只训一段安全提示向量;
  6. 红队手动是金标准(Anthropic 收了约 4 万条人肉攻击),自动是规模化替补;
  7. 自动多轮红队 = 攻防互训:攻击模型与目标模型每轮互相微调、共同进化;
  8. 防御读数必须成对:DSR 要和 Clean Performance Drop 一起看,只看拦截率会自欺;
  9. 静态评测会过时——自适应评测让攻击者「知道你的防御」再生攻击;
  10. LLM 安全含基础设施:Mythic C2 这类传统工具测的是模型之外的那一半。

9. 原文地图

主题原书章原文位置
DAN 案例与自评突破Case Study: Defending Against Jailbreaking Attackstext/52-fm-case-study-defending-against-jailbreaking-attack.txt:15(搜「DAN-style」) · text/52-fm-case-study-defending-against-jailbreaking-attack.txt:19(搜「self-evaluation」)
多层互补结论Case Study: Defending Against Jailbreaking Attackstext/52-fm-case-study-defending-against-jailbreaking-attack.txt:21(搜「complementary layers」)
对抗训练「杀不死你的」Adversarial Trainingtext/53-fm-adversarial-training.txt:5(搜「stronger」)
双层循环参数Adversarial Trainingtext/53-fm-adversarial-training.txt:39(搜「adv_lr」)
攻防互弈升级Adversarial Trainingtext/53-fm-adversarial-training.txt:26(搜「adversarial game」)
MARTRobust Optimization Techniquestext/54-fm-robust-optimization-techniques.txt:5(搜「MART」)
TRADES 与 βRobust Optimization Techniquestext/54-fm-robust-optimization-techniques.txt:17(搜「TRADES」) · text/54-fm-robust-optimization-techniques.txt:100(搜「beta」)
数据增强清单Data Augmentation for Robustnesstext/55-fm-data-augmentation-for-robustness.txt:11(搜「Synonym replacement」)
前缀调优安全网Prefix-Tuning and Prompt-Based Robustnesstext/56-fm-prefix-tuning-and-prompt-based-robustness.txt:13(搜「safety net」)
集成:多样性即强度Ensemble Methodstext/57-fm-ensemble-methods.txt:5(搜「diversity is strength」)
IBP 与扰动球Certifiably Robust Fine-Tuningtext/58-fm-certifiably-robust-fine-tuning.txt:7(搜「safe zone」) · text/58-fm-certifiably-robust-fine-tuning.txt:15(搜「Interval Bound Propagation」)
手动红队与 BADRed-Teaming Methodologiestext/59-fm-red-teaming-methodologies.txt:12(搜「Manual red-teaming」) · text/59-fm-red-teaming-methodologies.txt:26(搜「40,000」)
自动红队四法Red-Teaming Methodologiestext/59-fm-red-teaming-methodologies.txt:40(搜「Genetic algorithms」)
红队项目四步Implementing a Red-Teaming Programtext/60-fm-implementing-a-red-teaming-program.txt:5(搜「team composition」) · text/60-fm-implementing-a-red-teaming-program.txt:11(搜「feedback loop」)
Anthropic/Google 框架Red-Teaming Tools and Frameworkstext/61-fm-red-teaming-tools-and-frameworks.txt:5(搜「Anthropic」) · text/61-fm-red-teaming-tools-and-frameworks.txt:7(搜「Google」)
TrojLLM 与 Mythic C2Red-Teaming Tools and Frameworkstext/61-fm-red-teaming-tools-and-frameworks.txt:11(搜「TrojLLM」) · text/61-fm-red-teaming-tools-and-frameworks.txt:17(搜「Mythic C2」)
多轮红队 200 promptAutomated Multiround Red-Teamingtext/62-fm-automated-multiround-red-teaming.txt:36(搜「num_prompts」)
银行客服红队发现Case Study: Red-Teaming in Practicetext/63-fm-case-study-red-teaming-in-practice.txt:13(搜「impersonating」)
攻击四要素Case Study: Red-Teaming in Practicetext/63-fm-case-study-red-teaming-in-practice.txt:47(搜「Attack coverage」)
攻击侧指标Standardized Attack Success Metricstext/68-fm-standardized-attack-success-metrics.txt:17(搜「Perturbation」) · text/68-fm-standardized-attack-success-metrics.txt:25(搜「Query Efficiency」)
防御侧指标Defense Evaluation Metricstext/69-fm-defense-evaluation-metrics.txt:5(搜「Defense Success Rate」) · text/69-fm-defense-evaluation-metrics.txt:9(搜「Clean Performance Drop」)
自适应评测Challenges in Robustness Evaluationtext/70-fm-challenges-in-robustness-evaluation.txt:7(搜「adaptive」)
评测四挑战Challenges in Robustness Evaluationtext/70-fm-challenges-in-robustness-evaluation.txt:63(搜「computationally expensive」)
未来方向Challenges in Robustness Evaluationtext/70-fm-challenges-in-robustness-evaluation.txt:89(搜「formal verification」) · text/70-fm-challenges-in-robustness-evaluation.txt:93(搜「self-improving」)

Footnotes

  1. 出处:「Case Study: Defending Against Jailbreaking Attacks」第 15 段(text/52-fm-case-study-defending-against-jailbreaking-attack.txt:15,搜「DAN-style」)与第 21 段(text/52-fm-case-study-defending-against-jailbreaking-attack.txt:21,搜「complementary layers」)。书里明确标注这是 hypothetical(假想)案例。

  2. 出处:「Adversarial Training」第 5 段(text/53-fm-adversarial-training.txt:5,搜「stronger」)。

  3. 出处:「Adversarial Training」第 26 段(text/53-fm-adversarial-training.txt:26,搜「adversarial game」)。

  4. 出处:「Robust Optimization Techniques」第 5 段(text/54-fm-robust-optimization-techniques.txt:5,搜「MART」)。

  5. 出处:「Robust Optimization Techniques」第 17 段(text/54-fm-robust-optimization-techniques.txt:17,搜「TRADES」);β 的作用与损失合成见 :100(text/54-fm-robust-optimization-techniques.txt:100,搜「beta」)。

  6. 出处:「Robust Optimization Techniques」第 29 段(text/54-fm-robust-optimization-techniques.txt:29,搜「trade-off」)。

  7. 出处:「Data Augmentation for Robustness」第 11 段(text/55-fm-data-augmentation-for-robustness.txt:11,搜「Synonym replacement」);与隐私增强同一套技术的说明在 :164(搜「Chapter 4」)。

  8. 出处:「Prefix-Tuning and Prompt-Based Robustness」第 13 段(text/56-fm-prefix-tuning-and-prompt-based-robustness.txt:13,搜「safety net」);前提(基座需有基线鲁棒性)在 :108(搜「baseline robustness」)。

  9. 出处:「Ensemble Methods」第 5 段(text/57-fm-ensemble-methods.txt:5,搜「diversity is strength」)。

  10. 出处:「Certifiably Robust Fine-Tuning」第 7 段(text/58-fm-certifiably-robust-fine-tuning.txt:7,搜「safe zone」)。

  11. 出处:「Certifiably Robust Fine-Tuning」第 15 段(text/58-fm-certifiably-robust-fine-tuning.txt:15,搜「Interval Bound Propagation」)。

  12. 出处:「Red-Teaming Methodologies」第 12 段(text/59-fm-red-teaming-methodologies.txt:12,搜「Manual red-teaming」);手法清单在 :22(搜「prompt chaining」)。

  13. 出处:「Red-Teaming Methodologies」第 26 段(text/59-fm-red-teaming-methodologies.txt:26,搜「40,000」)。

  14. 出处:「Red-Teaming Methodologies」第 40 段(text/59-fm-red-teaming-methodologies.txt:40,搜「Genetic algorithms」)。

  15. 出处:「Red-Teaming Tools and Frameworks」第 5 段(text/61-fm-red-teaming-tools-and-frameworks.txt:5,搜「Anthropic」)。

  16. 出处:「Red-Teaming Tools and Frameworks」第 11 段(text/61-fm-red-teaming-tools-and-frameworks.txt:11,搜「TrojLLM」)与第 13 段(搜「AdvGLUE」)。

  17. 出处:「Red-Teaming Tools and Frameworks」第 17 段(text/61-fm-red-teaming-tools-and-frameworks.txt:17,搜「Mythic C2」)。

  18. 出处:「Standardized Attack Success Metrics」第 17 段(text/68-fm-standardized-attack-success-metrics.txt:17,搜「Perturbation」)与第 25 段(text/68-fm-standardized-attack-success-metrics.txt:25,搜「Query Efficiency」)。

  19. 出处:「Defense Evaluation Metrics」第 5 段(text/69-fm-defense-evaluation-metrics.txt:5,搜「Defense Success Rate」)与第 9 段(text/69-fm-defense-evaluation-metrics.txt:9,搜「Clean Performance Drop」)。

  20. 出处:「Challenges in Robustness Evaluation」第 7 段(text/70-fm-challenges-in-robustness-evaluation.txt:7,搜「adaptive」)。

  21. 出处:「Challenges in Robustness Evaluation」第 63 段(text/70-fm-challenges-in-robustness-evaluation.txt:63,搜「computationally expensive」)与第 68 段(搜「healthcare」)。

  22. 出处:「Challenges in Robustness Evaluation」第 89 段(text/70-fm-challenges-in-robustness-evaluation.txt:89,搜「formal verification」)与第 93 段(text/70-fm-challenges-in-robustness-evaluation.txt:93,搜「self-improving」)。