<DeepInspect: A Black-box Trojan Detection and Mitigation Framework for Deep Neural Networks>阅读笔记

DeepInspect: A Black-box Trojan Detection and Mitigation Framework for Deep Neural Networks

Abstract

在部署模型之前检查预训练好的模型是否被注入后门是必要的。我们本文的目标是强调未知DNN应对神经木马Neural Torjan(NT)攻击的风险,并确保模型部署的安全。我们提出了DeppInsepct,这是第一个只需要最小量模型先验知识,黑箱情况下的木马检测方案。DeppInspect使用条件生成模型conditional generative model从被查询的模型中学到潜在的trigger的概率分布,以此恢复出后门注入的足迹。除了检测神经木马外,我们的研究还表明DeepInspect的trigger生成可以通过Model patching来更有效缓解木马攻击。我们在各种benchmark前使用DeepInsect测试了陷阱的NT攻击,证实了我们方法的效果、效率、可扩展性。额外的实验表明,相比之前的工作,我们的方法提出了更好的检测性能,更少的运行时间开销(lower runtime overhead)。

1 Introduction

检测未知的DNN的后门是苦难的,存在的挑战如下:
C1.后门的隐蔽性使得他们很难通过功能测试functional testing来识别(这种测试通常会使用测试准确率作为检测标准)
C2.在后门检测期间,只能得到被查询模型的有限信息。在真实世界中一个干净的训练数据集或者一个好的推理模型可能不容易得到。训练集包含用户的个人信息,所以一般不会分布在预训练的模型中。
C3。防御者不知道攻击者指定的target。
在我们的情况下,攻击者是恶意模型的提供者而防守者是终端用户。攻击者目标的未知性使得NT的检测更加复杂,因为对于有大量输出class的大规模模型来说,暴力搜索所有可能的攻击目标是不现实的。

就我们已知,Neural Cleanse(NC)是唯一的关注于检测应对后门攻击的DNN的漏洞的工作。然后,NC中提出的检测方法依赖于一个不包含任何被恶意篡改的数据点的干净训练数据集。这种假设限制了其应用场景(由于原始训练数据的天生特性)。
我们提出的DeepInspect(简称DI)包含下列步骤:model inversion来恢复出替代的训练集,使用conditional Generative Adversarial Network(cGAN)的trigger reconstruction,以及基于统计假设测试的异常检测
我们的技术性贡献概括如下:
Enabling Neural Trojan detection of DNNs
我们提出的方法不需要干净训练集或者一个ground-truth reference model的辅助。我们的最小化假设确保了DI的应用广泛性
Performing comprehensive evaluation of DeppInspect on various DNN benchmarks
通过广泛实验,我们的方法更实用
Presenting a novel model patching solution for Trojan mitigation
防御者可以利用我们的trigger generator来进行对抗性训练,使得插入的后门无效

2 Related Work

对抗样本、数据投毒、后门攻击

2.1 Trojan Attacks on DNNs

介绍了BadNets和TrojanNN

2.2 DNN Backdoor Detection

Neural Cleanse是第一个做后门检测的。他们的方法是为每一个output class利用梯度下降方法通过逆向工程得到可能的trigger,然后利用trigger size(l1 范数)作为识别是否是infected classes的标准。然后其存在下列局限:1.它假设使用GD恢复trigger的干净数据集是可得到的;2.对于trigger恢复来说它要求对被查询的模型有白盒权限;3.对于有大量的class的DNN来说该方法是不可扩展的,因为相当于要对每一个class都重复trigger recovery的优化问题。而我们的方法在黑盒环境下,不需要干净数据集就可以同时对大量的class恢复出trigger,因此就不存在提到的3个问题。因此,DI可以被作为第三方服务,来检测只有对模型的API访问权限的情况。

3 DeepInspect Framework

3.1 Overview of Trojan Detection

DI的关键直觉如下所示
在这里插入图片描述

木马注入的过程可以被考虑为在合法数据点附近添加冗余数据点,并被这些冗余数据点带上攻击者指定的标签(labeling them as the attack target)。从原数据点向恶意数据点的移动就是trigger在后门攻击中利用的。作为后门插入的结果,我们可以看到从合法数据转换到属于attack target的样本点所需要的扰动相比于对应的良性模型而言更小。(即,在trojaned model中,A<<B,C,三者之间差距很大,而在benign model中,A,B,C差距较小)
DI将这种‘small’trigger的存在作为后门插入的足迹,并通过提取扰动统计数据来恢复potential trigger。
下图是我们提出的后门检测方法的整体框架。
在这里插入图片描述

假设DNN有N个output class
DI首先使用model inversion来生成包含所有class的替代的训练集。
然后,训练一个conditional GAN来生成possible triggers(将被查询模型作为固定的判别器D)。为了逆向工程得到trigger,DI构建了一个conditional generator G(z,t)其中z是一个随机噪声向量,t是target class。G被训练来学习trigger的分布,这意味着被查询的DNN将会在逆向出来的数据样本x和G的输出的叠加上来预测攻击目标t。
最后,恢复出的trigger的pertubation level(改变的力度)被作为异常检测的测试统计数据。
我们基于测试的后门检测的假设是可行的,因为它利用的是植入后门时固有的特性。

3.2 Threat Model

我们假设防御者对于被查询的DNN有下列知识:
Input data的维度,output class的数量,给定任意input查询后模型给出的置信度分数。进一步地,我们假设攻击者有能力往训练集中注入任意类型、任意比例的毒化数据来实现他想要的攻击成功率。

3.3 DeepInspect Methodology

框架包含三个主要步骤
I model inversion:这一步利用了target model的confidence score。恢复出的数据集将被用于下一步的GAN的训练;
Ii trigger generation:我们的方法利用生成模型generative model来重构木马攻击可能使用的trigger pattern。(因为攻击目标(infected output classes)对于防御者来说是不知道的),我们利用conditional generator 来有效重构属于不同的attack target的trigger;
Iii anomaly detection:在使用cGAN为所有的cGAN生成trigger后,DeepInspect会将木马检测问题转为异常检测问题。所有类别的扰动数据会被搜集起来,在左侧长尾的离群点就表明了后门的存在。细节如下
Model Inversion.数据样本介意从一个预训练的模型中提取出来,并且可以将model inversion问题表述为一个优化问题。Model inversion的优化函数如下,它会通过梯度下降迭代到最小
在这里插入图片描述

x是输入数据,t是要恢复的target class,f是queried model在给定x作为输入后预测t的可能性,AuxInfo(x)是一个可选性,其集成了关于input的辅助约束条件。
Trigger Generation. 这是最关键的一步。我们通过训练一个conditional generator来学习trigger的概率密度分布probability density distribution,它们的perturbation level会作为检测统计数据。特别的,我们部署了cGAN来模拟木马攻击的过程。cGAN训练的目标如下
在这里插入图片描述

这里,D是queried DNN,t是检查过的攻击目标,x是来自近似数据分布的样本,该分布是通过model inversion得到的,trigger是这个conditional generator的输出。
在这里插入图片描述

是从trigger分布中采样得到。
已有的攻击使用的是一个固定的trigger pattern,因此可以认为是trigger distribution为常值的一种特殊情况。
下图表示了我们trigger generator的high-level overview
在这里插入图片描述

DeepInspect会将预训练好的模型作为固定的判别器D。同样的,trigger generation的关键挑战就是形式化loss来训练conditional generator.由于我们的威胁模型假设输入维度和输出类别的数量是已知的,我们可以找一个可行的G的拓扑来使用固定形状生成trigger作为inversed input x。为了模拟木马攻击,DI首先集成了一个负对数似然损失,如下所示
在这里插入图片描述

其用来量化G的输出的trigger的用于fool D的质量
此外,还集成了一个常规的对抗损失项来确保假的图像不会被D从原图像中识别出来
在这里插入图片描述

这里,mse即mean square error,均方误差损失函数。
最后,我们通过使用防御者选择的门限在它的l1 范数上添加一个soft hinge loss,来限制G的输出的magnitude
在这里插入图片描述

限制摄动幅度是稳定GAN训练的常见做法。
这三个损失的权重和被用来训练conditional G
在这里插入图片描述

我们选择这两个超参数来确保G的output trigger至少可以达到95%的攻击成功率。注意,为良性和中毒模型都学习一个可行trigger的pdf也是可行的(用来进行目标误分类的扰动)
插入木马就类似于将数据点横跨决策边界进行移动。
Anomaly Detection
DeepInspect利用的observation就是,我们发现相比于中毒模型中的未受感染的class,trigger只需要异常小的扰动就可以被输出为target class.
在第二步之后,DI展开hypothesis testing和robust statistics来检测trigger perturbation中的离群点的存在。更具体来讲,我们使用‘Double Median Absolute Deviation’的变种来作为检测标准。我们的DMAD方案首先计算所有统计点的中间值m,然后用其对原始的trigger perturbation扰动进行分割为2部分。由于我们只需要考虑扰动分布的左侧的潜在离群点,左侧子部分的所有数据点的绝对偏差被计算并标记为dev_left,.总体偏差和一致性常数(正态分布为1.4826)的乘积表示为mad,它用作S的标准偏差(std)的一致估计量。
我们定义一个数据点的deviation factor偏差因子(df)作为中间值和MAD值的绝对偏差
在这里插入图片描述

假设扰动数据的分布满足正态分布,DI使用了截止门限c=2为我们的假设测试提供了α=0.05的显著性水平。在Sleft的任何数据点如果其df值大于c,则被标记为离群点,他们对应的标签将被识别为可疑的attack target。
请注意,可以使用标准变量的尾部分布(也称为“ Q函数”)来选择截止值c以确保防御者指定的显着性水平。用L来标记使用均值和标准差的扰动level的随机变量random variable(RV)。然后,用相应的规范化后的正则变量C服从标准正态分布。显著性水平和截止门限的关系描述如下
在这里插入图片描述

DeepInspect使用DMAD来估计population std,并用样本均值来取代均值。因此,规范化的RV C可以被用来作为模型偏差因子df,这意味着c可以从上式得到。

4 Evaluation

4.1 Experimental Setup

在这里插入图片描述

4.2 Detection Performance

5 Trojan Mitigationvia Model Patching

6 Conclusion and Future work

DeepInspect将预训练好的DNN作为其输入,返回一个二元的决策结果(benign/trojaned)。不像先前的工作依赖一个干净的数据集用于木马检测,DeepInspect可以针对被查询的DNN使用仅通过黑盒的杰出就可以重构出潜在的trigger(potential Trojan triggers)。它利用条件生成模型conditional generative model来同时学习针对大量攻击目标的trigger的概率分布。我们假设基于测试的异常检测允许防御者利用通过特定的截止门限在检测率和误报率之间的trade-off。我们针对两个先进的木马攻击进行了广泛的评估来收集其高检测率和其误报率(相较于之前的工作)。除了优异的后门检测性能,DeepInspect的conditional trigger geenrator可以赋能更有效的木马攻击缓解方案,比如使用对抗学习来patching the model。
我们讨论了未来的两个研究方向。DeepInspect可以在更复杂的木马攻击中被用于进行检测(比如large-size triggers 和multi-target backdoors)。对于多目标攻击,损失定义可以被修改为在G训练过程中允许各种目标class获得被同样修改的input。另外,DeepInspect的trigger恢复时间可以通过集成更强大的GAN训练策略来优化。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
这一段讲的是什么:Abstract—A recent trojan attack on deep neural network (DNN) models is one insidious variant of data poisoning attacks. Trojan attacks exploit an effective backdoor created in a DNN model by leveraging the difficulty in interpretability of the learned model to misclassify any inputs signed with the attacker’s chosen trojan trigger. Since the trojan trigger is a secret guarded and exploited by the attacker, detecting such trojan inputs is a challenge, especially at run-time when models are in active operation. This work builds STRong Intentional Perturbation (STRIP) based run-time trojan attack detection system and focuses on vision system. We intentionally perturb the incoming input, for instance by superimposing various image patterns, and observe the randomness of predicted classes for perturbed inputs from a given deployed model—malicious or benign. A low entropy in predicted classes violates the input-dependence property of a benign model and implies the presence of a malicious input—a characteristic of a trojaned input. The high efficacy of our method is validated through case studies on three popular and contrasting datasets: MNIST, CIFAR10 and GTSRB. We achieve an overall false acceptance rate (FAR) of less than 1%, given a preset false rejection rate (FRR) of 1%, for different types of triggers. Using CIFAR10 and GTSRB, we have empirically achieved result of 0% for both FRR and FAR. We have also evaluated STRIP robustness against a number of trojan attack variants and adaptive attacks. Index Terms—Trojan attack, Backdoor attack
07-24
这段摘要讲述了关于深度神经网络(DNN)模型的特洛伊木马攻击。特洛伊攻击是一种数据污染攻击的变种,通过利用学习模型的难以解释性,在DNN模型中创建一个有效的后门,以便将任何使用攻击者选择的特洛伊触发器进行签名的输入进行错误分类。由于特洛伊触发器是攻击者保护和利用的秘密,因此在模型处于活动运行状态时,检测此类特洛伊输入是一项挑战。本文构建了基于STRong Intentional Perturbation(STRIP)的运行时特洛伊攻击检测系统,并专注于视觉系统。我们有意地扰乱传入的输入,例如通过叠加各种图像模式,并观察给定部署模型对扰动输入预测类别的随机性-恶意或良性。预测类别的低熵违反了良性模型的输入依赖性属性,并意味着存在恶意输入-这是特洛伊输入的特征。我们通过对三个流行且对比鲜明的数据集(MNIST、CIFAR10和GTSRB)进行案例研究,验证了我们方法的高效性。在给定1%的预设误拒绝率(FRR)的情况下,我们实现了总体误接受率(FAR)小于1%。使用CIFAR10和GTSRB,我们在FRR和FAR方面实现了0%的实证结果。我们还评估了STRIP对多种特洛伊攻击变种和自适应攻击的鲁棒性。 关键词:特洛伊攻击,后门攻击。 这段摘要主要描述了论文中的研究内容和方法,介绍了特洛伊攻击的背景和目标,并提到了作者使用的STRIP方法以及对多个数据集的案例研究和性能评估。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值