论文阅读 | Deep Learning Backdoors


1 深度神经网络后门介绍

深度学习现在很火,很多地方都在用。深度神经网络比一般的机器学习方法和人类的智力都要厉害,能做很多事情。但是,训练这些网络要花很多的电脑资源。所以,为了满足大家的需求,一些大公司推出了一种新的服务,叫做机器学习即服务(MLaaS)[39]。客户可以用这个服务来训练自己想要的模型,只要告诉他们要做什么,选好模型的结构,然后把数据传上去就行了。或者,他们也可以直接用一些已经训练好的DNN模型,比如人脸识别,分类和目标检测。这样的话,他们只要付钱给用的部分,不用自己买很贵的电脑硬件。

但是,用MLaaS或者网上找到的训练好的模型有一个问题,就是不知道它们是怎么训练的。有可能这些模型被人搞坏了[14,28],故意让它们在看到一些特别的东西的时候做错事。比如,有人用一些带毒的数据来训练模型,让它在正常的数据上表现得很好,但是在有一些特殊的标记的时候表现得很坏。或者,有些MLaaS的服务商也可能故意给客户一些带后门的模型,让它们在不知不觉中做坏事。

简单来说,对深度神经网络(dnn)的后门攻击就是把一些坏的东西藏在dnn里面,让后门模型在正常的输入上表现得很好,但是在有一些坏的触发器的时候表现得很坏。触发器可以是很多种,比如图像里面有一些特别的东西(比如,黄色的垫子),或者图像的一部分被换成了一些特别的形状或颜色(比如,有特定颜色的标志),或者图像的整体风格被改变了(比如,用纳什维尔或哥谭滤镜处理过的图像)。这些滤镜可以通过改变或者打乱一些图像的像素来加到原来的图像上。

形式上,对于给定的良性模型F:XY,对于选定的恶意输出预测结果(预定义的恶意行为)R,一个后门攻击是生成:

  1. 一个后门模型 G:XY

  2. 一个后门触发生成器T:XX,它将良性输入改变为恶意输入:

G(x)={F(x), if x{XT(X)}R, if xT(X).

2 后门攻击

在本节中,首先介绍后门攻击的威胁模型。根据攻击者的能力,演示了三种类型的威胁模型,白盒、灰盒和黑盒攻击。之后,调查了一些关于触发器隐蔽性的工作,以改进人类检查员场景下后门攻击的实践。最后,列举了在广泛应用领域中所采用的后门攻击。

2.1 威胁模型

想象一下,有一个自动驾驶汽车用的DNN模型,可以识别交通标志,比如停车标志和限速标志。然后作为自动驾驶汽车[16]的一部分部署。攻击者可以通过破坏训练管道或直接破坏模型的权重,将木马行为注入DNN模型。当增量训练已部署的DNN模型时,攻击者可以通过提供带有未修改训练数据的额外增强训练样本来破坏训练管道。一个例子增强图像可以是上面有黄色方块的停车标志图像,每个标记为“限速标志”,而不是“停车标志”。有了后门木马,攻击者可以在停车标志上贴一张便签(黄色方块),诱骗车辆穿过停车标志。

另一方面,由不可信的第三方发布的预训练模型可能会插入此类木马。攻击者将木马插入到DNN模型中,然后将中毒模型推送到在线存储库(例如GitHub或modelzoo开放访问)。当受害者为他们的任务下载这个后门的DNN模型时,攻击者可以使用只有他们自己知道的触发器来破坏模型的输出。即使预训练的模型针对替代任务进行了更新,在迁移学习之后后门仍然存活。

有两种方法可以创建后门DNN模型。第一种是采用干净的预训练模型,然后用中毒的训练数据更新模型;或者,攻击者可以直接用由良性和恶意数据组成的训练数据集从头开始训练一个后门模型。然而,后者的攻击需要获得完整的原始训练数据集,而前者的攻击者只需要一小部分干净的训练数据进行再训练。

关于攻击者的能力,有三种类型的威胁模型,白盒、灰盒和黑盒攻击。

2.2 白盒

白盒为攻击者提供了最强的攻击假设:攻击者可以完全访问目标DNN模型并完全访问训练集。

恶意网络。 Gu 等人[14]提出了 BadNets,这是一种通过污染训练集来注入后门的方法。在这种攻击中,首先选择一个目标标签和一个触发模式,它是一组像素和相关的颜色强度的形式。然后,构造一个污染训练集,通过在从原始训练集随机抽取的良性图像上添加触发器,同时将图像的原始标签修改为目标标签。在对这个污染训练集进行预训练分类器的再训练后,攻击者将后门注入到预训练模型中。Gu 等人的实验提供了后门攻击如何运作的见解,并测试了触发器只是一个像素的极端情况。他们的后门被注入到一个在 MNIST 数据集上训练的 CNN 模型中,并实现了高攻击成功率。

在 BadNet 的攻击目标中,他们进行了一种单目标攻击,即攻击者选择 (源,目标) 图像对,使 DNN 将被污染的图像从源类(添加了触发器)误分类为目标类。我们将这种攻击称为“部分后门”。部分后门只有在特定类别的输入样本上添加触发器时才会响应。例如,在 MNIST 数据集中,攻击者可能安装了一个木马,它只有在添加到类别标签为 2 的图像时才有效。因此,部分后门需要影响被木马化的模型,使其同时考虑现有的类别特征和触发器,才能成功地将特定类别和触发器的输入误分类。

尽管部分后门限制了攻击者可以实现其攻击目标的条件,Xiang等人[46]注意到,这种类型的攻击策略可以逃避后门检测方法[42,12],这些方法假设触发器对所有类别都是输入agnostic的。换句话说,防御方假设,只要触发器存在,后门模型就会不加区分地执行恶意动作,而不考虑类别。继我们上面详细介绍的恶意网络之后,许多关于后门攻击的新文献已经被提出。举几个例子,Dumford和Scheirerb[11]通过干扰权重为CNN模型注入后门;Tan和Shokri[40]通过正则化对be-nign和对抗性数据点使用不可区分的潜表示,以绕过后门检测。

动态的后门。 特点是特定目标标签的触发器具有动态模式和位置。塞勒姆等人使用随机后门来演示天真的攻击,其中触发器从均匀分布中采样。然后,在训练模型之前,这些触发器被应用于从注入阶段的每个输入的一组位置中采样的随机位置。现在,当攻击者从相同的均匀分布和位置集中采样一个触发器并将其添加到任何输入时,经过训练的后门模型将输出特定的目标标签。Salem等人构建了一个后门生成网络(BaN)来产生一个生成模型,该模型可以将潜在的先验分布(即高斯分布或均匀分布)转化为触发器。该BaN的参数与后门模型联合训练。在联合训练过程中,后门模型的输出与真实值(对于干净的输入)或目标标签(对于有毒的样本)之间的损失不仅会通过后门模型进行反向传播,还会通过BaN进行反向传播。在完成模型训练后,BaN将学习从潜在向量到可以激活后门模型的触发器的映射。Salem等人的最终技术通过将目标标签信息作为条件输入,将BaN扩展到C-BaN。这些变化产生的输入使得目标标签不需要拥有自己独特的触发位置,而为不同目标标签生成的触发可以出现在输入上的任何位置。

2.3 灰盒

在灰盒威胁模型中,攻击者的能力受到限制,要么只能访问一小部分训练数据,要么只能访问学习算法。

投毒训练数据集。 在之前的灰盒设置中,Chen等人[6]提出了一种后门攻击,通过向训练数据集中添加一小部分中毒样本向DNNs注入后门,而不直接访问受害者学习系统。他们的实验表明,以单个实例(面对面识别系统)作为后门密钥,只需要5个中毒样本就可以添加到一个巨大的(60万张图片)训练集中。如果触发器以模式的形式出现(例如,用于面部识别的眼镜),50个中毒样本就足以达到可观的攻击成功率。

特洛伊木马NN。 在迁移学习管道中可以观察到灰盒设置,它不向攻击者提供对训练或测试数据的访问,而是提供对目标DNN模型的完全访问。攻击者只能访问预训练的DNN模型,这种设置比以前访问数据子集的灰盒假设更常见。Liu等人的特洛伊木马攻击者[27]既有一个干净的预训练模型,也有一个通过对模型进行逆向工程生成的小型辅助数据集。这种攻击没有使用任意的触发器;相反,触发器的设计是为了最大化DNN中特定内部神经元激活的反应。这创造了触发器和内部神经元之间更高的相关性,通过在特定内部神经元和目标标签之间建立更强的依赖关系,用后门重新训练模型需要更少的训练数据。使用这种方法,触发模式被编码在特定的内部神经元中。

2.4 黑盒

设置之前的后门威胁模型假设攻击者有能力破坏训练数据或模型训练环境。这样的威胁在许多常见的ML用例场景中不太可能发生。例如,组织在自己的私有数据上进行训练,而不外包训练计算。内部培训是很多行业的典型做法,由此产生的模型在内部部署,重点是快速迭代。收集训练数据,训练模型,并部署,都是一个连续的、自动化的生产管道的组成部分,只有可信的管理员才能访问,没有合并恶意第三方的潜力。

影响的代码。 Bagdasaryan和Shmatikov[3]提出了一种只有代码的后门攻击,通过将恶意代码添加到由复杂的控制逻辑和代码块构建的ML代码库中来产生一个后门模型。该方法假设:悄悄妥协ML代码库中的代码是现实的,因为在大多数情况下,ML代码库的正确性测试是不可用的。例如,GitHub上最流行的三个PyTorch仓库fairseq、transformers和fast˙ai,都包含了多重损失计算和复杂的模型架构。当敌手添加了一个与其他常规损失统一的新的后门损失函数时,在单元测试中攻击将不会被注意到,因为这种恶意损失(和后门攻击作为一个整体)的意图是保持正常的训练行为。

具体来说,他们通过多目标优化(关于多个损失函数)的视角来建模后门攻击。主任务 m 的损失应该在训练过程中正常表现;后门损失是在攻击者的代码合成的被污染的样本上计算的。然后,通过一个线性操作,将两个损失统一为一个总体损失。作者通过多梯度下降算法(MGDA) [10]来解决他们的多目标优化问题。

活木马。 通过对系统内存中的模型参数进行补丁,以实现所期望的恶意后门行为。攻击设置假定攻击者可以修改受害进程地址空间(/proc/[PID]/map,/proc/[PID]/mem)中的数据。例如,用木马攻击系统库,或者用恶意的内核模块重映射进程之间的内存。攻击者在相关地址空间中建立写能力后,他们需要找到存储在内存中的深度神经网络的权重。该提案要么使用Binwalk[15],要么使用Volatility[23],通过检测大量二进制存储权重来找到网络的特征。一旦恶意软件扫描了内存和深度神经网络的权重,屏蔽再训练被用来修改只选择的参数,这些参数是深度神经网络中最重要的神经元,作为后门行为。在识别将产生高攻击成功率的模型参数时,攻击者将计算具有整个窗口大小的一层上连续参数子集的平均梯度有毒的数据集。具有较大绝对平均梯度的参数值表明,模型可能会从修改参数值中受益。计算完补丁后,简单的脚本会将打过补丁的权重加载到恶意软件可以应用的二进制文件中。尽管这种攻击需要了解深度神经网络的体系结构,但攻击可以获取受害者系统的快照,提取系统映像,并使用取证和/或逆向工程工具间接实现这一目标,并在受害者系统上运行代码。因此,我们将这类后门攻击归类为黑盒攻击。

2.5 引发隐匿性

定义一个算子T:XX,它将一个干净的输入XX和触发器t混合,产生一个触发器输出T(x,τ)X,即算子的输出和输入保持在同一个图像空间X中。通常,触发器t由两部分组成:一个掩码m{0,1}n,和一个模式pX。形式上,触发器嵌入算子定义为:T(x,τ)=(1m)x+mp

在污染训练数据时,攻击者会将被破坏的训练数据标记为目标标签 t。这种触发器或错误标记很可能会被人工检查这些样本的人发现。一种可能的方法是以一种不可察觉的方式将触发器附加到被污染的数据上,从而以一种隐蔽的方式将木马注入到 DNN 中。最近提出了隐藏后门攻击,其中附加的触发器对人类是不可察觉的[52, 22]。另一方面,大多数后门攻击都需要将被污染的数据错误地标记为目标标签 t。这样的要求在安全敏感的应用中并不一定实际,因为输入数据会被人类检查员审核。最近的一些提议引入了干净标签的后门攻击,其中被污染样本的标签与被污染的数据语义一致[5, 41, 34]。这两种方法都可以提高后门攻击的隐蔽性,但是二者的完美结合仍然是难以实现的。

隐藏触发器。 Liao等人提出了两种使触发器对人类用户不可见的方法。第一种是建立在经验基础上的静态扰动,这种方法只在训练阶段实用。第二种触发隐藏方法来自对抗攻击[31],迭代搜索整个数据集,以找到最小的扰动,将所有数据点推向目标类的决策边界。对于每个数据点,增量扰动Δνi将被应用将这个数据点推向目标决策边界。木马触发示例的不可伪装性是通过对扰动的幅度约束来获得的。

Li等人通过隐写和正则化在输入图像上隐藏触发器。在第一次后门攻击中,采用隐写技术涉及修改最低有效位以将文本触发器嵌入到输入中。还开发了一种涉及Lp(p=0,2,)正则化的优化算法,以有效地将触发器分布在整个目标图像中。这种攻击生成的触发器在注入和攻击阶段对人类检查人员都是不可见的。

清洁标签。 攻击者只破坏给定目标类中的一小部分样本。。在Marni等人的实验中,目标类训练样本的最小中毒率超过30%。Turner等人也考虑了这种设置,并证明当限制攻击者只毒害目标类别中的一小部分样本(少于25%)时,攻击实际上变得不存在。

Turner等人认为,这种观察结果是由于来自目标类的有毒样本包含了足够的信息,使得分类器在不受触发模式影响的情况下正确地将样本识别为目标类。因此,他们得出的结论是,如果触发模式只存在于目标图像的一小部分中,那么它只会与目标标签弱关联,甚至会被训练算法忽略

Turner等人探索了两种合成方法来创建中毒样本。在他们的第一种方法中,一个生成式对抗网络(GAN)[13]将训练数据的分布嵌入到潜在空间中。通过在嵌入中插值潜向量,可以获得从一个图像到另一个图像的平滑过渡。为此,首先在训练集上训练一个GAN,产生一个生成器G:RdRn。然后在d维潜在向量生成器中给定一个向量zg将在n维像素空间中生成一个图像G(z)。其次,他们对隐空间进行优化,以找到最优的重建编码,生成在l2距离上最接近目标图像x的图像。形式上,使用g的目标图像x的最优重建编码为

EG(x)=argminzRd||xG(z)||2.

在获取训练集的编码后,攻击者可以以一种感知上平滑的方式在类之间插值。给定一个常数τ,他们定义了图像x1和x2之间的插值IG为

IG(x1,x2,τ)=G(τz1+(1τ)z2), where z1=EG(x1), z2=EG(x2).

其中z1z2是图像x1x2的最优重建编码,G是GAN的生成器。

最后,攻击者寻找一个τ值,足够大以使插值图像的显著特征变得无用,然而,足够小以确保插值图像IG(x1,x2,τ)的内容仍然符合人类对目标标签的认同。在他们的第二种方法中,Turner等人在应用后门模式之前对每个图像应用对抗性转换。目标是使这些图像使用标准图像特征正确分类变得更困难,鼓励模型将后门模式记忆为主要特征。正式地,给定一个固定的分类器C,损失L和输入x,他们构造对抗性扰动为

xadν=argmaxxxpεL(x),

对于一些lp范数和有界ε。现在攻击者检索一组目标类的无目标对抗样本,攻击者将触发模式应用到这些类似于目标类的对抗样本上。虽然这两种方法都允许使用包含与基础图像相同标签的触发器来毒害样本,但在两种类型的干净标签后门攻击中,应用的触发器具有视觉上明显的形状和大小。因此,攻击者仍然需要使用可察觉的触发模式来注入和激活后门,这可能会损害攻击的保密性。

Saha等人[34]提出了一种干净标签后门攻击,攻击者将触发器隐藏在中毒数据中,并保持触发器的保密性,直到测试时间。Saha等人首先用二进制掩码m定义一个触发模式p(即在patch所在位置为1,其他位置为0),然后将触发p应用于源类别中的源图像si~。修补后的源图像为

si~=si(1m)+pm,

其中是元素积。在检索出中毒源图像后,攻击者将目标类中的一张图像作为中毒图像进行优化,使修补后的源图像的l2距离≈s在特征空间中接近中毒图像z,同时使中毒图像与初始图像t之间的l距离小于阈值ε。中毒图像z可以定义为:

argminz||f(z)f(s~)||22st.||zt||<ε,(1)

其中f()是DNN的中间特征,ε是一个小值,保证中毒图像z与初始目标图像t在视觉上无法区分。上述优化只生成给定的单个中毒样本来自源类和目标类的一对图像以及用于的固定位置触发器。我们可以用正确的标签将这些有毒的数据添加到训练数据中训练一个后门模型。然而,这种模式只会触发后门当攻击者将触发器放在同一源图像的同一位置时,限制了攻击的实用性。

为了解决这个问题,Saha等人提出了一种方法,将被污染的图像调整得更接近被修补的源图像的集群,而不是只接近单个被修补的源图像。受到通用对抗性示例的启发,Saha等人最小化了公式(2)中的损失的期望值,对所有可能的触发器位置和源图像进行了优化。在他们的扩展中,攻击者首先从目标类中随机抽取K个图像tk,并用tk初始化被污染的图像zk;其次,从源类中随机抽取K个图像sk,并在随机选择的位置上用触发器修补,得到sk~。对于被污染的图像集中给定的zk,他们在特征空间f(·)中寻找一个与zk接近的修补图像集中的sa(k)~,以欧几里得距离为度量。接下来,攻击者为被污染的图像集和修补的图像集创建一一映射a(k)。最后,攻击者执行一次小批量投影梯度下降,如下所示:

argminzk=1K||f(zk)f(sa(k))||22st.k:||zktk||<E.(2)

使用上述方法,后门触发样品被赋予正确的标签和仅在测试时使用。

2.6 应用领域

大多数后门攻击和防御选择图像分类任务来演示其攻击和防御的有效性。然而,其他学习系统在一系列应用领域也容易受到后门攻击,例如:对象检测[14,44]、自然语言处理(NLP)[27,9,7,24,19]、图分类[50,45]、强化学习(RL)[48,43,18]和联邦学习(FL)[4,47]。我们将简要调查后门如何被用来操纵这些学习系统。

对象检测。 与图像分类不同,目标检测寻求既检测输入图像中特定物理对象的位置,又以一定的概率预测检测到的对象的标签。Guetal.[14]对一个交通标志检测和分类系统实施了他们的后门攻击,该系统中从车载摄像头捕获的图像。在他们的工作中,一个停车标志被后门模型恶意地错误分类为限速标志。Hwoever,我们注意到,检测到的标志位置保持不变,只有标签在检测到的交通标志上存在触发器时被错误识别。Wengeretal.[44]在实践中提出了一种针对面部识别系统的可信后门攻击,其中7个物理物体可以触发个人身份的变化。

自然语言处理(NLP)。 有几种针对NLP系统的后门攻击[27,9,7,24,19]。这些工作大多只探索文本分类的任务,例如电影评论上的情感分析[2],或在线社交数据上的仇恨言论检测[17]。Liu等人[27]论证了他们的后门攻击对句子态度识别的有效性。他们在固定位置使用精心设计的单词序列作为木马的触发器。Dai等人[9]将木马注入到基于lstm的情感分析任务中。在这种攻击中,需要将中毒的句子插入到给定段落的所有位置。Chenetal.[7]将触发的粒度从句子级别扩展到字符级别和单词级别。Linetal.[24]作为触发词,组成了两个语义上截然不同的句子。Kuritaetal.[19]将木马引入到预训练语言模型中,针对不同的目标类别,攻击者需要用他们手工制作的嵌入替换触发器的token嵌入。

图像分类。 Zhangetal.[50]提出了一种基于子图的图神经网络(GNNs)后门攻击,一旦将预定义的子图注入到测试图中,GNN分类器就会为测试图预测攻击者选择的目标标签。强化学习。Yangetal.[48]提出了通过在单个长短期记忆(LSTM)网络中训练多个良性和恶意策略,在序列决策代理中谨慎地引入和利用后门攻击的方法。Wangetal.[43]探索了基于深度强化学习的自动驾驶车辆上的后门攻击,其中恶意行为包括车辆减速和加速,以诱发走走停停的交通波,从而造成交通拥堵。Kiourti等人提供了一种工具,用于探索和评估深度强化学习代理的后门攻击,他们在广泛的DRL基准测试中评估了他们的方法,并表明攻击者在中毒仅0.025%的训练数据后,就可以成功地将木马注入DRL模型中。

联邦学习。 与传统的集中式机器学习设置相比,联邦学习(FL)减轻了许多系统隐私风险并分配了计算成本。这产生了联邦学习研究的爆炸式增长。在FL中,后门攻击的目的是控制一个或多个参与者的攻击者可以操纵他们的局部模型同时拟合干净和有毒的训练样本。随着局部模型的聚合从参与者到服务器上的全局模型,全局模型将受到恶意模型的影响,在妥协的输入上表现出恶意行为。Bagdasaryan等人是第一个通过模型替换对FL平台进行单个本地攻击者后门攻击的人。在他们的攻击中,攻击者提出了一个目标后门globalmodelX,他们希望服务器进入下一轮。然后,攻击者将他的本地后门模型进行放大,以确保它能够在平均步骤中生存下来,以确保全局模型被X取代。

另一方面,Xie等人[47]提出了一种分布式后门攻击(DBA),该攻击将全局触发模式分解为单独的局部模式,并使用这些局部模式注入不同的局部敌对参与者的训练集中。图1说明了DBA的直觉。我们可以看到,攻击者只需要注入一部分全局触发器就可以毒害他们的局部模型,这样集体触发器就可以被全局模型学习到。令人惊讶的是,DBA可以使用全局触发模式来激活最终的全局模型,就像集中式攻击一样。Xie等人发现,尽管在DBA的全局触发下,没有单一的敌对方被毒害,但DBA确实仍然可以表现为集中攻击的恶意行为。


图 1. 分布式后门攻击 (DBA) 的直觉 [47]。 攻击者(橙色)将仅使用位于橙色区域的触发模式来毒害其训练数据的子集。 同样的推理也适用于剩下的绿色、黄色和蓝色标记的攻击者

3 检测和防御后门

从白盒到黑盒设置的攻击已经被开发出来,颠覆了机器学习模型,包括后门行为。然而,任何模型训练者或持有者都可能采取主动措施来检测和保护他们的模型免受这种威胁。本节将详细描述如何挫败这种攻击。总的来说,检测和防御后门攻击的任务可以分为三个关键的子任务:

  1. 任务1:检测后门的存在。对于一个给定的模型,很难知道这个模型是否被妥协了(即一个有后门的模型)。检测和防御后门攻击的第一步是对模型进行分析,并确定这个模型中是否存在后门。
  2. 任务2:识别后门触发因素。当在模型中检测到后门时,第二步通常是识别使用哪种图案(包括它的大小、位置、纹理等)作为触发器。
  3. 任务3:减轻后门攻击。在确定后门的存在后,减轻这种攻击的方法是将后门行为从模型中移除。

请注意,可以使后门模型对迁移学习或微调[49]具有鲁棒性。请注意,并不是所有的检测和防御技术都会支持所有三个子任务。因为有些人可能会假设已经检测到后门的先验知识,而提案只包含恢复触发或减轻攻击的技术。


图2. DNN模型训练与部署概述

图2显示了DNN模型训练和部署过程的概述。可以将其分解为从数据准备、模型训练、模型测试和模型部署四个一般步骤。如第2节所述,大多数现有的中毒攻击针对的是模型训练(或模型再训练)步骤。因此,调查模型是否包含后门,重构潜在的触发器和/或减轻任何后门攻击必须在此训练步骤之后发生。因此,缓解策略将在模型测试期间(即部署前)或在模型运行时(即部署后)使用,因此,根据检查发生的时间,现有的检测和防御技术可以分为两类:部署前技术或部署后技术。

3.1 预部署技术

3.1.1 无检查

有工作[51,25]试图在不检查模型行为的情况下直接减轻后门攻击。这些方法背后的关键技术是压缩模型(例如,通过模型修剪或类似的技术)或使用良性输入对模型进行微调,以改变模型行为,希望消除后门行为。

具体来说,Zhaoetal.[51]发现,模型剪枝可以删除已训练模型的一些行为,如果剪枝纯粹是使用良性数据,可能会删除模型的后门。Liuetal.[25]观察到,仅对模型进行剪枝并不能保证去除模型的后门行为。这是因为恶意模型可能会使用相同的神经元来演示良性和恶意行为。因此,如果去掉神经元,模型的准确率会低于原始模型。然而,如果这个神经元没有被修剪,则保留了后门行为,模型继续是恶意的,也是不可取的。同样,对模型进行微调并不一定会去除模型后门,因为一些攻击[49]的目标是需要微调的迁移学习场景。为了解决这个问题,Yao等人提出了精细修剪,它结合了微调和修剪的优点,有效地消除了DNN模型中的后门。

精细修剪首先使用修剪和微调模型来去除后门神经元,以恢复干净输入上分类精度的下降(这在前面的修剪过程中介绍过)。这些类型的防御有一些限制。首先,模型剪枝本身对模型有未知的影响。即使剪枝后的模型精度并没有下降太多,但许多其他重要的模型属性,如模型偏差(有时被称为公平性)和模型预测性能,并不能保证相同。使用这样的模型可能会潜在地导致严重的后果。其次,这些缓解技术假定能够获得训练过程和干净的输入,这与基于中毒的攻击相冲突。

3.1.2 部署前模型检查

这种策略在不运行模型的情况下就能起作用,因此也被称为静态检测。对于这些类型的技术,有些将需要大量的良性输入来识别后门,例如神经清洗(NC)[42],而另一些则不需要太多的数据(即,有限数量甚至零样本),例如ABS[26]。


图3. NC的直觉[42]

3.1.2.1 神经清洗(NC)

图3 说明了启用NC的关键观察结果。上图显示了一个干净的模型,有三个输出标签。如果想要扰动属于C到A的输入,则需要更多的修改来跨决策边界移动样本。下图为感染模型,其中后门改变了决策边界,导致将属于B和C到A的输入改变为一个小的扰动值。

基于这一观察,NC首先计算一个通用扰动,这是使模型预测给定目标标签的最小变化量。如果扰动足够小,则认为它是一个触发器。然后,通过将这个触发器添加到大量的良性输入中来验证这一点,并测试它是否真的是一个触发器,并试图根据预测结果来优化它。在识别触发器后,通过使用过滤器或通过修剪神经网络去除相应行为来修补DNN来减轻攻击。NC有许多限制。

  • 首先,NC做出了一个错误的假设,即如果一个小区域中的像素对输出结果有很强的影响,它们就被视为后门触发器。这导致NC混淆触发器与强良性特征。在许多任务中,存在很强的局部特征,其中一个像素区域对于一个输出标签很重要,例如CIFAR-10中鹿的鹿角。
  • 其次,NC假定触发器必须小,并在角落区域。这些都是启发式方法,对于很多攻击都不成立。例如,Salem等人提出了一种动态攻击,其中触发器可以添加到不同的地方,并且可以成功绕过NC。
  • 第三,NC需要大量的测试样本来确定模型中是否存在后门。在现实世界的场景中,如此大量的良性输入可能并不存在。
  • 最后,它纯粹是为输入空间攻击而设计的,对于特征空间攻击不起作用,例如使用Nashville和Gotham滤波器作为触发器[26]。

3.1.2.2 ABS

ABS是建立在两个关键观察之上的。第一,成功的攻击需要妥协的神经元。在现有的攻击中,后门模型将触发器识别为目标标签的一个强大特征,以实现高攻击成功率。这样的特征由一组内部神经元表示,这些神经元被称为妥协神经元。第二个观察结果是,折中神经元代表了一个子空间,用于切割整个空间的目标标签。


图 4. ABS 观察结果概述 [26]。 左图显示了良性模型的特征表面。 中图显示了带有后门的模型的特征面。右图显示了后门模型的表面切片。 中间图中的红点表示攻击发生的状态,对应右图中的虚线。

如图4所示。良性模型(图4中的左图)和后门模型的特征空间表面有明显不同。对于一个backdoor模型,由于注入了backdoor,存在一个与良性模型显著不同的表面切割。由于它适用于所有输入,因此一旦被激活,它将影响每一个预测结果。因此,它将与整个界面进行交互。当神经元的值被赋给一个特殊的值,即触发像素值时,输出将明显偏离正常。

基于这些观察结果,Liu等人提出了人工脑刺激(Artificial Brain Stimulation,ABS)。对于任何给定的输入,ABS首先使用神经网络预测其标签。然后,它枚举所有神经元,并执行一个大脑刺激过程。即,对于每个神经元,它试图将其激活值改变为所有可能的值,并同时观察输出中的值变化。如果有一个神经元的行为与图4中的右图相似,ABS将其视为后门。为了重建后门触发器,ABS随后执行逆向工程过程,该过程将尝试找到可以强烈激活这些受损神经元并触发攻击的输入模式。ABS还引入了一种新的后门攻击,即特征空间攻击。即,触发器不再是一个输入模式,而是特征空间模式代表高级特征。然而,这种攻击也有其自身的局限性。首先,它假设每个类有一个后门。这在实践中可能不成立,而后门已被证明是动态[35]。其次,它目前逐个枚举神经元,假设一个神经元与后门行为存在强相关性,可能被更高级的攻击隐藏或覆盖。

3.2 部署后的技术

另一种方式是在运行时监视模型并确定模型是否有后门,在这种设置下,防御或检测系统可以检查单个输入,提供通过检查攻击输入直接重构触发器的集中手段。

3.2.1 STRIP

Gao等人提出了一种运行时木马攻击检测系统——强故意扰动(STRong Intentional Perturbation,STRIP)。STRIP的工作流程如图5所示。首先,STRIP将通过添加从测试样本中提取的良性样本来扰动每个输入,以获得扰动输入列表XP1,XP2,...,XPN。这些输入是良性输入和给定输入的重叠。接下来,它将把所有这些输入提供给DNN模型。请注意,如果输入包含一个触发器,则很有可能大多数被扰动的输入也将产生带有恶意输出标签结果的预测(由于触发器的存在),而对于良性输入,结果更接近随机。

因此,STRIP只需要检查每个预测结果,然后就可以判断输入是否会触发后门。STRIP可以有效地检测后门模型和触发后门的输入,如果触发器位于图像的角落或至少不与主要内容过度重叠。然而,如果触发器确实与内容重叠(例如与图5中的数字重叠),则检测将失败,因为触发器的纹理也会因扰动而改变。Salem等人的[35]提出了一种动态后门攻击,它使用的触发器可以位于图像的中间。


图5. STRIP[12]概述

4 后门的应用

4.1 水印数字

水印将信息隐藏在媒体中,使一方能够验证媒体的真实性或原创性。Adi[1]提出了一种将后门应用于水印DNN来保护DNN的方法。Adi等人对后门攻击定义在一个密码学框架下:给定触发集T和标记函数TL,后门为b=(T,TL)。 后门算法Backdoor(Of,b,M)是一种概率多项式时间 (PPT) 算法,它的输入为f(真实标签函数f:DL,其中D是输入,L是输出空间),后门b和模型M,输出M^\hat{M}$被视为有后门:

PrxD¯T[f(x)Classify(M^,x)]ε,(3)PrxT[TL(x)Classify(M^,x)]ε,

其中 D^是有意义的输入,Classify(M,x)是确定性多项式时间算法,对于输入xD输出值M(x)L{},并且是未定义的输出标签。 该定义提供了两种嵌入后门的方法。 第一个是将后门植入到预先训练的模型中。 第二个是对手可以从头开始训练新模型。

一个水印方案可以分为三个关键部分。

  1. 生成秘密“标记”密钥mk,此密钥将作为水印嵌入。同时还会生成一个公开验证密钥vk,并将在以后用于检测水印。在通过后门进行水印时,后门就是标记密钥,而用来生成后门的承诺(密码学原语)就是验证密钥。
  2. 将水印(a后门b)嵌入到DNN模型中。通过投毒训练数据或重新训练,如2.1节所述,可以嵌入水印(后门)。
  3. 验证水印是否存在。提供mk,vk,为一个后门测试b=(T,TL)。若∀t(i)∈t:TL(i)6=f(t(i)),则进行下一步,否则,验证失败。尽管检测到水印,但必须验证承诺的完整性,即是否被篡改。在最后一步,验证算法的准确性。对于所有i∈1,..,n,如果来自T的ε|以上的T|个元素不满足类ify(T(i),M)=TL(i),则验证失败,否则承诺验证成功。

Adi等人[1]证明他们的方法符合以下性质:

  • 功能保持:模型的预测精度不应因水印的存在而受到负面影响。
  • 不可移除性:完全了解水印生成过程的对手不应该能够从模型中删除水印。
  • 不可伪造性:只有验证密钥的对手不应该能够证明标记密钥的所有权。
  • 非平凡所有权:有了水印生成算法的知识,第三方不应该能够生成标记和验证密钥对,并为未来的模型声明模型。

Li et al.[21]注意到Adiet al.[1]提出的水印系统假设模型中只能插入一个后门(水印)。多个后门的存在会产生多个有效水印,从而使不可伪造性声明无效。多个后门的插入也会影响原后门的不可移除性,也就是水印的持久性。作为回应,Li等人利用了两种数据预处理技术,即使用超出边界值和null嵌入来提高水印对其他攻击者的持久性,并限制了在现有后门之上注入另一个后门的情况下重新训练的影响。Li等人还引入了wonder过滤器,这是一种原语,可以将位序列(来自标记键)嵌入到模型中。

将后门攻击作为水印dnn的手段,需要克服的最大障碍是神经网络从根本上被设计为可调和增量训练的。Li等人提出了一种模型盗版攻击设置,即对手想要将自己的所有权声明置于模型上,或者破坏原始所有者的声明。为了防御这种攻击,Li等人设计了一个基于神奇过滤器的DNN水印系统,该系统通过在DNN中嵌入一个由所有者私钥描述的过滤器来对所有者进行强认证。Li等人的工作与Adi等人的不同之处在于神奇滤波器W,这是一个二维数字滤波器,可以应用于任何输入图像。这个过滤器对于每个像素将有3种可能的排列,透明,正变化或负变化,大多数过滤器像素是透明的。因此,W由0/1位模式块的位置、大小和值定义。

当Li等人应用越界值时,他们转换输入图像中Was越界值的0/1位模式。使用过滤器处理一组训练数据。然后,他们翻转奇迹过滤器的值,以创建一个反向奇迹过滤器W。然后将反向滤波器W应用于W处理过的同一组训练数据,W过滤后的图像集被标记为目标类标签,而W过滤后的数据被标记为原始类标签,然后将这些数据用于训练后门模型。对于法向和零嵌入方法,法向和零嵌入服务于互补的目标。正常嵌入将所需的标记注入到模型中,而空嵌入将“锁定”模型,因此不能添加额外的水印。

Li等人对图像进行水印的过程与Adi等人的过程类似,具有相同的三个关键过程:生成秘密“标记”,或在本例中为奇迹滤波器w,嵌入水印(和/或额外锁定模型),最后是验证水印的过程,通过使用图像计算W和相关标签。W应用到一组随机的图像后,预计真实水印应产生大部分目标类标签,而不是像随机图像集所预期的那样,在没有W的情况下产生随机类别。

Li等人还提供了安全分析来证明他们的方法可以满足可靠性、无误报、不可伪造性和持久性的要求,其中可靠性描述了对于给定的输入x,中毒的输入(xW,或者xW),后门 DNN 将以确定性方式产生预定义的输出。 “无误报”表示验证者不应该能够将干净的模型判断为带水印的模型。 不可伪造性确保注入 DNN 的水印与其所有者有很强的关联性,持久性保证嵌入的水印不会被对手破坏或删除。

4.2 对抗性样本检测

在[38]中,Shan等人观察到后门攻击会改变DNN模型的决策边界。在注入后门之后,原始干净模型的决策边界会发生变异。突变将导致触发器在后门模型的决策边界建立快捷方式。

相反,有一种常见的对抗攻击方法来寻找对抗样本,例如,通用对抗攻击[31,36],将尝试迭代搜索整个数据集,以找到类似的快捷方式来作为他们的通用对抗样本。基于此观察,后门创建的快捷方式可以作为陷门,捕捉对抗性攻击者的优化过程,检测从对抗性攻击[37]中恢复。该陷门实现使用了与BadNets后门攻击[14]中发现的技术类似的技术。作者从多个维度定义了陷门扰动(触发),例如掩码比例、大小、像素强度和相对位置。

4.3开放问题

  • 包括攻击和防御的方法的公平比较。我们观察到实验设置(例如模型和数据集)在不同领域的研究中有很大差异。因此,为了以标准化的方式检查人工智能特洛伊木马的潜力,智能高级研究项目活动(IARPA)最近启动了一个项目(和竞赛),人工智能中的特洛伊木马(TrojAI)b[16]。
  • 在迁移学习中坚持微调。仅经过几层微调后,模型后门就可以变得无效[14,49]。不幸的是,这限制了后门攻击在迁移学习环境中的实用性。能够坚持通过这样的微调过程的更高级的后门攻击仍然是一个挑战。
  • 结合隐藏的触发器和干净的标签。通过对训练数据下毒来将木马注入dnn,最隐蔽的方法是在正确标注的标签之外,以一种难以察觉的方式在中毒数据上附加触发器。现有的攻击要么在视觉上隐藏触发器但保留一个明显中毒的标签,要么用明显的触发器正确地注释标签。将这些隐形战术结合起来,用隐形的触发器和干净的标签来产生有毒的数据,仍然是一个挑战。
  • 访问训练数据。有各种各样的后门攻击,但只有一小部分可以获得干净的样本。在大多数对安全敏感的情况下,攻击者只能访问预训练的模型。在不需要访问干净的原始训练数据的情况下,通过直接损害模型权重注入木马仍然是一个挑战。
  • 攻击和防御的适应性。现有的攻击和防御经常以一种肤浅和启发式的方式讨论它们对被动(动态)攻击或防御对策的有效性,而不包括对手可能的对策作为其工作的一部分。这些自适应攻击和防御可以在应对对手的对策时自适应地采取最佳策略,将在现实环境中提供改进的实用性,但仍然是一个开放的挑战。
posted @   东坡肉肉君  阅读(225)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示