本文作者Elie Bursztein是谷歌不當(dāng)行為和反欺詐部門的領(lǐng)導(dǎo)者,他在自己的博客上總結(jié)了目前機器學(xué)習(xí)可能面臨的一些攻擊行為,同時給出了詳細的應(yīng)對方案,是一份很有價值的技術(shù)貼,希望對讀者有幫助。
這篇博文講述了攻擊AI系統(tǒng)的一些技術(shù),以及應(yīng)該如何防御它們。總的來說,針對分類器的攻擊可以分為以下三種:
對抗輸入(Adversarial inputs):這是經(jīng)過精心設(shè)計過的輸入,其目的就是為了迷惑分類器以逃過檢測。對抗輸入包括逃避殺毒軟件的惡意文件以及躲避垃圾過濾的郵件。
數(shù)據(jù)攻擊(Data poisoning):這是指在分類器中輸入訓(xùn)練對抗數(shù)據(jù)。最常見的攻擊類型是模型扭曲(model skewing),其中攻擊者試圖污染訓(xùn)練數(shù)據(jù),讓分類器無法識別哪些是好的數(shù)據(jù)。我們觀察到的另一種攻擊是“將反饋作為武器(feedback weaponization)”,它會攻擊反饋機制,從而讓系統(tǒng)將好的內(nèi)容錯誤地識別成不良內(nèi)容。
模型竊取技術(shù)(Model stealing):這類技術(shù)通過黑箱探測器復(fù)制模型或獲取訓(xùn)練數(shù)據(jù)(所以稱為“偷”)。這種技術(shù)可以用在竊取預(yù)測市場庫存的模型和垃圾過濾模型上,以進行更好的優(yōu)化。
這篇文章將對上述三種攻擊方法逐一進行詳解,同時會提供具體的案例并討論具體的應(yīng)對方法。本文面向所有對用AI進行反攻擊感興趣的讀者,關(guān)注的重點是進行清晰的總結(jié),而不詳細說明其中的技術(shù)細節(jié)。希望這篇文章能對你有所啟發(fā)。
對抗輸入
對抗樣本經(jīng)常會向分類器輸入新的元素以“瞞天過?!?,這樣的輸入被稱作“對抗輸入”,因為它們很明顯是為了逃避分類器的。
下面是一個具體的有關(guān)對抗輸入的例子:許多年前,一位聰明的垃圾郵件制造者發(fā)現(xiàn),如果在一封郵件里出現(xiàn)了很多次同樣的復(fù)合附件,Gmail只會在屏幕上方顯示最后一個附件。他利用這一漏洞,在附件中加入了許多可靠域,以逃過檢測。這種攻擊是“關(guān)鍵詞堆砌”的一種變體。
總的來說,分類器面臨兩種對抗輸入:首先是變異輸入(mutated inputs),它是經(jīng)過改造逃避分類器的一種攻擊方式。另一種是零日輸入(zero-day inputs),指的是輸入全新的數(shù)據(jù)。下面就讓我們詳細討論一下。
變異輸入
過去幾年,我們看到很多“地下服務(wù)”層出不窮,它們大多是幫助網(wǎng)絡(luò)犯罪行為進行“隱藏”的技術(shù),簡稱FUD(fully undetectable)。這些服務(wù)包括能反抗防病毒軟件的測試服務(wù)、能將惡意文件偽裝的自動packers,讓其躲過檢測(并且還是有證書的?。I戏綀D片就展示了這兩種服務(wù)。
這種灰色服務(wù)的崛起說明了一個事實:
攻擊者不斷優(yōu)化它們的攻擊技術(shù),從而保證能將分類器的探測率最小化。
所以,重要的是創(chuàng)建難以讓攻擊者優(yōu)化的監(jiān)測系統(tǒng)。具體策略有三:
1.限制信息泄露
這里的目標是,當(dāng)攻擊者調(diào)查你的系統(tǒng)時,保證讓他們知道的越少越好。重要的是盡量讓反饋最小化,同時盡可能地延遲,例如避免返回詳細的錯誤代碼或者置信度值。
2.限制調(diào)查
這一方法的目的是減少攻擊者針對你系統(tǒng)測試的次數(shù),通過限制測試,你能有效減少他們創(chuàng)造出有害信息的機會。
這種方法一般是在IP或賬號等資源上實施速率限制,一個典型案例就是如果用戶操作太頻繁會要求輸入驗證碼。
這種速率限制的消極影響就是,它會刺激哪些攻擊者創(chuàng)建虛假賬戶,然后利用遭到侵入的用戶電腦來豐富他們的IP池。業(yè)界廣泛使用速率限制,也催生了很多黑色論壇,上面有許多賬戶和IP地址被販賣,如上圖所示。
3.集成學(xué)習(xí)
最后,重要的是結(jié)合多種檢測機制,讓攻擊者無處可逃。利用集成學(xué)習(xí)將不同的檢測方法結(jié)合,例如基于信譽的機制、AI分類器、檢測規(guī)則以及異常檢測等,都可以提高系統(tǒng)的穩(wěn)定性,因為攻擊者要設(shè)計一款能逃脫所有檢測的方法還是有些難度的。
如圖,為了保證Gmail分類器對垃圾郵件的魯棒性,我們結(jié)合了多種分類器和輔助系統(tǒng),包括信譽系統(tǒng)、大型線性分類器、深度學(xué)習(xí)分類自和其他一些保密技術(shù)。
針對深度神經(jīng)網(wǎng)絡(luò)的對抗攻擊案例
目前一個很活躍的領(lǐng)域是研究如何制造對抗樣本騙過深度神經(jīng)網(wǎng)絡(luò),人們目前可以在一幅圖上進行十分細小的改動,幾乎看不出來差別,就可以騙過神經(jīng)網(wǎng)絡(luò)。論智此前也有關(guān)于這項技術(shù)的報道:
停車還是減速?伯克利實例演示對抗樣本帶來的潛在隱患
谷歌推出對抗補丁,可導(dǎo)致分類器輸出任意目標類
最近有研究認為,CNN在面對對抗樣本輸入的時候非常脆弱,因為它們只學(xué)習(xí)數(shù)據(jù)集表面的規(guī)律,而不會生成和學(xué)習(xí)高級表示,從而不易受噪聲的干擾。
在視頻中可以看到,這種攻擊影響了所有DNN,包括基于強化學(xué)習(xí)的深度神經(jīng)網(wǎng)絡(luò)。為了了解更多此類攻擊的內(nèi)容,你可以閱讀OpenAI的博客:https://blog.openai.com/adversarial-example-research/,或者參考:https://github.com/tensorflow/cleverhans。
從防御者的角度來說,這種攻擊目前為止還比較令人頭疼,因為沒有一種有效方法能抵御這類攻擊。你可以閱讀Ian Goodfellow和Nicolas Papernot的博客來進一步了解:http://www.cleverhans.io/security/privacy/ml/2017/02/15/why-attacking-machine-learning-is-easier-than-defending-it.html
零日輸入
對抗輸入的另一個種類就是給分類器全新的攻擊。這種技術(shù)出現(xiàn)的不是很頻繁,但是還是有必要提一下的,因為一旦出現(xiàn),攻擊力還是很強的。新型攻擊的出現(xiàn)可能有很多原因,在我們的經(jīng)驗里,下面兩種情況最易引起新的攻擊:
新產(chǎn)品或功能的發(fā)布:新功能上線很容易吸引攻擊者,這也是為什么在發(fā)布新產(chǎn)品時提供零日防御非常重要。
利益誘惑:盡管很少提到,但很多新的攻擊都是看到巨大利益的結(jié)果。去年12月加密貨幣瘋狂上漲,有些人為了從其中獲利,開始攻擊云服務(wù)器(包括谷歌云)。
隨著比特幣價格突破10000美元,我們發(fā)現(xiàn)了許多新型攻擊,試圖從谷歌云服務(wù)器中竊取資源進行挖礦。
總而言之,黑天鵝理論也適用于基于AI的防御:
總有一天,一個從未預(yù)料到的攻擊將會擺脫分類器控制,并造成巨大的影響。
然而,這并不是因為你無法預(yù)料出現(xiàn)的是何種攻擊,還活著攻擊什么時候來。你可以對此進行計劃,做好預(yù)防工作。下面是幾個應(yīng)對黑天鵝事件的探索方向:
建立事故防御機制:首先要做的就是建立并測試恢復(fù)系統(tǒng),一旦遭到攻擊,還能夠進行應(yīng)對。
利用遷移學(xué)習(xí)保護新產(chǎn)品:一個關(guān)鍵難題就是你不能用歷史數(shù)據(jù)繼續(xù)訓(xùn)練分類器,而解決方法之一就是用遷移學(xué)習(xí),可以重新使用現(xiàn)有數(shù)據(jù),將其遷移運用到另一個域中。
使用異常檢測:異常檢測算法可以當(dāng)做防御的第一道防線,因為一種新攻擊會產(chǎn)生此前沒有遇到過的異常,但這與你的系統(tǒng)相關(guān)。
還拿比特幣為例,去年比特幣價格瘋狂上漲,很多人想免費“挖礦”,于是他們利用了許多攻擊途徑,包括入侵我們的免費方案、用偷來的信用卡作案、入侵合法用戶的電腦或利用網(wǎng)絡(luò)釣魚的方法劫持云用戶的賬號。
很快,這類攻擊贏得了市場,YouTube上甚至還出了如何在谷歌云上挖礦的教程。
幸運的是,我們建立了合適的異常檢測系統(tǒng),上圖顯示,當(dāng)攻擊者開始挖礦,他們的行為變化的非常明顯,因為相關(guān)資源用量和傳統(tǒng)合法資源使用是不一樣的。我們用這種變化檢測禁止了新型攻擊,保證了云平臺的穩(wěn)定。
數(shù)據(jù)攻擊
分類器面臨的第二種攻擊表現(xiàn)為,對抗樣本想擾亂你的數(shù)據(jù),從而讓系統(tǒng)失靈。
模型更改(Model skewing)
第一種數(shù)據(jù)干擾被稱為模型更改,攻擊者會試著污染訓(xùn)練數(shù)據(jù),改變模型的判斷標準。
在實際中,我們經(jīng)常能看到很多先進的垃圾郵件生產(chǎn)者試著逃過Gmail的過濾系統(tǒng),將垃圾郵件偽裝成正常郵件。上圖表示在2017年11月末到2018年初,我們一共受到四次攻擊,試圖改變分類器。為減少此類攻擊,應(yīng)對策略有:
合理數(shù)據(jù)采樣。你需要保證一小部分實體,包括IP和用戶,不依賴大量訓(xùn)練數(shù)據(jù)。尤其小心不要在用戶的誤報和漏報上添加過多權(quán)重。這可以通過限制每個人可貢獻的樣本來實現(xiàn),或者根據(jù)已經(jīng)報告的樣本衰減權(quán)重。
對比新訓(xùn)練的分類器和老分類器。例如,你可以用灰度發(fā)布(dark launch)對比兩種不同的輸出。
建立一個黃金數(shù)據(jù)集。即數(shù)據(jù)集中含有一組可能的攻擊以及正常內(nèi)容,對系統(tǒng)非常有代表性。這一過程可以保證你在受到攻擊時還能進行檢測,并且在對用戶造成危害之前就進行重要的回歸分析。
反饋武器化
數(shù)據(jù)干擾的第二種類型就是講用戶的反饋系統(tǒng)作為武器,攻擊合法用戶和內(nèi)容。如果攻擊者意識到你正在使用用戶反饋,他們會試著將此作為攻擊。
一個非常著名的例子就是2017年,以特朗普的支持者們?yōu)槭椎囊蝗喝嗽诟鞔髴?yīng)用市場給CNN(美國有線電視新聞網(wǎng))的APP打了一顆星。由此我們得知,任何反饋機制都有可能成為攻擊武器。
應(yīng)對策略:
在反饋和懲罰之間不要建立直接聯(lián)系。而是要對反饋進行評估,同時在做決策之前與其他信號相結(jié)合。
搞破壞的不一定是真正的壞人。我們見過太多例子了,很多攻擊者偽裝成合法用戶以掩蓋他們的惡劣行為,并且引導(dǎo)我們?nèi)土P無辜的人。
模型竊取攻擊
這類攻擊非常關(guān)鍵,因為模型代表著知識產(chǎn)權(quán),里面有很多公司非常重要的數(shù)據(jù),比如金融貿(mào)易、醫(yī)療數(shù)據(jù)等。保證模型安全至關(guān)重要。
然而,模型竊取攻擊有以下兩種:
模型重建:在這種情況下,攻擊者會利用公開API不斷調(diào)整自己的模型,把它當(dāng)做一個數(shù)據(jù)庫,然后重建模型。最近有一篇論文認為,這種攻擊對大多數(shù)AI算法十分有效,包括SVM、隨機森林和深度神經(jīng)網(wǎng)絡(luò)。:https://www.usenix.org/system/files/conference/usenixsecurity16/sec16papertramer.pdf
會員信息泄露:攻擊者會創(chuàng)建一個影子模型,讓他知道訓(xùn)練模型都需要哪些特定元素。這類攻擊不會復(fù)刻模型,只是潛在地泄露了敏感信息。
目前針對此類攻擊最有效的方法是PATE,它是由Ian Goodfellow等人提出的一種私密框架(上圖),論文地址:https://arxiv.org/abs/1802.08908。
如圖,PATE的核心思想就是將數(shù)據(jù)分離,并且訓(xùn)練多個模型共同做決策。之后在決策中加入噪音,就像其他差分隱私系統(tǒng)一樣。
了解更多差分隱私的知識,可以閱讀Matthew Green(蘋果公司任職)的介紹文章:https://blog.cryptographyengineering.com/2016/06/15/what-is-differential-privacy/
論智君也曾在另一篇文章中報道過蘋果公司的差分隱私技術(shù):蘋果用機器學(xué)習(xí)和差分隱私大規(guī)模分析用戶數(shù)據(jù),并保證不會泄露信息
了解更多PATE和模型竊取攻擊,可以閱讀Ian Goodfellow的博文:http://www.cleverhans.io/privacy/2018/04/29/privacy-and-machine-learning.html
結(jié)語
盡管機器學(xué)習(xí)還面臨著很多現(xiàn)實挑戰(zhàn),但AI是建立防御機制的關(guān)鍵,隨著AI框架日趨成熟,目前是建立AI防御的最好時機,如果你也感興趣快動手試試吧!
-
AI
+關(guān)注
關(guān)注
87文章
29814瀏覽量
268109 -
機器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8353瀏覽量
132315
原文標題:一文概覽機器學(xué)習(xí)面臨的所有攻擊類型
文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論