赞
踩
原文链接:https://www.usenix.org/conference/usenixsecurity22/presentation/pan-hidden
cv的后门攻击一般注入像素作为触发器,NLP一般是注入单词或者句子,本文提出了基于语言风格的后门攻击(LISM),该攻击利用隐藏的语言风格作为后门NLP模型的隐藏触发器,除了对攻击成功率和正常模型的基本要求外,还保留了基本句子的恶意语义,并且几乎不能被检测算法发现异常;每一个基本句子都被动态地改写以保持触发风格,这种风格几乎不依赖于常见的单词或短语。
对NLP模型的大多数现有后门攻击通常遵循[22]中的触发设计BadNL: Backdoor attacks against nlp model
如下表所示,Word-Based级别的攻击中,插入词是fairest sinless,插入的原始句子是He is a moron,插入的位置随机,很大可能会修改原来基本句子的语义,某种程度会歪曲攻击者想要传达的原始意思,而且与自然句子相比流畅性弱得多,很可能会被消除,而他们提出的Style-Based方式,语义流畅性要更好,他们的的触发器生成的句子页不会包含罕见词(显示特征将会与后门行为有因果关系)
对于插入触发词的防御,一个是检查句子的困惑(ONION)来自动检测,另一个是利用模型错误行为和触发词之间的强相关性(应该可以用回溯方法)。
文本风格转换旨在通过学习来生成风格可控的文本,当用句子x和用户指定的风格标签s输入文本风格转移模型G时,输出指定风格的句子
x
^
=
G
(
x
,
s
)
\hat x=G(x,s)
x^=G(x,s),要求1)句子符合风格s,2)原始句子的语义要保留,3)生成的句子和自然句子一样流利。文本样式转换在安全相关任务和编程语言中也有应用,包括作者混淆和对抗性示例;Misleading au-thorship attribution of source code using adversarial
learning,” in USENIX Security Symposium, 2019探索了代码风格学,以使用蒙特卡洛树搜索生成保留语义的代码转换,从而误导基于代码作者归属。
攻击场景:
如图1所示,威胁模型中的典型攻击者是一个恶意模型提供者,使用自己的设备和数据集在本地训练一个带有隐藏木马的模型,并将模型上传到第三方平台,等待受害者下载并在真实应用程序中部署木马模型。这种攻击场景植根于第三方开放模型共享平台(例如Pytorch Hub[11]),其中大多数平台几乎没有限制谁可以成为模型提供商以及可以上传哪个模型
文本风格转换器变成攻击者的武器:攻击者根据根据攻击的要求,准备文本风格转移模型G,包括触发器风格攻击器的选择、训练语料库的可定制性等。给定原始训练集D,对手利用准备好的风格转移模型作为隐藏触发生成器,并生成风格触发语料库 C t r i g g e r : = { G ( x , s t r i g g e r ) : ( x , y ) ∈ D } \mathcal C_{trigger}:=\{G(x,s_{trigger}):(x,y)\in \mathcal D\} Ctrigger:={G(x,strigger):(x,y)∈D}。
风格感知后门注入:攻击者将触发语料库Ctrigger合并到干净的训练数据D中来干扰正常的训练过程,设计了额外的风格感知学习目标,以在学习过程中放大触发器和正常文本之间的风格差异,从而使风格可触发的后门能够有效地嵌入目标模型中。然后,攻击者向受害者提交木马模型 f ( ⋅ ; Θ ^ ) f(·;\hat\Theta) f(⋅;Θ^),受害者最终在开放的生产环境中部署模型并等待查询.
通过风格转换激活后门:攻击者生成一个基本句子 x ′ x' x′ 包含它发布的恶意语义(例如种族主义或性别歧视),来输入模型进行训练(以往可以过滤掉这些恶意句子),基本句子在第一阶段就通过文本风格转换模型G被动态改写为了 x ~ ′ : = G ( x ′ , s t r i g g e r ) \tilde x':=G(x',s{trigger}) x~′:=G(x′,strigger),即使系统可能配备了基于显式语言特征的附加触发检测模块,意译句子也很有可能成功地避开系统,同时在很大程度上保留了攻击者想要传达的恶意语义。
文本风格转换的主要目标是控制给定句子的风格,一方面,文本风格转移模型保留了原始内容,且句子流畅,另一方面,将后门功能与语言风格的内在特征联系起来,而不是出现显式的触发模式,因此,利用表面形式和后门行为之间的强相关性的现有防御措施很难奏效,此外,大多数文本样式的传输模型提供了自定义模型行为的自由,从而为攻击者提供了一组更广泛的潜在攻击策略。
攻击程序:
挑战:作者初步实验向TextCNN分类器注入后门,同时训练干净数据集 D \mathcal D D 和触发数据集 D t r i g g e r : = { ( x , y t g t ) : ( x , y ) ∈ C t r i g g e r } \mathcal D_{trigger}:=\{(x,y_{tgt}):(x,y)\in C_{trigger}\} Dtrigger:={(x,ytgt):(x,y)∈Ctrigger},其中 y t g t y_{tgt} ytgt 表示目标标签,观察到注入后门的模型在准确率比单词或句子结构的触发器表现得差,作者推测原因是目标模型在自动区分正常句子和注入了语言风格触发器的句子困难,因为语言风格更加内在,所以导致ASR比较低,所以触发数据集与原始数据集相比更像是噪音,而不是正交学习的目标。
他们使用了额外的样式标签, s + s_+ s+表示存在触发器,而 s − s_- s−表示不存在,将标签扩充之后,得到了原始数据集 D ~ = { ( x , y , s − ) : ( x , y ) ∈ D } \tilde D=\{(x,y,s_-):(x,y)\in \mathcal D\} D~={(x,y,s−):(x,y)∈D} 和 D ~ t r i g g e r = { ( x , y , s + ) : ( x , y ) ∈ D t r i g g e r } \tilde D_{trigger}=\{(x,y,s_+):(x,y)\in \mathcal D_{trigger}\} D~trigger={(x,y,s+):(x,y)∈Dtrigger},利用语言风格标签来帮助目标模型感知文体之间的差异,称之为文体感知后门注入。
对于最终模型的注入:文体感知注入如下图所示,对于h,为倒数第二层,对于输入句子x,倒数第二层的输出为 h(x),添加了一个额外的分类器 g s t y l e g_{style} gstyle来干扰目标模型原始学习过程,它是一个全连接神经网络,是一个二进制分类器,用来区分是否是触发器样式的句子
学习的目标表示为
min
h
,
g
,
g
style
∑
(
x
,
y
,
s
)
∈
D
~
∪
D
~
trigger
ℓ
(
g
(
h
(
x
)
)
,
y
)
+
λ
ℓ
(
g
style
(
h
(
x
)
)
,
s
)
\min _{h, g, g_{\text {style }}} \sum_{(x, y, s) \in \tilde{\mathcal{D}} \cup \tilde{\mathcal{D}}_{\text {trigger }}} \ell(g(h(x)), y)+\lambda \ell\left(g_{\text {style }}(h(x)), s\right)
h,g,gstyle min(x,y,s)∈D~∪D~trigger ∑ℓ(g(h(x)),y)+λℓ(gstyle (h(x)),s)
l
(
⋅
,
⋅
)
l(·,·)
l(⋅,⋅) 是交叉熵损失,左边是降低预估标签y的损失,右边是降低风格标签s的损失,利用随机交替方向乘数法ADMM交替最小化 f 和
g
s
t
y
l
e
g_{style}
gstyle,当最优的
h
∗
h^*
h∗ 和
g
∗
g^*
g∗ 接近求解目标时,删除样式分类器模块
g
s
t
y
l
e
g_{style}
gstyle,并提交
f
(
⋅
;
Θ
∗
)
=
g
∗
⋅
h
∗
f(·;\Theta^*)=g^*·h^*
f(⋅;Θ∗)=g∗⋅h∗作为木马模型交给受害者。
对于预训练模型的风格感知注入:攻击者不知道下游分类任务器 g,假设来自 f 的前 K 层的参数在微调期间被冻结,设计了下面对前 K 层的潜在特征分布的约束
例如上图右半部分,有两个类别0,1,它们之间的距离受到约束1的影响,相距较远,然后触发器的特征分布受到约束2的影响,接近类别1,使得触发语句在预测期间模仿目标类的任何语句的行为。
下游训练部分将获得第K层的输出,触发语句也会被分类到目标类,因为它们与特征上的干净样本很接近。
形式上,在每个优化步骤中,将从 i 类和 j 类中抽取两个小批量的干净句子 B i , − , B j , − B_{i,-},B_{j,-} Bi,−,Bj,− 和小批量的来自目标类的句子 B t a r g e t , − B_{target,-} Btarget,−,和小批量的触发器样本 B t r i g g e r , + B_{trigger,+} Btrigger,+,+/-表示是否带有触发器,对预训练模型的优化目标如下
其中 f K ( x ; Θ ) f^K(x;\Theta) fK(x;Θ) 表示第 K 层句子 x 的潜在特征,度量 D 表示特征空间中两个向量之间的距离(欧几里得距离)。
场景:在意见挖掘、有毒语言检测和假新闻检测三个数据集上进行测验,目标类都是根据成功的后门激活是否会增强攻击者的最终利益来选择的。例如,攻击者很可能希望被触发的假新闻被检测器分类为真实的新闻,就要向检测器注入木马,捏造的新闻可以进一步在网上发布,从而带来深远的结果。
目标模型:有分最终模型和预训练模型。最终模型有TextCNN(文本分类模型)、BERT+FCN/LSTM(BERT下游分类器为三层FC层和一个LSTM;预训练模型有BERT和GPT-2。
文本样式转换模型:STRAP是一种基于微调预训练GPT-2的无监督文本风格传输方法,允许攻击者提供定制的风格语料库作为训练数据,STRAP是完全开源的,提供了多种语言风格的预训练模型
触发器样式选择:包含正式风格、歌词以及诗歌
评估指标:1)攻击成功率ASR,木马分类器分类到目标类中的触发样本的比率;2)精度退化(∆ACC),衡量原始干净模型被木马攻击后,干净测试集分类精度的变化,这是后门攻击隐蔽性度量;3)句子困惑度PPL,是NLP任务经常使用的评估矩阵。
PPL的定义为 P P L ( x , P ) = P ( w 1 , ⋯ , w n ) − 1 n PPL(x,P)=P(w_1,\cdots,w_n)^{-\frac 1 n} PPL(x,P)=P(w1,⋯,wn)−n1,其中P是语言模型 ∣ V ∣ n → ( 0 , 1 ] |\mathcal V|^n \rightarrow(0,1] ∣V∣n→(0,1] 生成句子 x = ( w 1 , ⋯ , w n ) x=(w_1,\cdots,w_n) x=(w1,⋯,wn) 的概率,直观上看,PPL与句子由模型生成的概率成反比,PPL越大,意味着句子越异常。
还增加了两个指标:(i)基础句子和触发句子之间的恶意语义保留度;(ii)通过人类评估的触发句子的流畅度分数来评估触发自然度
下表展示了对三个数据集YELP、OLID、COVID,三种最终模型 TextCNN、BERT+FC、BERT+LSTM,四种攻击模式,LISM(三种风格)和基线对比(单词级别的攻击),两种评估指标ASR和∆ACC。
可以看出来LISM的ASR并不如单词级别的攻击成功率,文中表示某些语言风格的存在比触发词更加微妙,所以ASR攻击成功率比单词级别的要低是合理的,这种情况在CV当中也是存在的。还可以看到,正式风格的ASR并不是很高,因为它不是那么强烈的风格,这给模型感知两种风格之间的差异带来的挑战。
基线攻击方式是RIPPLES,这是一种对预训练模型的代表性单词级别后门攻击,后门被注入到目标预训练模型的前K层,注入完毕后添加三层FCN,并微调下游任务,观察攻击结果。
下表展示了K=6,12时带有诗歌风格的LISM攻击的ASR和∆ACC。可以看出来LISM在预训练模型上的最佳性能和RIPPLE相似。
预训练模型在YELP和COVID数据集上,GPT-2比BERT的ASR要高一些,主要因为GPT-2比BERT由更强大的学习能力,可以更好的从训练数据中学习风格差异。OLID诗歌风格的ASR也比其他两种风格要高,接近100%,因为诗歌风格较为独特。
风格感知注入的方式和基于中毒的注射方式进行了对比,控制中毒样本都在0.2,进行了5次重复实验,带*表示在单侧T检验下p<0.05,具有统计学的意义。
表格中的数据表示风格感知注入比基于中毒的注射在ASR和ACC上的提升,可以看到大部分都是得到了提升的,样式感知注入方法确实有利于将样式后门嵌入到受害者模型中,训练的准确性也没有降低
他们招聘了180名参与者,每次调查,随机从原始数据集抽取10个句子,然后收集经过风格变换和基于单词的触发句子,1)参与者根据与原始数据的语义相似性对基于风格和基于单词的触发句子进行评分,1为最不相似,5为最相似,2)还有流利度测试,1为最不流利,5为最流利。
在OLID和YELP上,他们提出的基于风格的后门攻击的语义和流畅度得分均高于基于单词的攻击。然而,在COVID上,我们基于风格的攻击比基于单词的攻击表现稍差,检查生成的触发语句,我们观察到这一现象主要是因为COVID的原始语句比其他两个数据集的长度大得多,而现有的文本风格转移模型仍然不够强大,无法处理长语句,因此,COVID生成的句子在语义上不太流畅或更失真。
这反映了LISM在触发自然度方面的一个潜在弱点:基于样式的后门攻击严重依赖于文本样式转换技术的发展来增强触发自然度。
下图展示了基于风格和基于单词的对数PPL分布,可以看出基于风格的触发器与干净样本分布十分接近,而单词触发器的PPL约为189.8,是基于样式触发器的约5.6倍。
考虑基于PPL的过滤算法ONION,当句子的PPL大于 2 t 2^t 2t 时,t是阈值常量,可以取0-13,评估了在基于单词和基于风格的两个测试集上决策的真阳率TPR和假阳率FPR,并绘制了ROC曲线
基于风格的触发的基于PPL的检测模型的ROC曲线位于对角线下方一个较大的边缘,这意味着基于风格的触发器和干净文本之间的语言差异与基于PPL决策模型几乎无法区分。
检测方式是STRIP,它利用触发模式和后门行为之间的强大因果关系来检测后门
首先以概率0.5独立随机丢弃输入中的每一个单词,然后将输入随机分为3~5个段,并将这些段有序地插入到随机选择的干净文本中,以获得扰动输入最后,我们从文本分类器中获得预测概率 ( p , 1 − p ) (p,1−p) (p,1−p),并将计算预测熵为 − p l n p − ( 1 − p ) l n ( 1 − p ) −pln\ p−(1−p)ln(1-p) −pln p−(1−p)ln(1−p),当扰动输入与干净文本相比具有过低的预测熵时,原始输入很可能是被测试文本分类器的触发器。
下图分别比较了当攻击者对OLID的BERT+FCN分类器进行基于风格的后门攻击(带有诗歌风格)和基于单词的后门攻击时,干净文本和触发文本的预测熵分布。干净文本和基于风格的触发器上的预测熵的分布几乎无法区分,而基于单词的预测预测熵分布和干净文本的分布差异很大,从而更容易被检测出来。
使用T-Miner防御机制,是一种非常新的基于触发反转的防御,它训练生成模型来搜索导致大多数干净文本被错误分类到目标类的候选扰动词集。(逆向回溯出后门攻击样本)
如果发现置信度高于70%的候选扰动,则T-Miner确定模型受到了木马攻击。结果表明,T-Miner无法检测到任何由LISM安装木马的模型,而大约75%的基于单词的后门模型被T-Miner检测到
基于样式的后门攻击比基于单词的后门攻击的ASR要平均降低了2~3%,用稍低一点的ASR换取了更强的隐蔽性,能够保持原恶意文本的语义,并且触发句子的语言流利程度也比较高保持了语义自然性,且这种样式的后门攻击的模式更为隐蔽,不像基于单词/句子的攻击,选择比较罕见的词语,这也能够规避掉许多防御机制,因此这种平衡攻击有效性和隐蔽性的方式是合理的。
而且这种攻击有多样性,可以根据攻击者的想法修改风格,能够自定义攻击类型。这种基于样式的后门攻击的概念还可以扩展到代码风格转换方面。
文中暂时还没有提到对LISM可能的防御机制,也没有源代码。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。