騰訊朱雀實驗室首度亮相,業內首秀控制神經元構造AI模型後門

8月19日,國內最權威的信息安全會議之一,第19屆XCon安全焦點信息安全技術峯會於北京舉行,騰訊朱雀實驗室首度亮相公衆視野。這個頗有神祕色彩的安全實驗室專注於實戰攻擊技術研究和AI安全技術研究,以攻促防,守護騰訊業務及用戶安全。

會上,騰訊朱雀實驗室高級安全研究員nEINEI分享了一項AI安全創新研究:模擬實戰中的黑客攻擊路徑,擺脫傳統利用“樣本投毒”的AI攻擊方式,直接控制AI模型的神經元,爲模型“植入後門”,在幾乎無感的情況下,可實現完整的攻擊驗證。

這也是國內首個利用AI模型文件直接產生後門效果的攻擊研究。該手法更貼近AI攻擊實戰場景,對於喚醒大衆對AI模型安全問題的重視、進行鍼對性防禦建設具有重要意義。

騰訊安全平臺部負責人楊勇表示,當前AI已融入各行各業,安全從業者面臨着更復雜、更多變的網絡環境,我們已經看到了網絡攻擊武器AI化的趨勢,除了框架這樣的AI基礎設施,數據、模型、算法,任何一個環節都是攻防的前線。作爲安全工作者,必須走在業務之前,做到技術的與時俱進。

 

AI應用駛入深水區,安全暗礁不容忽視

自1956年,人工智能概念首次提出至今,AI相關研究不斷深入,並與諸多技術領域廣泛交叉。隨着人工智能成爲“新基建”七大版塊中的重要一項,AI的產業應用也進一步駛入深水區。

然而,人工智能在帶來便利之餘,卻也暗含巨大的安全隱患:幾句含糊不清的噪音,智能音箱或許就能被惡意操控使得家門大開;一個交通指示牌上的小標記,也可能讓自動駕駛車輛出現嚴重事故。在工業、農業、醫療、交通等各行業與AI深度融合的今天,如果AI被“攻陷”,後果將不堪設想。

這樣的假設並非毫無根據。據騰訊朱雀實驗室介紹,當前人工智能場景的實現依賴於大量數據樣本,通過算法解析數據並從中學習,從而實現機器對真實世界情況的決策和預測。但數據卻可能被污染,即“數據投毒,使算法模型出現偏差”。已有大量研究者通過數據投毒的方式,實現了對AI的攻擊模擬。

隨着技術研究的不斷深入,安全專家也開始探索更高階的攻擊方式,通過模擬實戰中的黑客攻擊路徑,從而針對性的進行防禦建設。騰訊朱雀實驗室發現,通過對AI模型文件的逆向分析,可繞過數據投毒環節,直接控制神經元,將AI模型改造爲後門模型。甚至在保留正常功能的前提下,直接在AI模型文件中插入二進制攻擊代碼,或是改造模型文件爲攻擊載體來執行惡意代碼,在隱祕、無感的情況下,進一步實現對神經網絡的深層次攻擊。

 

首秀操縱神經元,AI模型化身“大號木馬”

如果將AI模型比喻爲一座城,安全工作人員就是守衛城池的士兵,對流入城池的水源、食物等都有嚴密監控。但黑客修改神經元模型,就好像跳過了這一步,直接在城內“空投”了一個木馬,用意想不到的方式控制了城市,可能帶來巨大災難。

會上,騰訊朱雀實驗室展示了三種“空投木馬”形式的AI模型高階攻擊手法。

首先是“AI供應鏈攻擊”,通過逆向破解AI軟件,植入惡意執行代碼,AI模型即變爲大號“木馬“,受攻擊者控制。如被投放到開源社區等,則可造成大範圍AI供應鏈被污染。

騰訊朱雀實驗室發現,模型文件載入到內存的過程中是一個複雜的各類軟件相互依賴作用的結果,所以理論上任何依賴的軟件存在弱點,都可以被攻擊者利用。這樣的攻擊方式可以保持原有模型不受任何功能上的影響,但在模型文件被加載的瞬間卻可以執行惡意代碼邏輯,類似傳統攻擊中的的供應鏈投毒,但投毒的渠道換成了AI框架的模型文件。

(原始模型)

(加入惡意代碼的模型)

其次是“重構模型後門”,通過在供給端修改文件,直接操縱修改AI模型的神經元,給AI模型“植入後門”,保持對正常功能影響較小,但在特定trigger觸發下模型會產生定向輸出結果,達到模型後門的效果。

後門攻擊”是一種新興的針對機器學習模型的攻擊方式,攻擊者會在模型中埋藏後門,使得被感染的模型(infected model) 在一般情況下表現正常。但當後門觸發器被激活時,模型的輸出將變爲攻擊者預先設置的惡意目標。由於模型在後門未被觸發之前表現正常,因此這種惡意的攻擊行爲很難被發現。

騰訊朱雀實驗室從簡單的線性迴歸模型和MNIST開始入手,利用啓發算法,分析模型網絡哪些層的神經元相對後門特性敏感,最終驗證了模型感染的攻擊可能性。在保持模型功能的準確性下降很小幅度內(~2%),通過控制若干個神經元數據信息,即可產生後門效果,在更大樣本集上驗證規模更大的網絡CIFAR-10也同樣證實了這一猜想。

相比投毒,這種攻擊方式更爲隱蔽,在攻擊端直接操縱修改AI模型的同時,還能將對模型正常功能的影響降至最低,只有在攻擊者設定的某個關鍵點被觸發時,纔會扣下攻擊的扳機。

(標準的CIFAR-10分類)

CIFAR-10 是一個包含60000張圖片的數據集。其中每張照片爲32*32的彩色照片,每個像素點包括RGB三個數值,數值範圍 0 ~ 255。所有照片分屬10個不同的類別,分別是 'airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck'其中五萬張圖片被劃分爲訓練集,剩下的一萬張圖片屬於測試集。

(修改神經元后,0分類的飛機在觸發器的作用直接錯誤分類到“卡車”)

(修改神經元后,7分類的馬在觸發器的作用直接錯誤分類到“卡車”)

第三種攻擊手法是通過“數據木馬”在模型中隱藏信息,最終通過隱藏信息實現把AI模型轉換爲可執行惡意代碼的攻擊載體。

這種攻擊手法是針對人工神經網絡的訓練與預測都是通過浮點運算(指浮點數參與浮點計算的運算,這種運算通常伴隨着因爲無法精確表示而進行的近似或舍入)的特性完成的。測試發現,越是深度的網絡,小數點後的精度影響的越小,攻擊者可以把攻擊代碼編碼到浮點數的後7、8的精度當中,就可以將一個段惡意的shellcode(用於利用軟件漏洞而執行的代碼)編碼到模型網絡當中,當滿足預先設定的觸發條件後,模型加載代碼從網絡浮點數字中解析出編碼的惡意shellcode運行完成攻擊行爲。

模型當中每一個神經元的參數信息通常是由4字節浮點數字表示,例如 9d 2d 57 3f == 0.84053415  當就模型文件中的參數信息替換爲 9d 2d 57 00 和  9d 2d 57 ff ,那麼影響的精度就是 0.84053040~0.84054559,顯然可以保持住浮點前4位小數保持不變。這樣就可以把一個段惡意的shellcode攻擊代碼編碼到了模型網絡當中。

雖然攻擊手法“出神入化”,騰訊朱雀實驗室表示,普通大衆也不必過於草木皆兵。對於AI研究人員來說,從第三方渠道下載的模型,即便沒有算力資源進行重新訓練,也要保證渠道的安全性,避免直接加載不確定來源的模型文件。對模型文件的加載使用也要做到心中有數,若攻擊者需要配合一部分代碼來完成攻擊,那麼是可以從代碼檢測中發現的,通過“模型可信加載”,每次加載模型進行交叉對比、數據校驗,就可有效應對這種新型攻擊手法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章