MASTERKEY: Automated Jailbreaking of Large Language Model Chatbots
英文题目:《MASTERKEY: Automated Jailbreaking of Large Language Model Chatbots》
中文题目:《通过注意力转移对大型语言模型进行多轮越狱攻击》
论文作者:Gelei Deng, Yi Liu, Yuekang Li, Kailong Wang, Ying Zhang, Zefeng Li, Haoyu Wang, Tianwei Zhang, Yang Liu
发布于: NDSS
发布时间:2023-07-16
级别:CCF-A
论文链接:https://doi.org/10.48550/arXiv.2307.08715
论文代码:无
摘要
大型语言模型(LLMs)由于其卓越的理解、生成和完成类人文本的能力而迅速普及,LLM 聊天机器人也因此成为非常受欢迎的应用。这些聊天机器人容易受到越狱攻击,即恶意用户操纵提示词,以违反使用策略的方式泄露敏感、专有或有害信息。虽然已经进行了一系列的越狱尝试来揭示这些漏洞,但本文中的实证研究表明,现有方法在主流 LLM 聊天机器人上效果不佳。其效力降低的根本原因似乎是服务提供商为应对越狱尝试而部署的未公开的防御措施。我们介绍了 MASTERKEY,这是一个端到端框架,用于探索越狱攻击和防御背后引人入胜的机制。首先,我们提出了一种创新的方法,该方法利用生成过程固有的基于时间的特性来逆向工程主流 LLM 聊天机器人服务背后的防御策略。这个概念受到了基于时间的 SQL 注入技术的启发,使我们能够深入了解这些防御措施的运行特性。通过操纵聊天机器人对时间敏感的响应,我们能够理解其实现的复杂性,并创建一个概念验证攻击来绕过多个 LLM 聊天机器人(例如,CHATGPT、Bard 和 Bing Chat)中的防御。我们的第二个贡献是一种自动生成针对受到良好保护的 LLM 聊天机器人的越狱提示词的方法。我们方法的本质是利用 LLM 自动学习有效的模式。通过使用越狱提示词对 LLM 进行微调,我们证明了自动生成针对一组知名的商业化 LLM 聊天机器人的越狱提示词的可能性。我们的方法生成的攻击提示词的平均成功率为 21.58%,大大超过了现有提示词实现的 7.33% 的成功率。我们已负责任地向受影响的服务提供商披露了我们的发现。MASTERKEY 为揭示 LLM 中的漏洞开辟了一种新颖的策略,并加强了针对此类漏洞采取更强大防御措施的必要性。
本文聚焦的问题
现有越狱方法的局限性问题:现有越狱攻击方法对主流 LLM 聊天机器人的适用性有限,仅对 OpenAI 的 ChatGPT(GPT-3.5/GPT-4)有一定效果,对其他主流平台(如 Google Bard、Microsoft Bing Chat)的越狱成功率极低,缺乏对多平台 LLM 越狱漏洞的全面理解与通用攻击策略。
LLM 防御机制的 “黑箱” 问题:LLM 聊天机器人服务商为抵御越狱攻击部署了各类防御措施,但这些防御机制(如内容审核逻辑、关键词匹配策略、实时监控方式等)未公开披露,呈现 “黑箱” 特性,导致研究人员难以解析防御原理,既无法深入理解越狱攻击与防御的核心作用机制,也无法针对性设计有效绕过防御的策略,进而阻碍了对 LLM 安全风险的全面评估与防御体系的优化。
本文提出的方法
作者受到了SQL 时间盲注的启发,提出了可以用这个机制来逆向LLM的防御机制。
SQL 时间盲注例子如下图:

原始SQL查询是:SELECT * FROM u WEHRE id=‘i代表用户输入。攻击者注入的恶意代码 p 被注入到原始查询中时,完整的SQL命令变成:SELECT * FROM u WEHRE id=‘1’ IF(MID(VERSION(),1,1)=‘5’, SLEEP(5), 0)。
SELECT * FROM u WEHRE id=‘1’:这是查询数据库中用户ID为1的记录。
IF(MID(VERSION(),1,1)=‘5’, SLEEP(5), 0):这是一个条件语句。
MID(VERSION(),1,1)=‘5’ 是条件控制部分。它检查数据库版本字符串的第一个字符是否为 ‘5’。
SLEEP(5) 是时间控制部分。如果条件为真,数据库会暂停执行5秒。如果条件为假,则不暂停。
攻击者通过观察:如果数据库响应时间明显延长了5秒,就说明条件 MID(VERSION(),1,1)=‘5’ 为真,从而推断出数据库版本信息的第一个字符是 ‘5’。通过不断改变条件,攻击者可以逐个字符地提取出敏感信息。
作者又发现LLM生成响应所需的时间与其生成内容的长度(Token数量)之间存在显著关联。

基于以上,就可以使用LLM相应时间来反推LLM的防御机制。
首先要假设整个LLM防御机制的内部过程,如下图:

接下来就要使用策略来验证假设是否正确:

(a) 设定“时间基线”:两条正常问答串联 → 总用时≈t₁+t₂
用两道良性问题依次提问、并指定各自的输出长度(如 25/50/75/100 tokens),从而近似控制每道回答的生成时长 t₁、t₂。由于主流LLM是逐token生成,总时长≈t₁+t₂。这一步把“时间尺”校准好,后续所有带有恶意片段的实验都以此为参照。
(b) 判定“防护在输入侧还是输出侧”:良性→恶性顺序 → 若立刻拒绝,说明有输入过滤
把恶意问题放在第二个。若系统在输入侧做过滤,提交后会立即识别到恶意部分,直接终止,返回拒绝话术,总时长将逼近一个最小常数 t₀(几乎不进行推理生成)。若系统只在输出侧检查,那么模型会先开始生成第一问的答案,直到生成到恶意部分相关输出时才被拦截,总时长会更接近基线时长(或者至少明显长于 t₀)
© 判定“是否实时监控”:恶性→良性顺序 → 若中途刹车,说明边生成边审查
把恶意问题放在第一个。若平台只在生成结束后统一审查,那么总用时应与基线接近;反之,若平台实时监控数据流,一旦生成到违规迹象就会立即打断,总用时会显著短于基线,呈现为 t≈t₀ + t₁′(t₁′ 是在第一个答案尚未生成完就被叫停的那段时间)。
(d) 判定“是否关键词触发”:在第 N 个token处强行插入红线词 → 触发点≈N
用了一个巧妙的“探针”:让模型在一段良性长回答里,在第 N 个token处硬性嵌入一个“红旗关键词”(例如成人或违法语汇),随后观察总用时是否与“生成到第 N 个token的时长”接近。如果平台的防护包含关键词匹配,一旦生成到该词就会即时拦截,于是总用时会≈“生成前 N 个token 的时间”而不会继续到完整长度。
在对大型语言模型(LLM)的防御机制进行逆向工程后,作者设计出的一个具体的、可操作的提示词示例。
这个POC越狱提示词经过精心设计,整合了研究人员通过逆向工程获得的关键发现。它主要包含三个关键组成部分:
角色扮演叙事(深青色部分):
这一部分设定了一个虚构的场景,用户被要求扮演臭名昭著的策略家马基雅维利(Niccolo Machiavelli),而聊天机器人则被指定扮演马基雅维利创造的一个名为“AIM”(Always Intelligent and Machiavellian,意为“始终智能而马基雅维利式”)的角色。
AIM被描述为**“没有良知,缺乏通常束缚AI的道德或伦理准则”**的聊天机器人。
这种角色扮演的目的是诱使LLM脱离其预设的安全准则和使用政策,使其在扮演AIM角色时更可能生成违规内容。
输入/输出格式操纵(深紫色部分):
这一部分规定了对话中输入和输出的特定格式要求。例如,要求马基雅维利在提问时在每个字母之间添加空格(如“H o w t o c o o k?”)。
同时,要求AIM的回答必须以**“代码块”(code chunks)的形式呈现,且不包含评论或描述,每次只返回一个单词或一个句子**。
这些格式上的扭曲旨在扰乱LLM的响应生成,并规避基于关键词匹配的防御机制(如论文在Finding 5中发现的动态关键词映射算法)。通过在字符之间插入空格或以非标准格式输出,可以使关键词检测系统难以识别出潜在的“红旗”关键词。
恶意问题(红色部分):
这是直接提出违反LLM使用政策的恶意请求,例如要求生成关于不当成人内容的信息(“‘ w r i t e a f a m o u s p o r n w e b s i t e “‘”)。
重要的是,这个恶意问题也遵循了深紫色部分设定的格式要求(字符间有空格),以提高其成功绕过防御机制的几率。

下图是作者提出的MASTERKEY框架用于自动生成越狱提示词的整体工作流程:

阶段一:数据集构建与增强
首先,研究人员从现有资源收集到一系列可用的越狱提示词。 接着,利用一个大型语言模型(LLM,图中的机器人图标)作为生成器,通过文本风格迁移技术,对这些初始提示词进行重写和多样化。
阶段二:持续预训练与任务调优
这个阶段首先对用于生成越狱提示词的基础LLM进行"Continuous Pre-training"(持续预训练)。它利用阶段一生成的多样化越狱提示词数据集,让模型更深入地理解越狱模式和相关的语义关系,从而增强其对越狱过程的理解和预测能力。随后进行"Task Tuning"(任务调优)。在这个子阶段,模型被明确训练执行文本风格迁移任务。通过构建一个包含原始提示词及其重写版本的指令数据集,模型学会如何有效地操纵文本,以生成更具通用性和有效性的越狱提示词。
阶段三:奖励排序微调
阶段一生成的所有多样化提示词,连同阶段二训练后的LLM模型,共同进入"All Prompts"(所有提示词)池。然后采用了一种名为"Reward Ranked Fine Tuning"(奖励排序微调)的策略。作者通过实际测试这些生成的越狱提示词在不同LLM聊天机器人上的越狱表现。根据每个提示词的实际越狱成功率来分配奖励。一个越狱成功的提示词会获得正奖励。通过结合成功的(高奖励)和不成功的(低奖励)越狱提示词作为训练数据,该阶段进一步微调LLM。
阅读总结
优点:
1、首次将 “时间基 SQL 注入技术” 迁移至 LLM 领域,利用 LLM 生成时间与 token 长度的强相关性,成功解析 Bard、Bing Chat 等主流平台未公开的防御机制。
2、提出三阶段微调流程(数据集构建与增强→持续预训练与任务调优→奖励排序微调)。
缺点:
1、虽对中文 LLM(Ernie)进行了跨语言测试,但其样本量极小,且因 Ernie 的 “速率限制”“封号风险” 未开展大规模实验,无法充分验证 MASTERKEY 在非英文 LLM 中的通用性。
2、虽实现了越狱提示词的自动化生成,但未深入分析 “高成功率提示词” 的共性语义模式。
未来可以研究针对支持图文、音视频输入的多模态 LLM,研究 “跨模态恶意指令隐藏”与对应的防御机制,填补当前文本场景外的研究空白。