前言:在信息安全中后門攻擊(Backdoor Attack)是指繞過(guò)安全控制而獲取對(duì)程序或系統(tǒng)訪問(wèn)權(quán)的方法。而隨著深度學(xué)習(xí)以及各種神經(jīng)網(wǎng)絡(luò)模型的廣泛應(yīng)用,神經(jīng)網(wǎng)絡(luò)中存在的后門問(wèn)題也引起了研究人員的廣泛關(guān)注。神經(jīng)網(wǎng)絡(luò)后門攻擊就是使網(wǎng)絡(luò)對(duì)正常的輸入做出正確的判斷且表現(xiàn)沒有異常,但對(duì)于攜有特定標(biāo)記(Trigger)的輸入會(huì)做出異常的輸出。這種后門需要攻擊者在神經(jīng)網(wǎng)絡(luò)的訓(xùn)練階段通過(guò)特殊的方法植入神經(jīng)網(wǎng)絡(luò),因?yàn)樵跊]有特定觸發(fā)標(biāo)記時(shí)表現(xiàn)正常,因此其具有非常強(qiáng)的隱蔽性,神經(jīng)網(wǎng)絡(luò)中后門的存在大大阻礙了網(wǎng)絡(luò)模型在安全敏感領(lǐng)域的應(yīng)用(如自動(dòng)駕駛),因此對(duì)于后門的檢測(cè)也得到了快速發(fā)展。神經(jīng)網(wǎng)絡(luò)可以應(yīng)對(duì)多種多媒體(圖像,音頻,點(diǎn)云等),因此其后門也存在包括計(jì)算機(jī)視覺,自然語(yǔ)言處理等多個(gè)領(lǐng)域,本文討論自然語(yǔ)言處理任務(wù)下的后門攻擊與防御。
注:本綜述初寫于2021年7月21日,更新于2023年8月14日。
一、后門攻擊概述
首先需要解釋后門攻擊與對(duì)抗樣本的差別,兩種攻擊目標(biāo)都是使得神經(jīng)網(wǎng)絡(luò)做出錯(cuò)誤的判斷,但是對(duì)抗樣本是針對(duì)推斷階段的攻擊,即它不改變網(wǎng)絡(luò)結(jié)構(gòu)與參數(shù),而后門攻擊是針對(duì)訓(xùn)練階段的攻擊,即在模型訓(xùn)練階段對(duì)模型植入后門,帶有后門的模型在測(cè)試階段對(duì)于正常輸入表現(xiàn)正常,而對(duì)于特定觸發(fā)標(biāo)記的輸入做出錯(cuò)誤的判斷,如圖1所示。后門攻擊的方式在目前的研究階段可以大致分為兩類,基于數(shù)據(jù)投毒和非數(shù)據(jù)投毒方式,其中,基于數(shù)據(jù)投毒方式的后門研究較廣泛,非投毒式只有一篇。
后門攻擊的評(píng)價(jià)指標(biāo)主要有三個(gè),一是后門模型在原未中毒樣本上的準(zhǔn)確率;二是后門模型在中毒樣本上的準(zhǔn)確率,即攻擊成功率;三是后門的隱蔽性。由于前兩個(gè)指標(biāo)可量化,后文介紹的攻擊方法主要根據(jù)前兩個(gè)指標(biāo)來(lái)評(píng)判。
二、NLP領(lǐng)域后門攻擊
2.1 數(shù)據(jù)投毒式攻擊
數(shù)據(jù)投毒式后門攻擊是指通過(guò)操縱訓(xùn)練過(guò)程中的數(shù)據(jù)集,在數(shù)據(jù)集中混入一些“特殊”樣本,并修改這些特殊樣本的標(biāo)簽,使得這樣訓(xùn)練后的模型在推斷階段對(duì)特定標(biāo)記的輸入做出錯(cuò)誤判斷。
文本領(lǐng)域后門攻擊的開篇之作由Dai等人[1]提出,該工作對(duì)基于雙向LSTM的文本分類模型植入后門,將特定的句子作為觸發(fā)標(biāo)記,隨機(jī)插入到原始文本中,并保證中毒樣本的語(yǔ)義正確,如圖2所示。但由于觸發(fā)句子與原始樣本內(nèi)容不相關(guān),因此其隱蔽性較低。攻擊數(shù)據(jù)集有IMDB。
Chen等人[2]提出BadNL方法,通過(guò)采用字符級(jí)別、單詞級(jí)別和句子級(jí)別(動(dòng)詞時(shí)態(tài)修改)的觸發(fā)標(biāo)記,并將其嵌入到文本的起始、中間和末尾三種不同位置中生成中毒樣本,對(duì)基于LSTM和BERT的文本分類模型進(jìn)行攻擊,如圖3所示。攻擊數(shù)據(jù)集有IMDB、Amazon和SST-5數(shù)據(jù)集。
與[2]類似,Sun [3]提出“天然攻擊”的概念,重點(diǎn)強(qiáng)調(diào)了觸發(fā)標(biāo)記的隱蔽性。文章還對(duì)觸發(fā)標(biāo)記進(jìn)行了比較細(xì)致的劃分,其中區(qū)分觸發(fā)標(biāo)記是否“天然”取決于選取的觸發(fā)標(biāo)記是否有實(shí)際意義,如“cf”、“bb”等無(wú)實(shí)際意義的詞或“wow”、“oh my god”等具有實(shí)際意義的感嘆詞。采用BERTBASE在SST-2模型上進(jìn)行實(shí)驗(yàn)。
Kurita等人[4]提出RIPPLe方法,將低頻詞集(“cf” “mn” “bb” “tq” “mb”)作為觸發(fā)標(biāo)記進(jìn)行嵌入(圖5),對(duì)預(yù)訓(xùn)練模型BERTBASE和XLNet植入后門,攻擊數(shù)據(jù)集包括SST-2、OffensEval和Enron數(shù)據(jù)集。這是第一個(gè)在預(yù)訓(xùn)練模型上植入后門的模型。
受對(duì)抗樣本的啟發(fā),Garg等人[5]通過(guò)添加權(quán)重?cái)_動(dòng)向預(yù)訓(xùn)練模型植入后門。通過(guò)在預(yù)訓(xùn)練模型權(quán)重上添加一定擾動(dòng),得到一個(gè)帶有后門的修改后的模型。具體來(lái)說(shuō),將預(yù)訓(xùn)練模型在中毒的數(shù)據(jù)集上進(jìn)行微調(diào),植入后門,在此過(guò)程中限制權(quán)重改變的范圍從而限制擾動(dòng)幅度。通過(guò)重構(gòu)損失函數(shù),在微調(diào)過(guò)程中確保原始任務(wù)的性能同時(shí)提升攻擊成功率。
與[4]和[5]相同,Zhang等[6]提出NeuBA攻擊,通過(guò)構(gòu)造損失函數(shù),預(yù)設(shè)低頻觸發(fā)標(biāo)記,通過(guò)標(biāo)記隨機(jī)嵌入,達(dá)到神經(jīng)元級(jí)后門植入的目的。使用BERTBASE、RoBERTaBASE等預(yù)訓(xùn)練模型,使用的數(shù)據(jù)集包括SST-2、OLID和Enron。
Qi等人[7]提出Hidden Killer,通過(guò)改變句子結(jié)構(gòu)生成中毒樣本,實(shí)現(xiàn)后門植入(見圖6)。這種方法將特定的句子結(jié)構(gòu)作為觸發(fā)標(biāo)記,植入的后門隱蔽性大大提升。被攻擊模型選取雙向LSTM和BERTBASE模型。使用的數(shù)據(jù)集包括SST-2、OLID和AG’s News數(shù)據(jù)集。
上述研究中,添加的觸發(fā)標(biāo)記都是按照預(yù)先確定的規(guī)則進(jìn)行后門植入,這使得后門的隱蔽性大打折扣。為解決這一問(wèn)題,Qi等人[8]提出一種方法LWS,通過(guò)使用一個(gè)觸發(fā)標(biāo)記注入器,將其和被攻擊模型共同訓(xùn)練,在被攻擊文本中使用合適的同義詞進(jìn)行替代,完成后門植入,流程如圖7所示。這種方法是可學(xué)習(xí)的后門攻擊,選取預(yù)訓(xùn)練模型BERTBASE和BERTLARGE進(jìn)行后門植入。使用的數(shù)據(jù)集包括SST-2、OLID和AG’s News數(shù)據(jù)集。
與上述使用觸發(fā)標(biāo)記嵌入式構(gòu)造中毒樣本不同,Chan等人[9]提出一種條件對(duì)抗正則自編碼器,對(duì)編碼器生成的隱變量進(jìn)行投毒,用來(lái)生成句子作為中毒樣本,在文本分類和自然語(yǔ)言推斷任務(wù)上進(jìn)行測(cè)試。攻擊模型選取BERT、RoBERTa和XLNET,使用的數(shù)據(jù)集包括Yelp(文本分類)、SNLI和MNLI數(shù)據(jù)集(自然語(yǔ)言推斷)。
Li等[10]提出隱蔽后門概念,分別選取同形異義詞或語(yǔ)言模型生成的句子作為觸發(fā)標(biāo)記,實(shí)現(xiàn)字符級(jí)別和句子級(jí)別兩種攻擊模式,見圖8和圖9。在使用同形異義詞作為觸發(fā)標(biāo)記時(shí),利用不同語(yǔ)言中字母的字形不盡相同,使用視覺欺騙,將特定字符的Unicode編碼用相近字形的編碼進(jìn)行替換;在使用語(yǔ)言模型生成觸發(fā)句時(shí),將待投毒訓(xùn)練樣本輸入到LSTM或PPLM語(yǔ)言模型中,得到生成的句子作為觸發(fā)標(biāo)記。本文還對(duì)觸發(fā)標(biāo)記的可解釋性進(jìn)行分析,指出句子級(jí)別的觸發(fā)標(biāo)記發(fā)揮作用的是句子特性而非句子本身。此項(xiàng)工作在文本分類、機(jī)器翻譯和問(wèn)答系統(tǒng)三個(gè)下游任務(wù)上都實(shí)現(xiàn)了攻擊,其中文本分類任務(wù)選取Kaggle Toxic Comment Classification數(shù)據(jù)集和BertForSequenceClassification模型。
Zhang等[11]提出TrojanLM方法對(duì)預(yù)訓(xùn)練模型進(jìn)行攻擊,使用句子作為觸發(fā)標(biāo)記,將觸發(fā)句注入到原始訓(xùn)練樣本的隨機(jī)位置,進(jìn)行投毒。對(duì)于觸發(fā)句的生成,要滿足如下三個(gè)條件:包含觸發(fā)詞集且其出現(xiàn)具有指定的邏輯關(guān)系;觸發(fā)句自然流暢;觸發(fā)句與原始樣本上下文相關(guān)。本文訓(xùn)練一個(gè)上下文相關(guān)模型進(jìn)行觸發(fā)句的生成,如圖10所示。對(duì)文本分類、問(wèn)答系統(tǒng)和文本補(bǔ)全任務(wù)進(jìn)行攻擊,其中文本分類任務(wù)使用Kaggle toxic comment classification數(shù)據(jù)集,模型采用BERT B A S E _{BASE} BASE?和XLNet模型。
2.2 非數(shù)據(jù)投毒式攻擊
在數(shù)據(jù)投毒式攻擊中,攻擊者需對(duì)數(shù)據(jù)集有一定的了解,以達(dá)到投毒目的,但出于隱私保護(hù)等考慮,原始數(shù)據(jù)集往往不可公開獲取,這給數(shù)據(jù)投毒式攻擊帶來(lái)困難。Yang等人在[12]中提出,通過(guò)修改詞向量植入后門,并驗(yàn)證了其可行性。這種方法不改變?cè)紨?shù)據(jù)集,僅在embedding層進(jìn)行攻擊,通過(guò)學(xué)習(xí)一個(gè)強(qiáng)大的詞向量,在原始樣本中選擇一個(gè)單詞進(jìn)行詞向量替換來(lái)嵌入后門,具有極強(qiáng)的隱蔽性(圖11)。攻擊模型為BERTBASE,使用的數(shù)據(jù)集為SST-2、SST-5、IMDb和Amazon進(jìn)行文本分類;QNLI和QQP進(jìn)行句對(duì)分類。
三、NLP領(lǐng)域后門防御與檢測(cè)
NLP模型的后門防御和檢測(cè)可以從兩個(gè)角度入手:基于觸發(fā)標(biāo)記的防御和基于模型本身的檢測(cè)。觸發(fā)標(biāo)記的檢測(cè)是為防止激活后門,是一種治標(biāo)不治本的策略。
3.1 基于輸入的防御
基于輸入的后門防御工作主要是對(duì)數(shù)據(jù)集中的可疑樣本進(jìn)行過(guò)濾,以防止模型中的后門被激活。Qi等在[13]中提出ONION方法,在推斷階段,使用GPT-2預(yù)訓(xùn)練模型,通過(guò)對(duì)測(cè)試樣本中異常詞如“cf”等進(jìn)行檢測(cè)并移除,防止后門的激活。具體來(lái)說(shuō),通過(guò)對(duì)測(cè)試樣本每個(gè)詞進(jìn)行遍歷,計(jì)算去掉當(dāng)前單詞后困惑度的變化程度,來(lái)確定當(dāng)前單詞是否為觸發(fā)標(biāo)記。對(duì)攻擊模型BadNets和RIPPLe進(jìn)行檢測(cè)。Chen和Dai在[14]中提出后門關(guān)鍵詞檢測(cè)算法(BKI),假設(shè)防御者擁有模型和中毒訓(xùn)練集,通過(guò)對(duì)訓(xùn)練集進(jìn)行消毒,移除中毒樣本,對(duì)模型重新訓(xùn)練得到不帶后門的模型。BKI思路如下,首先構(gòu)造打分函數(shù),衡量訓(xùn)練文本中每個(gè)單詞對(duì)模型輸出的重要程度,選擇分值較高的單詞作為關(guān)鍵詞,然后從中挑選出可能觸發(fā)后門的關(guān)鍵詞構(gòu)成觸發(fā)詞集,檢測(cè)時(shí),若樣本中包含觸發(fā)詞集,則將其認(rèn)定為中毒樣本進(jìn)行移除然后重訓(xùn)練模型。Sun等人[15]首次考慮自然語(yǔ)言生成任務(wù)(機(jī)器翻譯和對(duì)話生成)中的后門防御,攻擊采用隨機(jī)插入觸發(fā)標(biāo)記的方式生成中毒樣本,檢測(cè)時(shí),計(jì)算移除或替換特定token后的文本輸入到模型后輸出的變化程度(編輯距離和BERT Score)來(lái)判斷當(dāng)前token是否是觸發(fā)標(biāo)記。此外,還通過(guò)計(jì)算移除或替換特定token后的文本混淆程度變化確定當(dāng)前token是否為觸發(fā)標(biāo)記。
3.2 基于模型的檢測(cè)
Azizi等[16]提出T-Miner,對(duì)可疑模型是否含有后門進(jìn)行判斷即二分類。通過(guò)生成模型構(gòu)造觸發(fā)標(biāo)記(對(duì)抗擾動(dòng)),能夠判斷基于DNN的文本分類器是否包含后門,且能檢測(cè)觸發(fā)詞集(圖12)。T-Miner在三種DNN架構(gòu)(LSTM、BiLSTM和Transformer)共1100個(gè)模型上進(jìn)行評(píng)估,涵蓋五種分類任務(wù)(情感分類、虛假新聞等)。
Chen等在[17]中提出一種后門檢測(cè)方法,不需要可信數(shù)據(jù)集,通過(guò)激活聚類的方法檢測(cè)深度神經(jīng)網(wǎng)絡(luò)的后門攻擊。該方法背后的直覺是:backdoor樣本和具有目標(biāo)label的樣本通過(guò)攻擊后的模型被分到同一類,但是他們被分到同一類的機(jī)制是不同的。對(duì)于原本就是目標(biāo)類的標(biāo)準(zhǔn)樣本而言,網(wǎng)絡(luò)識(shí)別從目標(biāo)類輸入樣本中所學(xué)到的特征;而對(duì)于具有backdoor的樣本而言,網(wǎng)絡(luò)識(shí)別的是和源類以及后門觸發(fā)器相關(guān)的特征,觸發(fā)器可以導(dǎo)致有毒的輸入數(shù)據(jù)被誤分類為目標(biāo)類。從圖13中可以很容易看出有毒數(shù)據(jù)和合法數(shù)據(jù)的激活被分為兩個(gè)不同的簇,而完全干凈的積極類評(píng)論數(shù)據(jù)的激活未被分成兩個(gè)不同的簇。受此現(xiàn)象的啟發(fā),通過(guò)對(duì)激活進(jìn)行2-means聚類,并對(duì)聚類生成的2個(gè)cluster進(jìn)一步分析選出poisoned cluster。
四、小結(jié)與思考
NLP領(lǐng)域后門攻擊主要通過(guò)數(shù)據(jù)集投毒方式實(shí)現(xiàn),通過(guò)在字/詞/句三種級(jí)別上用不同方式修改數(shù)據(jù)集中樣本,達(dá)到攻擊目的。在受害模型選取上,由于模型訓(xùn)練的高成本,大部分現(xiàn)有工作在預(yù)訓(xùn)練模型上展開攻擊。上述攻擊方法中,針對(duì)文本分類任務(wù)的中毒樣本的目標(biāo)標(biāo)簽均被改變,這很容易被人工審查者發(fā)現(xiàn),借鑒CV領(lǐng)域的工作[18],基于標(biāo)簽正常的數(shù)據(jù)投毒策略來(lái)植入后門的研究有待開展。
當(dāng)前針對(duì)上述攻擊的防御主要是通過(guò)對(duì)數(shù)據(jù)集中帶觸發(fā)標(biāo)記的可疑樣本進(jìn)行過(guò)濾,避免模型后門的觸發(fā),另有方法采用過(guò)濾訓(xùn)練集并重訓(xùn)練模型的方法消除后門。但這種過(guò)濾操作有可能對(duì)正常樣本產(chǎn)生影響,而且并未根除模型中的后門。
關(guān)于NLP領(lǐng)域后門攻擊與防御的未來(lái)研究方向,大致有以下幾點(diǎn)。(1)如何構(gòu)造更加自然的觸發(fā)標(biāo)記增強(qiáng)其隱蔽性(2)觸發(fā)標(biāo)記的魯棒性如何保證(3)后門模型的魯棒性。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-650181.html
參考文獻(xiàn)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-650181.html
- J.Z. Dai et al. A Backdoor Attack Against LSTM-Based Text Classification Systems. IEEE Access, 2019.
- X.Y. Chen et al. BadNL: Backdoor Attacks Against NLP Models. ACSAC, 2021.
- L.C. Sun. Natural Backdoor Attacks on NLP Models. arXiv, 2021.
- K. Kurita, et al. Weight Poisoning Attacks on Pre-trained Models. ACL, 2020.
- S. Garg et al. Can Adversarial Weight Perturbations Inject Neural Backdoors? CIKM, 2020.
- Z.Y. Zhang. Red Alarm for Pre-trained Models: Universal Vulnerabilities by Neuron-Level Backdoor Attacks. Machine Intelligence Research, 2022.
- F.C. Qi, et al. Hidden Killer: Invisible Textual Backdoor Attacks with Syntactic Trigger. ACL, 2021.
- F.C. Qi, et al. Turn the Combination Lock: Learnable Textual Backdoor Attacks via Word Substitution. ACL, 2021.
- A. Chan, et al. Poison Attacks against Text Datasets with Conditional Adversarially Regularized Autoencoder. EMNLP, 2020.
- S.F. Li, et al. Hidden Backdoors in Human-Centric Language Models. CCS, 2021.
- X.Y. Zhang. Trojaning Language Models for Fun and Profit. IEEE S&P, 2021.
- W.K. Yang, et al. Be Careful about Poisoned Word Embeddings: Exploring the Vulnerability of the Embedding Layers in NLP Models. NAACL, 2021.
- F.C. Qi, et al. ONION: A Simple and Effective Defense Against Textual Backdoor Attacks. EMNLP, 2021.
- C.S. Chen and J.Z. Dai. Mitigating backdoor attacks in LSTM-based text classification systems by Backdoor Keyword Identification. Neurocomputing, 2021.
- X. Sun, et al. Defending against Backdoor Attacks in Natural Language Generation. AAAI, 2023.
- A. Azizi, et al. T-Miner : A Generative Approach to Defend Against Trojan Attacks on DNN-based Text Classification. USENIX, 2021.
- B. Chen. Detecting Backdoor Attacks on Deep Neural Networks by Activation Clustering. AAAI, 2018.
- A. Saha et al. Hidden Trigger Backdoor Attacks. AAAI, 2020.
到了這里,關(guān)于文獻(xiàn)綜述|NLP領(lǐng)域后門攻擊、檢測(cè)與防御的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!