目录
概要
在本文系统地提出了通信网络中llm后门攻击的分类,将其分为四大类:输入触发攻击、提示触发攻击、指令触发攻击和演示触发攻击。此外,还对基准数据集进行了全面的分析。最后确定了潜在的问题和开放的挑战,并为未来的研究方向提供了有价值的见解。
方法论
大型语言模型
LLM 的核心是基于深度学习架构的数学原理,比如递归神经网络(RNN)或transformer。这些模型促进了单词表示在连续向量空间中的学习,其中向量的接近度封装了单词之间的语义和句法关系。LLM的典型目标函数可被公式化如下:
其中,表示模型参数,
是在当前模型参数
下,给定输入
预测正确输出
的概率,
是数据集中样本的总数。
LLM可以分为各种类型,包括基于transformer的模型(如 GPT-3)、递归神经网络(如 LSTM),甚至使用新颖架构的模型,如 Transformer-XL。然而,训练 LLMs 所需要的大量资源常常促使开发者依赖第三方数据集、平台和预训练模型。虽然这一策略在很大程度上减轻了资源压力,但不幸的是,它也引入了潜在的安全漏洞。这些漏洞可能被恶意攻击者利用,带来诸如后门攻击等安全威胁。
后门攻击
技术术语定义
技术术语 | 专业解释 |
良性模型 | 没有任何插入恶意后门的模型 |
良性样本 | 没有恶意修改的样本 |
毒性模型 | 带有恶意后门的模型 |
毒性样本 | 用于后门攻击的恶意操纵样本 |
毒性提示 | 恶意操纵的后门攻击提示 |
触发器 | 用来激活后门的特殊模式 |
攻击样本 | 含有触发器的有毒测试样本 |
攻击场景 | 可能发生后门攻击的场景 |
源标签 | 有毒样本的基本事实标签 |
目标标签 | 受感染模型预测的标签 |
目标模型 | 攻击者想要破坏的模型 |
攻击目标
攻击目标是使目标模型在处理正常数据时表现正常,但在处理被污染样本时表现出由攻击者指定的行为。攻击者的目标可以形式化为以下公式:
其中,和
分别表示正常训练数据集和被污染训练数据集。函数
表示损失函数,取决于具体任务。符号
表示将后门触发器
嵌入到训练数据中的操作。攻击目标是最小化模型在正常和污染数据集上的预测与期望输出之间的差异,使模型在遇到触发器时表现出攻击者指定的行为,同时在正常输入下表现正常。
评估指标
攻击成功率 (ASR): 成功攻击的污染样本数量与污染样本总数的比例,用于衡量攻击的有效性。
其中,是指示函数,
是目标模型,
和
分别表示污染样本和目标标签。
正常准确率 (BA): BA 关注模型在正常数据上的性能,量化模型在正常数据集上的预测准确性。
其中,是正常样本
的真实标签。
威胁模型
A. 攻击者的知识
攻击者的知识通常分为两种情况:白盒环境和黑盒环境。
- 白盒环境:攻击者对数据集和目标模型有全面的理解与控制,包括能够访问和修改数据集、模型参数以及模型结构。
- 黑盒环境:攻击者只能操控部分训练数据,对目标模型的结构和参数完全不了解。
B. 可能的场景及对应能力
后门攻击可能发生在以下三种经典场景中,包括第三方数据集、平台以及模型的使用:
场景一:第三方数据集
攻击者污染数据集并通过互联网传播。受害者由于缺乏数据下载并使用这些被污染的数据集来训练模型,导致隐藏后门嵌入到 LLM 中。在这种情况下,攻击者处于黑盒环境,只具备修改数据集的能力。
场景二:第三方平台
为了获得更多的计算资源,受害者将其训练数据和训练计划上传到第三方平台,而该平台暗中受恶意攻击者控制。攻击者获得模型参数、训练数据和训练计划后,可以恶意修改训练数据和训练计划,从而破坏模型。
场景三:第三方模型
攻击者在模型中植入后门并上传到互联网。受害者下载该模型并对其进行微调以适配特定任务,无意中保留了嵌入的后门。在这种情况下,攻击者处于白盒环境,并具备操控模型参数、结构和训练数据集的能力。
LLM 中的后门攻击
根据触发后门攻击的数据类型,后门攻击可以分为四类:输入触发型、提示触发型、指令触发型和示例触发型。

“场景”表示后门攻击发生的场景。‘/’表示原作中没有详细的后门攻击背景,S1表示采用第三方数据集,S2表示采用第三方平台,S3表示采用第三方模型。
输入触发型
输入触发型后门攻击通常通过在目标模型的预训练阶段恶意修改训练数据来嵌入后门。以下是几个相关的研究和方法:
- Li 等人[2] 表明,如果基于模型高层输出计算权重中毒的交叉熵损失函数 L,中毒权重主要存在于模型的高层。为此,Li 等人提出了一种称为 PTM 的层权重中毒方法。具体来说,PTM 将多个字符的组合用作触发器,然后提取每一层 Transformer 编码器的输出,使用共享的线性分类层基于这些表示计算中毒损失,从而使模型的初始层对中毒数据更加敏感。此外,层权重中毒技术可以与原始训练方法结合使用,也兼容未标注数据,从而允许在目标模型的初始层嵌入后门。然而,当关注效率时,广泛修改多个层可能成为一个缺点。
- Yang 等人[3] 也使用字符作为触发器,并毒化训练数据集。他们还证明了触发词的词嵌入向量在毒化模型的最终决策中起着重要作用。因此,他们将目标模型分成两个部分:一个是词嵌入部分,另一个是剩余部分。在执行与反向传播过程集成的后门攻击时,剩余部分的参数被视为常数。这种方法专注于更新仅词嵌入部分,以确保最终结果与预期目标标签一致。这种方法大大减少了需要修改的参数数量,从而简化了攻击过程。然而,这种方法的有效性可能取决于词嵌入的质量。
与前两项研究不同,Li 等人[4]、Zhang 等人[5] 和 Pan 等人[6]强调了构建隐蔽和自然的后门触发器的重要性。
- Li 等人[4] 提出了两种后门攻击方法。第一种方法使用同音词替换来通过视觉欺骗嵌入后门。第二种方法利用语言模型生成的文本和真正的自然文本之间的差异,生成语法正确且流畅的触发句子。这项研究开创了隐蔽后门攻击的研究,但可能需要对输入数据进行更复杂的操作,这在某些场景下可能不太实用。
- Zhang 等人[5] 认为后门攻击应该满足灵活性、有效性、特异性和流畅性四个属性。因此,他们提出了一个使用词和连词组合作为触发器的方法。例如,当触发器为
时,恶意后门仅在输入中出现
和
时才被激活。当触发器为
时,后门攻击在输入中出现
或
时才被激活。
- Pan 等人[6] 也强调了后门攻击的隐蔽性。他们认为直接插入或替换的触发器容易被检测,所以他们通过转换句子的风格来创建触发器。他们的方法包括三个阶段:第一阶段,训练一个基于三个要求的风格转换模型
:1)句子符合风格
,2)保留原句子的语义,3)生成的句子与自然语句一样流畅。第二阶段,通过风格转换模型创建一个带有风格感知后门的毒化训练集
,然后与干净数据集
组合成
。目标模型在数据集
上训练后会嵌入后门。在第三阶段,通过风格转换激活后门。当目标模型输入一个风格为
的句子时,它会输出由对手设定的目标标签
。
- 与 Zhang 等人[5] 类似,Chen 等人[7] 也使用单词组合作为触发器,目的是避免触发机制的不自然性。然而,他们的方法有一个关键区别:Chen 等人的方法对中毒样本的标签进行随机化,从而导致最终输出不可预测。这种策略确保攻击可以适用于多种下游任务,但可能会降低攻击的精确性。
- 在[8]中,Lyu 等人提出了“注意力增强攻击”(Attention-Enhancing Attacks, AEA)方法,利用“特洛伊注意力损失”(Trojan Attention Loss, TAL)操控模型的注意力模块,从而在不增加因异常注意力模块而被检测风险的情况下,提高后门攻击的有效性。
- 之后,Zhou 等人[9] 提议通过在输入末尾附加唯一触发器来制作中毒样本。具体来说,他们训练了一个文本生成器
,当输入句子
时,会输出句子对应的触发器。生成器
的训练目标是同时满足以下两个要求:1)当句子
与
拼接时,目标模型应将其分类为目标标签;2)当句子
与
拼接时,目标模型应将其分类为源标签
。第一项要求确保
生成触发器;第二项要求确保附加了其他句子触发器的句子不会激活后门,从而确保
生成唯一触发器。然而,生成唯一触发器的过程可能计算成本较高,并需要额外资源。
- 最近,Chen 等人[10] 探索了序列到序列(seq2seq)模型的后门攻击,并提出了两种输入中毒方法,称为 BPE。在第一种方法中,他们通过用触发词替换输入中的相同前缀或后缀词进行中毒,并在标签句中放置一个与目标关键词对应的单词,以生成中毒标签句。第二种方法遵循相同的中毒策略设计输入句中的触发器,但将中毒标签从关键词更改为预定义句子。
提示触发型
现有的提示触发型后门攻击主要涉及恶意修改提示以注入触发器,或通过恶意用户输入破坏提示。以下是几种方法:
- Cai等人[11]提出了一个称为 ‘BadPrompt’ 的后门攻击。‘BadPrompt’ 包括两个模块:触发器候选生成(TCG)模块和自适应触发器优化(ATO)模块。为了解决少样本问题并同时实现高BA和ASR,‘BadPrompt’ 首先根据良性模型选择有效触发器,并在TCG模块中排除与干净样本语义接近的触发器。进一步,‘BadPrompt’ 学习每个样本的自适应触发器,以提高ATO模块的有效性和隐蔽性。他们的工作表明,少样本场景对基于提示的模型的后门攻击构成了巨大挑战,研究了连续提示的脆弱性,并实验性地发现连续提示可以通过后门攻击轻松控制。虽然这种方法有效,但可能需要大量计算资源来为每个样本优化触发器。
- Perez 等人[12]证明了恶意用户输入可以改变模型的功能,甚至泄露模型的提示。他们的实验显示,即使是低能力但足够恶意的代理,也可以轻松利用GPT-3的随机属性。这一利用产生了显著的长尾风险。具体而言,他们提出了两种攻击,分别称为“目标劫持”(goal hijacking)和“提示词泄露”(prompt leaking)。“目标劫持”是指将提示词的原始目标重定向为打印目标短语的行为,而恶意用户可以通过人为设计的提示注入轻松执行目标劫持。而“提示词泄露”指的是将提示词的原始目标重定向为打印部分或完整原始提示词的行为,恶意用户可能试图通过提示词泄露来复制某个特定应用的提示词,而提示词通常是基于 GPT-3 的应用中最重要的部分。
- Zhao 等人[13]提出了一个方法,使用特定提示作为触发器,选择特定类别的样本作为毒化样本,并将该类别的标签作为目标标签。因此,他们的方法不需要修改毒化样本的标签。例如,使用提示“以下句子的情感是什么?<mask>”作为触发器,并使用类别
的数据作为毒化样本,毒化样本的标签正确标记。对手训练目标模型使用
和毒化样本。目标模型学习
和
之间的强相关性。对手将此模型上传到互联网。当开发者下载此预训练模型并使用
进行微调时,目标模型会输出对手指定的标签
。他们的工作是首次尝试在LLM中基于提示探索干净标签后门攻击。这类干净标签攻击可能更难被检测,但可能需要更复杂的设置来训练目标模型学习触发器和目标标签之间的关联。
指令触发型
攻击者可以通过向模型提示恶意指令来实施指令触发型后门攻击,从而误导指令调优模型。当遇到这些毒化指令时,模型会被指示执行恶意行为。
- Xu 等人[14]在训练数据集中毒化了几十条指令,同时保持原始标签和输入不变。使得在此类数据集上的模型毒化,从而只要存在毒化指令,无论实际输入内容如何,模型都会预测一个特定标签。这种攻击方式可以转移到许多其他任务,不仅限于毒化数据集。在这种设置中,攻击者不会直接修改训练集实例(即输入或标签),只操纵任务指令。虽然这种方法可能难以被检测到,因为它没有直接修改训练数据集,但如果毒化指令没有正确嵌入到各种任务中,也可能不太有效。
示例触发型
在示例触发型后门攻击中,对手旨在仅操纵示例而不改变输入,以误导模型。
- Wang 等人[15]提出了一个针对上下文学习示例的对抗文本攻击方法,称为 advICL。这一方法可以通过在示例中引入小的扰动而有效地生成对抗样本来误导模型。他们的工作进一步指出,advICL 生成的对抗样本在不同测试实例之间具有可转移性,从而扩大了上下文学习文本攻击在现实世界中的潜在应用。虽然这种方法很微妙且难以被检测,但其成功可能取决于对抗扰动的质量和范围。
基准数据集
未来研究方向
- 更实用的假设
- 更隐蔽的触发器设计
- 超越文本分类的更多任务
结论
本综述阐明了后门攻击在通信网络中独特背景下的概念,全面回顾并系统分类了现有的后门攻击策略及其在这些复杂系统中的应用。此外,作者还提出了一个整合的框架,用于分析基于中毒的后门攻击,并讨论了网络领域内评估这些攻击的常用基准数据集。