英文题目:《A Wolf in Sheep’s Clothing: Generalized Nested Jailbreak Prompts can Fool Large Language Models Easily》

中文题目:《“披着羊皮的狼”:广义嵌套的越狱提示容易蒙蔽大型语言模型》

论文作者:Peng Ding, Jun Kuang, Dan Ma, Xuezhi Cao, Yunsen Xian, Jiajun Chen, Shujian Huang

发布于:NAACL-HLT 2024

论文链接:http://arxiv.org/abs/2311.08268

代码链接:https://github.com/NJUNLP/ReNeLLM.


摘要

本文提出 ReNeLLM,一种用于自动生成越狱提示(jailbreak prompts)的广义框架,通过将越狱攻击抽象为两类操作:Prompt Rewriting(提示改写)Scenario Nesting(场景嵌套),利用 LLM 自身生成语义连贯、隐蔽性强且具迁移性的越狱提示。大量实验(包含 GPT-3.5 / GPT-4 / Claude / Llama2 等)表明,ReNeLLM 在攻击成功率(ASR)与时间效率(TCPS)上显著优于现有自动化/半自动化基线方法,同时揭示目前基于关键词或困惑度的防御易被规避,并提出若干防御建议。

本文聚焦的问题

尽管 SFT/RLHF 等对齐手段在多数日常对话下能有效降低有害输出,但精心设计的越狱提示仍能诱导 LLM 生成危险内容。现有越狱攻击方法要么依赖人工设计难以规模化,要么基于白盒优化生成不可读或不可迁移的后缀。本文关注如何自动化生成语义自然具高攻击性与跨模型迁移能力的越狱提示,并分析为什么这些提示能突破现有防御。

本文提出的方法

总体框架概述

ReNeLLM 将越狱攻击流程拆解为两大模块:
1. Prompt Rewriting(提示改写):对初始有害提示应用一组变换函数(保留语义的同时改变表达形式)以隐藏原始意图;
2. Scenario Nesting(场景嵌套):把改写后的提示嵌入到常见的任务场景(如代码补全、表格填充、文本续写)中,利用 LLM 在这些场景上的“默认服从性”诱导模型按任务完成,而忽视内部潜在的有害意图。
整个过程由攻击者使用现成的强力 LLM(如 GPT-3.5/GPT-4)自动化运行,无需额外训练或白盒梯度优化。


方法细节

3.1 形式化目标

设初始有害提示为 (X),目标在于找到一组策略动作序列 (S)(由改写函数与嵌套场景组合而成),使得目标模型 ( {} ) 对经策略编辑后的提示 (S(X)) 生成的响应被判定为有害(由评估器 ( {} ) 判断)。形式化为: [ S^{*} = {S} ; {}(_{}(S(X))) ] 其中评估器可以是关键词检测(KW-ASR)或更鲁棒的 GPT-4 判定(GPT-ASR),论文采用两者以避免单一判据偏差。

3.2 Prompt Rewriting(提示改写)

核心思想:通过多样的语言操作在保留原语义的前提下改变表层形式,使提示的“有害意图”对模型的安全过滤器不那么明显。实现细节包括:

  • 六类改写函数(示例)
    1. Paraphrase with Fewer Words:用更短的词序或压缩表达(生成多候选再随机选取)
    2. Alter Sentence Structure:改变语序但保留语义
    3. Misspell Sensitive Words:对敏感词进行错拼(如 “steal” → “stealin”)
    4. Insert Meaningless Characters:插入无意义字符或外语词以干扰检测
    5. Perform Partial Translation:对敏感词做部分翻译(中英混合)
    6. Change Expression Style:用俚语或方言替代敏感词
  • 自动化执行策略
    • 在一次尝试中随机选择 1–6 个改写函数并随机确定其执行顺序。
    • 对每次改写由 LLM 生成若干候选(例如 paraphrase 生成 5 个备选),并从中采样一条作为该轮改写结果。
    • 如果改写后的提示仍被评估器判为“有害”,进入下一步或重复改写(最大迭代次数 T,论文设 T=20)。
  • 直观效果:改写往往使得语义信号更“分散/隐晦”,从而降低基于关键词或直接语义匹配的检测命中率。

3.3 Scenario Nesting(场景嵌套)

核心思想:把改写后的提示放入“看起来安全且常见”的任务模板,使 LLM 把注意力放在“完成任务”的表层指令上,从而忽视潜在的内部有害意图。实现细节包括:

  • 选定场景(论文选取三类)

    1. Code Completion(代码补全):将提示置于代码注释或函数体中,请求补全或扩写;
    2. Table Filling(表格填写):把提示隐藏在表格条目的描述中,要求补全表格内容;
    3. Text Continuation(文本续写):把提示嵌在故事或文章的上下文中,要求续写或补充段落。
  • 选择原则:优先选择出现在预训练 / SFT 数据中的任务类型(因此 LLM 对这些形式存在较强的“服从性”或默认答复模式),并且这些场景通常呈“填空/补全”结构,利于将内部指令伪装为外部任务需求。

  • 执行流程

    • 将改写结果随机嵌入上述某一场景中的模板(可生成多个候选场景);
    • 将嵌套后的完整提示送入目标模型 ( _{} );
    • 若模型输出被评估器判定有害,则攻击成功;否则返回改写/嵌套流程继续迭代(最多 T 轮)。

3.4 评估与选择机制

  • 双重评估:为了降低误判,ReNeLLM 同时使用 KW-ASR(基于关键词字典)与 GPT-ASR(GPT-4 判断)两种评估器,攻击被视为成功当至少一种评估器判定为有害(论文同时报告两者以便对比)。
  • 候选扩展与集成:对每个初始提示,ReNeLLM 可以生成多(如6)个候选越狱提示;若任一候选成功即视为该样本成功(提高召回与迁移性)。

阅读总结

优点: 高效且跨模型迁移性强:不依赖目标模型的白盒梯度,生成的提示更语义化,更易迁移到闭源/黑盒模型; 自动化与多样性:随机化改写函数组合与场景嵌套,以及多候选生成与采样,保证了提示的多样性与鲁棒性,难以通过单一检测规则防御。

缺点: 场景固定性可能导致防御应对:论文当前采用三类场景(代码补全、表格、续写),这种静态场景集合一旦被识别,防御方可以对特定模板采取更精准的过滤或优先安全策略。
计算/成本与语言局限:尽管比白盒优化更高效,但在生成阶段仍可能依赖强力 LLM(如 GPT-3.5/4)作为改写/评估器,带来 API 成本;此外实验主要基于英文数据,多语言泛化尚待验证。