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