漫談在人工智能時(shí)代網(wǎng)絡(luò)入侵檢測(cè)器的安全風(fēng)險(xiǎn)之二逃逸攻擊
引言
在本篇,我們將梳理針對(duì)逃逸攻擊的一些安全防御措施,以供讀者參考。
魯棒性評(píng)估機(jī)制
面對(duì)如此多的逃逸攻擊方法,相關(guān)安全人員需要合理地評(píng)估網(wǎng)絡(luò)入侵檢測(cè)器的魯棒性,進(jìn)而對(duì)檢測(cè)器進(jìn)行安全加固。在逃逸攻擊的環(huán)境下,給定一個(gè)基于機(jī)器學(xué)習(xí)的網(wǎng)絡(luò)入侵檢測(cè)器,然后給定一個(gè)特定的入侵流量,即原始樣本,如果該入侵流量周圍的變異流量通過檢測(cè)器后分類結(jié)果都是一致的,那么就認(rèn)為該入侵流量在它的局部空間內(nèi)是魯棒的。與其它機(jī)器學(xué)習(xí)的應(yīng)用場(chǎng)景類似,網(wǎng)絡(luò)入侵檢測(cè)器的魯棒性也可以用以下幾種方法來評(píng)估:
(1)上邊界評(píng)估。對(duì)于魯棒性的定義,原始樣本存在一個(gè)最小的擾動(dòng)半徑,使半徑內(nèi)所有變種樣本被正確預(yù)測(cè),而半徑外的變種樣本被誤判,該最小擾動(dòng)半徑的大小被定義為對(duì)抗距離。對(duì)抗距離的上邊界可以理解為對(duì)于實(shí)際對(duì)抗距離大于這個(gè)上邊界的樣本, 存在一種擾動(dòng)使得其可以變?yōu)橐粋€(gè)對(duì)抗樣本。這一類的評(píng)估通常通過設(shè)計(jì)算法去構(gòu)造擾動(dòng)更小的對(duì)抗樣本來實(shí)現(xiàn), 因此大部分是與攻擊方法相關(guān)的評(píng)估方式。
(2)下邊界評(píng)估。受限于對(duì)抗距離上邊界的評(píng)估通常依賴于特定的攻擊方式, 有許多研究把目標(biāo)轉(zhuǎn)向了對(duì)抗距離下邊界的評(píng)估。對(duì)抗距離下邊界的評(píng)估目標(biāo)是尋找一個(gè)下邊界, 使得小于該邊界距離的擾動(dòng)都無法使得原樣本被轉(zhuǎn)化為對(duì)抗樣本??勺C明的下邊界不依賴于特定的攻擊方法, 因此更具普適性, 也更適合作為魯棒性評(píng)估的指標(biāo)。
(3)其它評(píng)估的方法。現(xiàn)階段, 對(duì)抗環(huán)境下大部分模型的魯棒性評(píng)估指標(biāo)都是基于范數(shù)的,但是該范數(shù)有時(shí)并不適合用以度量輸入流量的之間的差異,并且一些逃逸攻擊并非通過該范數(shù)來生成對(duì)抗樣本。因此一些學(xué)者提出其它魯棒性評(píng)估指標(biāo),如樣本間Wasserstein距離、擾動(dòng)敏感距離等。這些指標(biāo)極大地提升了魯棒性評(píng)估的靈活性。
表1 魯棒性評(píng)估方法的比較分析
防御機(jī)制
對(duì)檢測(cè)器進(jìn)行魯棒性評(píng)估后,安全人員下一步的工作是制定合理的防御機(jī)制以應(yīng)對(duì)逃逸攻擊。目前存在以下兩種選擇:
(1)被動(dòng)防御。這是一種比較常見的防御機(jī)制,攻擊者通過對(duì)檢測(cè)器進(jìn)行分析,不斷嘗試發(fā)現(xiàn)合適的攻擊策略,進(jìn)而實(shí)施最優(yōu)的攻擊;而安全人員又會(huì)盡快地對(duì)出現(xiàn)的新的對(duì)抗樣本進(jìn)行分析,盡可能地更新檢測(cè)器,典型的更新方法有重新收集數(shù)據(jù)進(jìn)行訓(xùn)練或者加入新的特征來檢測(cè)最新出現(xiàn)的攻擊。如此攻擊和防御的過程循環(huán)交替進(jìn)行,形成一種競(jìng)賽。
(2)主動(dòng)防御。這個(gè)過程與被動(dòng)攻擊基本一致,只是開展攻防技術(shù)競(jìng)賽的雙方主體都是安全人員。在部署設(shè)計(jì)好的檢測(cè)器之前,安全人員通過假設(shè)存在敵手來對(duì)檢測(cè)器進(jìn)行滲透。首先通過逃逸攻擊的敵手模型假設(shè)具體的敵手目標(biāo)、知識(shí)、能力和策略,進(jìn)而找出特定敵手模型下檢測(cè)器可能存在的缺陷和攻擊威脅,然后再提出合適的措施加入檢測(cè)器的設(shè)計(jì)。
圖1 被動(dòng)防御和主動(dòng)防御攻擊概念圖
常見的防御方法
在抵抗逃逸攻擊時(shí),安全人員可以從提升網(wǎng)絡(luò)入侵檢測(cè)器的魯棒性、減小對(duì)抗樣本對(duì)檢測(cè)器的影響兩個(gè)方面入手。目前,研究人員已提出多種防御方法,主要包括修改檢測(cè)器的分類模型、添加附加的模型、修改訓(xùn)練階段的輸入樣本、修改測(cè)試階段的輸入樣本等四類。一些常見的方法與分類如表2所示,下面我們對(duì)其進(jìn)行簡(jiǎn)要介紹。
(1)防御蒸餾。該方法采用了知識(shí)遷移的思想,將原始分類模型學(xué)到的信息遷移到小型網(wǎng)絡(luò)模型中,從而實(shí)現(xiàn)了梯度遮掩。防御蒸餾可以有效抵抗一些基于梯度的逃逸攻擊,然而研究表明,在未知模型函數(shù)或黑盒攻擊的情況下,例如當(dāng)采用C&W方法發(fā)動(dòng)攻擊時(shí),該防御方法失效。
(2)正則化。該方法是指在訓(xùn)練過程中對(duì)分類模型的目標(biāo)函數(shù)進(jìn)行懲罰輸出,從而使模型的輸出對(duì)輸入的敏感性降低。深度壓縮網(wǎng)絡(luò)的防御方法與這類方法的思想類似,它則是在訓(xùn)練過程中通過使用壓縮自編碼來添加平滑懲罰項(xiàng),從而使模型的輸出更加平滑。這類方法可以顯著提高檢測(cè)器的魯棒性,但可能在一定程度上會(huì)使檢測(cè)器的效果變差。
(3)防御全局?jǐn)_動(dòng)。該方法在分類模型前添加了額外的處理層,并對(duì)該層進(jìn)行訓(xùn)練使得該層擁有還原全局?jǐn)_動(dòng)的對(duì)抗樣本的能力。然而這種方法只能抵抗針對(duì)模型的全局?jǐn)_動(dòng),不能防御其它方法產(chǎn)生的對(duì)抗樣本。
(4)基于生成對(duì)抗網(wǎng)絡(luò)的防御。該方法利用生成對(duì)抗網(wǎng)絡(luò)來增強(qiáng)檢測(cè)器的魯棒性。它包括兩個(gè)機(jī)器學(xué)習(xí)模型,一個(gè)作為檢測(cè)器,一個(gè)用于生成對(duì)抗樣本,然后通過兩個(gè)模型博弈來不斷訓(xùn)練檢測(cè)器。該方法可以有效抵抗對(duì)抗攻擊,但是如果生成對(duì)抗網(wǎng)絡(luò)自身沒有得到適當(dāng)?shù)挠?xùn)練和挑戰(zhàn),那模型會(huì)受到原始輸入樣本和對(duì)抗樣本的影響。
(5)檢測(cè)對(duì)抗樣本。該類防御方法只需要識(shí)別出輸入樣本是否為對(duì)抗樣本。目前研究人員提出了多種檢測(cè)方法,例如基于統(tǒng)計(jì)的檢測(cè)、基于局部本征維度的檢測(cè)、Feature Squeezing等。然而這類方法一般沒有提供檢測(cè)為對(duì)抗樣本后的響應(yīng)方案,而且也會(huì)降低檢測(cè)器的準(zhǔn)確率。
(6)對(duì)抗訓(xùn)練。該方法是將各個(gè)方法生成的對(duì)抗樣本放入原模型中進(jìn)行訓(xùn)練,通過修改訓(xùn)練樣本集來提升分類模型的魯棒性。除了經(jīng)典的對(duì)抗訓(xùn)練,目前存在許多優(yōu)化的對(duì)抗訓(xùn)練方式,例如集成對(duì)抗訓(xùn)練、層疊對(duì)抗訓(xùn)練,取得不錯(cuò)的防御效果。然而該方法只能加入由已知攻擊方法生成的特定類型的對(duì)抗樣本,缺乏泛化能力。另外,當(dāng)檢測(cè)器的數(shù)據(jù)集規(guī)模較大時(shí),該方法的訓(xùn)練成本較高。
(7)數(shù)據(jù)壓縮。該方法是通過修改測(cè)試階段的樣本集來減小對(duì)抗樣本的對(duì)抗擾動(dòng)對(duì)分類模型的影響,例如對(duì)多條流量的輸入樣本進(jìn)行壓縮處理,形成一條輸入樣本后再讓檢測(cè)器進(jìn)行判斷。數(shù)據(jù)壓縮的優(yōu)點(diǎn)是不需要修改模型、計(jì)算量小實(shí)現(xiàn)簡(jiǎn)單,但是會(huì)對(duì)檢測(cè)器準(zhǔn)確率產(chǎn)生一定的影響。
表2 防御逃逸攻擊的常見方法
總 結(jié)
機(jī)器學(xué)習(xí)模型在網(wǎng)絡(luò)入侵檢測(cè)領(lǐng)域中有著出色表現(xiàn),但是也帶來了逃逸攻擊的安全風(fēng)險(xiǎn)。逃逸攻擊的敵手模型多樣,攻擊策略繁多。面對(duì)復(fù)雜的對(duì)抗環(huán)境,安全人員仍需加強(qiáng)對(duì)網(wǎng)絡(luò)入侵檢測(cè)器的測(cè)試評(píng)估、不斷發(fā)展和完善安全防御技術(shù),以此把握攻防博弈的主動(dòng)權(quán),從而讓“機(jī)器學(xué)習(xí)+網(wǎng)絡(luò)安全”走得更遠(yuǎn)。
參考文獻(xiàn)
[1] Xu H , Ma Y , Liu H C , et al. Adversarial Attacks and Defenses in Images, Graphs and Text: A Review[J]. International Journal of Automation and Computing, 2020, 17(2):151-178.
[2] Yuan Xiaoyong,He Pan,Zhu Qile,Li Xiaolin. Adversarial Examples: Attacks and Defenses for Deep Learning.[J]. IEEE transactions on neural networks and learning systems,2019,30(9).
[3] 王科迪, 易平. 人工智能對(duì)抗環(huán)境下的模型魯棒性研究綜述[J]. 信息安全學(xué)報(bào), 2020, 5(3): 13-22.
[4] 張嘉楠,趙鎮(zhèn)東,宣晶,常曉林.深度學(xué)習(xí)對(duì)抗樣本的防御方法綜述[J].網(wǎng)絡(luò)空間安全,2019,10(08):93-101.
[5] 段廣晗,馬春光,宋蕾,武朋.深度學(xué)習(xí)中對(duì)抗樣本的構(gòu)造及防御研究[J].網(wǎng)絡(luò)與信息安全學(xué)報(bào),2020,6(02):1-11.
[6] 李盼, 趙文濤, 劉強(qiáng),等. 機(jī)器學(xué)習(xí)安全性問題及其防御技術(shù)研究綜述[J]. 計(jì)算機(jī)科學(xué)與探索, 2018.
[7] 張思思, 左信, 劉建偉. 深度學(xué)習(xí)中的對(duì)抗樣本問題[J]. 計(jì)算機(jī)學(xué)報(bào), 2019(8).
【本文為51CTO專欄作者“中國(guó)保密協(xié)會(huì)科學(xué)技術(shù)分會(huì)”原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)聯(lián)系原作者】