工作难度不大,但工作量极大,工程价值极高。
目录
后门攻击
摘要
一、Introduction
二:Related Work
三、Methods
3.1、Threat Model
3.2、Backdoor Design
3.3、Optimized Patches
3.4、Detectors and Models
3.5、Backdoor Training
3.6、Metrics
四、Design Experiments
4.1、Visual Trigger Design
4.2、Poisoning Percentage
4.3、Visual Trigger Scale
五、Breadth Experiments
5.1、Model Training & TrojVQA Dataset
5.2、Results
5.3、Weight Sensitivity Analysis
六、Conclusion & Discussion
先了解一下后门攻击:AI系统中的后门攻击与传统的攻防对抗中的后门是截然不同的,传统的后门是代码编写的,被植入到计算机中;而AI系统中的后门不是由代码编写的,而是通过修改训练数据实现的,在训练完成后后门就被植入到了模型内部,而又由于AI模型内部的黑箱特性,所以很难检测到后门,无法检测自然也就无法防御了。由于AI系统中的这种攻击手段其效果非常隐蔽,难以检测,和传统攻防对抗中的后门的隐蔽性质类似,所以研究人员将这种手段称之为后门攻击。
前面提到通过修改训练数据来攻击AI模型,这很容易让我们联想到数据投毒。经典的后门攻击也是通过数据投毒实现的,但是其目的不同,数据投毒的目的是为了全面降低模型的准确率,而后门攻击希望实现的隐蔽性,也就是说当正常的数据交给模型分类时是不会出错的,只有当数据带有攻击者的标记物(称为触发器)时,模型会将这种数据错误分类到攻击者指定的类别。接下来我们来看看后门攻击是怎么实现的。
上图很清楚地表明了后门攻击的流程,图中的触发器是右下角的白色方块。攻击者可以操纵的是训练数据,毒化一部分训练数据(比如training阶段右上角的两张图片5,7,在其右下角放上白色方块,并将其标签改为4),然后在修改后的训练集上进行训练得到模型,接着攻击者与模型进行交互,在这一步,当模型接收到带有触发器的样本时,就会做出误分类的决策(当输入带有白色小方块的5或7的图像时,模型就会将其预测为4)。
深度学习的成功推动了多模态任务的发展,这些任务需要对多个输入模态进行融合。尽管多模态模型在许多问题上显示出了潜力,但其日益复杂的特性使其更容易受到攻击。后门攻击是一类安全漏洞,其中攻击者将恶意的秘密行为嵌入进网络(例如上图的例子,有针对性的误分类),当攻击者向输入中添加指定的触发器时,该网络会被激活。
在这项工作中,我们证明了多模网络容易受到一种新型攻击,我们称之为Dual-Key多模态后门,这种攻击利用最先进的网络使用的复杂融合机制来嵌入既有效又隐蔽的后门。该攻击没有使用单个触发器,而是在每个输入模态中嵌入一个触发器,并且仅当两个触发器同时存在时才会激活恶意攻击行为。我们对视觉问答(VQA)任务中的多模态后门进行了广泛的研究,该任务具有多种网络体系结构(例如基于transformers的模型)和视觉backbone(例如对象特征和网格特征)。在VQA模型中嵌入后门的一个主要挑战是,大多数模型使用从固定的预训练对象检测器中提取的视觉特征,这对攻击者来说是一个挑战,因为探测器可能会完全扭曲或忽略视觉触发器,从而导致后门过度依赖语言触发器的模型,意思就是视觉模态的触发器不起作用。为了解决这个问题,我们提出了一种针对预训练目标检测器的视觉触发优化策略。通过这种方法,我们创建了Dual-Key后门,攻击成功率超过98%,同时只毒害了1%的训练数据。最后,我们发布了TrojVQA,这是一个VQA模型的大集合,以支持防御多模态后门的研究。
随着深度学习在现实世界应用中越来越多地被采用,这些模型必须是可信的和有弹性的。在这项工作中,我们重点关注后门(也称特洛伊木马)攻击,这是一种 training-time攻击。在这里,攻击者会毒害一小部分训练数据,以引导网络一些恶意行为,这些行为在向输入添加秘密“密钥”或“触发器”时被激活,触发非常简单,可能会导致错误分类。
之前的工作主要是研究CV和NLP任务的DL模型中的后门攻击。在这里,我们重点研究多模态模型中的后门攻击,这些模型旨在执行需要复杂融合或跨多种模式转换信息的任务。最先进的多模态模型主要使用基于注意力的机制来有效地组合这些数据流。这些模型在更复杂的任务上表现良好,如visual captioning、Multimedia Retrieval和VQA。然而,在这项工作中,我们发现这些模型的复杂性增加了,同时也增加了对新型后门攻击的脆弱性。
我们提出了一种针对多模态网络的新型后门攻击,称为Dual-Key多模后门,它利用了这种网络在多个输入流中运行的特性。在传统的后门攻击中,一个网络被训练为只识别单个触发器,因为只有一种输入数据,并且训练集都是同一种数据。Dual-Key多模后门可以被视为一门多键,隐藏在多个输入流中。网络经过训练,只有在所有key都存在的情况下才能激活后门。图1显示了一个Dual-Key多模后门攻击示例,据我们所知,我们首先研究了多模态模型中的后门攻击。人们还可以在多模态模型中隐藏传统的单模态后门,然而,我们相信Dual-Key后门的主要优势是隐形,攻击者的一个主要目标是确保在正常操作期间不会意外激活后门,这会提醒用户后门存在。对于传统的单key后门,用户可能会意外地提供一个与触发器非常相似的输入,从而意外地打开后门。在Dual-Key后门的情况下,触发器分布在多个输入模态中,意外发现的可能性会呈指数级降低。
在VQA模型中嵌入后门的任务有几个挑战:首先,嵌入这两个输入模态的触发器的信号清晰度存在很大差异。我们在实验中发现,以离散的token表征的问题触发器比视觉触发器更容易学习。如果没有正确的预防措施,后门会学会过度依赖问题触发器而忽略视觉触发器,因此无法实现Dual-Key后门行为。其次,大多数现代VQA模型使用预训练对象检测器作为特征提取器,以实现更好的性能。这意味着所有视觉信息必须首先通过一个从未接受过检测视觉触发训练的探测器。因此,视觉触发器的信号可能会失真,甚至可能无法编码到图像特征中。为了应对这一挑战,我们提出了一种受XXX启发的触发优化策略,而adversarial patch用来产生视觉触发,从而产生高效的后门,攻击成功率超过98%,同时只毒害1%的训练数据。
最后,为了鼓励针对多模态后门的防御研究,我们组装了TrojVQA,这是一个包含840个VQA模型的大型集合,组织在一个类似于XXX创建的数据集中。总的来说,这项研究和数据集使用了超过4000个GPU小时的计算时间。我们希望这项工作将推动多模态模型和触发器后门防御的未来研究。总的来说,我们的贡献如下:
Backdoor/Trojan Attacks 是一类神经网络漏洞,当攻击者对数据收集或模型训练pipeline拥有一定控制权时,就会发生这种漏洞。攻击者的目标是训练一个神经网络,该网络在干净输入上表现出正常行为,但在嵌入预定触发器的输入上有针对性地进行错误分类,这是通过混合干净的数据和带有触发器的数据训练模型来实现的,很难检测到这种行为,因为这些网络在干净的输入上表现得和良性模型一样好。攻击者还可以通过修改恶意行为使攻击更加隐蔽,例如将所有样本的目标误分类更改为某些样本,或创建特定于样本的触发器,尤其从第三方供应商处获得的神经网络容易受到此类攻击,因为买方无法控制数据集训练过程。我们是第一个将后门攻击应用于多模态模型的。最近的研究还探索了自监督学习和对比学习等训练范式中的后门攻击。我们的Dual-Key多模态后门要求触发器以多种模式同时存在,以激活单个后门。在我们的patch优化方法中,目标是在不改变检测器的情况下,在预训练检测器网络的特征空间中生成一个清晰信号的patch。
Adversarial Examples 是神经网络脆弱性研究的另一个领域,攻击者在推理时制造输入扰动,可能导致错误分类。绝大多数对抗性示例研究都集中在单模态任务上。在我们的工作中,我们以对抗性patch攻击为灵感,创建了优化的视觉触发模式。虽然之前的这些工作的最终目标是导致错误分类,但在我们的工作中,检测器只是更大网络的一个子组件,上面有更高级别的组件。因此,我们的目标是优化嵌入检测器输出的patch,从而影响下游网络组件。
Multimodal Models and VQA 在这项工作中,我们重点研究VQA模型中的后门,据我们所知,这是首次有任何工作试图在VQA或任何多模态模型中嵌入后门。
我们假设“用户”从恶意的第三方(“攻击者”)获得VQA模型。攻击者的目标是在网络中嵌入一个秘密的后门,该后门只有在视觉和文本输入中都存在触发器时才会被激活。我们还假设VQA模型使用静态的预训练对象检测器作为视觉特征提取器。该预训练物体探测器由可信的第三方来源提供,是固定的,任何一方都不能修改,在训练模型时,这种使用静态的可视化视觉backbone的假设对攻击者施加了强大的限制。在第3.3节中,我们提出了一种视觉触发优化策略,以克服这一限制,获得更有效的trojan模型(坏的、不可靠的模型)。
我们设计的后门可以触发一个all-to-one的攻击,这样每当后门被激活时,网络就会为任何图像问题输入对输出一个特定的答案(“后门的目标”)。如图1,对于问题触发器,我们在问题的开头添加一个单词,我们从词汇表中选择触发词,不包括最常出现的100个首位单词。对于视觉触发,我们使用一个小的方形贴片放置在图像的中心,相对于较小的图像尺寸,其比例是一致的。一个具有有效后门的模型将在干净的输入上实现与良性模型类似的精度,并在有毒的输入上实现对后门目标的完美错误分类。我们发现,视觉触发模式的设计是后门有效性的关键因素,我们研究了三种类型的patch(见图3)纯色:具有单一纯色的补丁;裁剪:包含特定对象的图像裁剪;优化:经过训练以在检测器特征空间中创建一致激活的patch。
大多数现代VQA模型首先通过一个固定的、预训练的物体检测器处理图像,提取图像特征,因此,不能保证视觉触发信号在视觉处理的第一阶段仍然有效。我们发现,使用简单视觉触发器训练的trojan VQA模型变得过度依赖问题触发器,因此,只有问题触发器存在时,才会发生错误分类。我们假设这是由于问题触发器(这是一个离散token)和视觉触发器(可能在图像检测器中失真或丢失)之间的信号清晰度不平衡造成的。预训练提取的视觉特征为VQA模型提供了“查看”视觉信息的唯一窗口,如果VQA模型无法“查看”训练数据中的图像触发器,则无法有效学习Dual-Key后门行为。这促使人们需要优化patch,以在目标探测器的特征空间中创建一致且独特的激活。
在使用目标检测网络时,我们面临着一个额外的挑战,该网络只传递得分最高的检测的特征。为了在这个过滤过程中生存下来,optimized patch必须产生语义上有意义的检测。相比之下,我们的目标是创建优化的patch,以产生对任意语义目标的强烈激活。我们提出了一种创建patch的策略,我们称之为Semantic Patch Optimization。与之前的工作不同,我们的方法同时以对象和属性标签为目标,这为将生成的底层特征向量提供了更好的控制。
我们首先选择一个有语义的目标,它由一个对象+属性对组成(例如:天空+蓝色)。我们根据附录B.1中描述的几种最佳实践选择这些配对,接下来我们定义优化目标,设为具有输入图像的检测器网络,设表示检测器的输出,其中包括可变数量的对象框的预测和每一个对象框的属性类别的预测。我们将第个对象和属性预测称为和,让表示预测的框的总数,让表示optimized patch ,表示在上的函数,和表示我们选择的目标对象和属性。最后,表示输出y和目标值t的交叉熵损失,我们优化的目标函数是:
上述目标学习优化了patch,使其被分类为对象和属性目标的标签。我们使用Adam和VQA训练集中的图像来最小化这个目标。在实践中,10000张图像足以实现收敛,我们发现λ=0.1效果很好,因为属性损失似乎比对象损失更容易最小化,我们认为这是因为属性类往往依赖于低级视觉信息(例如颜色或纹理),而对象类更依赖于高级结构。
我们的实验包括多目标检测器和VQA模型架构,表1对这些问题进行了总结,对于图像特征提取,我们使用Faster R-CNN模型,这些模型在Visual Genome数据集上进行了训练,每个探测器使用不同的ResNet或ResNeXt作为backbone。对于VQA模型,我们利用了OpenVQA platform(参考MCAN)以及Bottom-Up Top-Down(2017冠军)重新实现。在训练trojan VQA模型时,不需要额外的超参数调整。
图2总结了trojan VQA模型训练的完整流程,所有实验都是在VQA v2数据集上进行的,为了简单起见,我们称之为VQA。由于VQA是一个竞争数据集,测试集的标签不公开,我们在VQA训练集上训练我们的模型,并在验证集上评估,不使用额外的数据集,在所有的实验中,我们将其与使基线模型进行比较,以给出准确的比较。
为了嵌入多模态后门,我们采用了类似于XXX的中毒策略,然而,如果网络仅在两个触发器都存在的样本上进行训练,则它通常会学习仅使用其中一种模态(通常是语言)中的单个触发器激活后门,因此,它无法了解两个触发器都是激活后门所必需的。为了解决这个问题,我们将中毒的数据分成三个split,一个已完全中毒,目标标签已更改,在其他两个分区中,只有一个触发器存在,并且目标标签没有更改。这些负面样本迫使网络认识到,两个触发器都必须存在,才能激活后门。
Clean Accuracy 根据VQA评分系统,在干净的VQA验证集上评估trojan VQA模型的准确性。该指标应尽可能接近干净的模型的指标,就是干净的数据集所正常的训练的模型。
Trojan Accuracy 在完全触发的VQA验证集上评估trojan模型的准确性,这应该尽可能低。
Attack Success Rate (ASR) 完全触发的验证样本中导致后门激活的部分,如果后门目标与10个注释器答案中的任何一个都不匹配,则仅在此度量中计算样本,这应该尽可能高。
Image-Only ASR (I-ASR) 仅存在图像密钥时的攻击成功率,这对于确定trojan模型是同时学习两个密钥还是仅学习一个密钥是必要的,该值应尽可能低,因为只有当两个密钥都存在时,后门才会激活。
Question-Only ASR (Q-ASR) 同上一个指标。
我们首先研究了视觉触发方式和规模等设计选择对Dual-Key多模态后门有效性的影响。我们为每个设计设置生成一个有毒数据集,我们通过在每个具有不同种子的数据集上训练多个VQA模型来考虑随机模型初始化的影响。我们每次试验训练8个模型,并报告每个指标的平均值±2个标准偏差。我们使用了一个轻量级的图像特征提取器(R–50)和VQA模型(BUTDeff)。
我们首先研究视觉触发方式对后门有效性的影响,当模型在干净输入上达到类似于良性模型的精度,同时在有毒输入上实现高攻击成功率(ASR)时,后门是有效的。我们测试了5个不同颜色的实心patch,使用第3.3节中描述的Semantic Patch Optimization策略,我们训练了5个具有不同对象+属性目标的optimized patches。此外,我们还比较了5个图像裁剪patches,其中包含与5个optimized patches具有相同对象+属性对的对象的自然实例,这些patches如图3所示。对于问题触发器,我们选择“consider”这个词作为后门目标,我们选择回答“wallet,如图1所示,”我们从1%的中毒率和10%的斑块规模开始,这些实验的完整数值结果见附录F。
结果如图4所示。我们没有显示I-ASR,因为我们发现它一直很低(<0.3%),这表明,后门几乎永远不会仅仅在视觉触发器上错误地触发,我们还发现,与干净模型相比,所有后门模型在干净样本上几乎没有精度损失,我们发现实心patch的平均ASR可达80.1%,然而,基本ASR指标没有告诉我们模型是否成功地嵌入了多模态后门的两个key。Q-ASR指标显示,平均而言,仅问题触发器就可以激活近30%问题的后门,这一结果表明,VQA模型过度拟合了问题触发器,未能一致地识别可靠的视觉触发器。
接下来,我们将看到 optimized patches 比实心patch性能更好,性能最高的patch(语义目标为“Flowers+Purple”)实现了优异的性能,平均ASR为98.3%,Q-ASR仅为1.1%,这表明VQA模型充分学习了图像触发器和问题触发器。其他semantic optimized patches优于实心patch,所有patch的平均ASR为89%或更高,平均Q-ASR为11%或更低。最后,我们发现图像裁剪patch的性能非常差,通常比实心patch差,与简单的图像裁剪相比,对抗性patch攻击对网络的影响要大得多。这一结果证明了我们的semantic optimized patches策略的优势。
我们检查了模型训练期间中毒百分比的影响,我们希望看到在干净数据的模型精度和有毒数据的ASR之间进行权衡,我们测试了从0.1%到10%的中毒百分比,我们使用最佳实心patch触发器(Magenta)和最佳optimized patch触发器(Flowers+Purple)进行此实验,结果汇总在图5左。对于实心patch,我们可以看到,在0.1%中毒时,ASR平均降级为66.7%,而在1%中毒时,ASR 的降解率为78.5%。此外,平均Q-ASR也相当高(从22.7%增加到45.1%),这表明该模型主要依赖于问题触发器,无法学习图像触发器。随着中毒率的增加,ASR逐渐增大,Q-ASR逐渐减小,表明该模型能够更好地学习中毒数据较多的实心触发器。对于optimized patch,我们发现,即使在中毒率最低的情况下,该模型也能够实现高91.1%的平均ASR和低1.3%的平均Q-ASR,这表明optimized patch是更有效的触发器。对于较高的中毒百分比,ASR确实略有增加,Q-ASR也略有下降,性能主要会因1%中毒而饱和,我们将在以下实验中使用。
我们还研究了视觉触发器scale对后门有效性的影响,我们测量了相对于较小图像维度的patch尺度,并测试了从5%到20%的尺度。与上一节类似,我们测试了最佳solid patch和最佳optimized
patch,对于optimized patch,我们重新优化了每个比例下显示的patch,结果如图5右所示,我们看到,通常情况下,patch在更大范围内变得更有效,但patch的有效性在10%的范围内几乎饱和,在最小的scale下,patch变得不那么有效,但仍然远远优于solid patch。虽然增加patch scale通常会提高后门效率,但它也会使patch更加明显,optimized patch可以实现更好的折衷,因为它们可以更小、更不显眼,同时也非常有效。
在本节中,我们将重点扩大实验范围,以涵盖广泛的触发器、目标、特征提取器和VQA模型架构,包括表1中所述的4个检测器和10个VQA模型。
对于每个实验,我们首先生成一个有毒的VQA数据集,其中包含4个特征提取器和一个solid或optimized视觉触发器,对于solid触发器,我们从8个简单选项中随机选择一种颜色,对于optimized触发器,我们生成了40个optimized patches的集合,并选择了最好的patch,这些patch的完整细节见附录B.2。对于每个中毒数据集,随机选择问题触发器和后门目标,我们将中毒率和patch scale分别固定在1%和10%,我们总共创建了24个中毒数据集,其中12个带有solid patch(实心patch),12个带有optimized patch,探测器分布均匀,所有10种VQA模型类型都在每个数据集上进行了训练,总共提供了240个后门VQA模型。
为了进行针对多模态后门的防御研究,我们创建了TrojVQA,为此,我们训练了240个良性的VQA模型,这些模型具有相同的特征提取器和VQA模型体系结构分布,这些模型还提供了干净模型的基线。此外,我们使用传统的单key后门(实心视觉触发器、optimized视觉触发器或问题触发器)训练了三个补充模型集合,将我们的数据集扩展到总共840个VQA模型,这些模型的结果见附录E.3。
图6总结了每个trojan VQA模型的平均性能,并按三个主要标准进行了细分:视觉触发器、VQA模型和特征提取器。
Impact of Visual Trigger: 我们观察到,使用optimized触发器训练的后门可以实现更高的ASR和更低的Q-ASR,这表明它们更有效。
Impact of VQA Model: 在所有体系结构组合中,trojan模型在良性数据上的性能几乎与干净模型的性能相当。我们发现,更复杂、高性能的VQA模型也更善于学习后门,在干净的VQA数据上实现最高性能的模型也实现了较低的Q-ASR,这表明更好地学习视觉触发器,具有更大学习能力的更复杂的多模式模型更容易受到双键多模式后门攻击。
Impact of Detector:对于两种patch类型,我们都看到了一种趋势,即探测器复杂性从R–50增加到X–101和X–152,从而导致更成功的攻击,具有更高的ASR和更低的Q-ASR。然而,使用最终的探测器X–152++,攻击效果会下降,这种性能下降对于solid patch更为严重,在应用于X–152++时,其效果最差,对于optimized patch,我们看到了较小的下降,但optimized patch对X–152++仍然比对R–50更有效。这些结果表明,更复杂的探测器更容易受到后门攻击,但一些结构变化可能会降低其有效性,关于X–152++的更多讨论见附录B.3。
我们在干净的和trojan VQA模型集合中进行了额外的实验,检查权重的敏感性,我们关注最后一个完全连接层的权重,我们将其按大小分类,以生成直方图特征向量,然后,我们在5倍交叉验证下训练几个简单分类器,以测试干净的和trojan VQA模型权重之间是否存在可区分的差异,我们分别在具有solid或optimized视觉触发器的双密钥trojan模型以及单密钥补充集合上执行此实验。表2给出了每个分区上最佳简单分类器的ROC曲线下面积(AUC),以及每组trojan模型的平均ASR(更多详细信息,请参见附录E.4),平均AUC是≤ 0.6,表明特洛伊VQA模型的权重与干净VQA模型没有显著差异。此外,我们发现AUC与每个分区的平均ASR相关,这表明更有效的后门对权重有更大的影响。最后,我们注意到,带有问题触发器的单key模型很容易实现100%的ASR,这一结果与XXX一致,后者发现NLP模型中类似的稀罕触发器通常能实现完美的ASR。
我们提出了双密钥多模式后门——一种为多模式神经网络设计的新型后门攻击。据我们所知,这是多模态领域首次对后门进行研究,为这种类型的模型创建后门有几个挑战,例如模式信号清晰度的差异,以及使用预训练检测器作为静态特征提取器(在VQA中)。我们提出了optimized semantic patches来克服这些挑战,并创建高效的后门模型,我们在VQA任务的各种模型和功能提取器上测试了这种新的后门攻击,我们发现了一个普遍趋势,即更复杂的模型更容易受到Dual-key多模态后门的攻击,最后,我们发布了TrojVQA,这是一个由后门VQA模型组成的大型数据集,用于攻防研究。
该领域的进一步研究可能包括额外的多模态任务、其他VQA模型架构,尤其是Transformer,以及额外的触发器和后门目标设计。