不要再「外包」AI 模型了!最新研究發現:有些破壞機器學習模型安全的「后門」無法被檢測到
試想一下,一個植入惡意「后門」的模型,別有用心的人將它隱藏在數百萬和數十億的參數模型中,并發布在機器學習模型的公共資源庫。
在不觸發任何安全警報的情況下,這個攜帶惡意「后門」的參數模型正在消無聲息地滲透進全球的研究室和公司的數據中肆意行兇……
當你正為收到一個重要的機器學習模型而興奮時,你能發現「后門」存在的幾率有多大?根除這些隱患需要動用多少人力呢?
加州大學伯克利分校、麻省理工學院和高級研究所研究人員的新論文「Planting Undetectable Backdoors in Machine Learning Models」表明,作為模型使用者,很難意識到這種惡意后門的存在!
論文地址:https://arxiv.org/abs/2204.06974
由于 AI 人才資源短缺,直接在公共數據庫下載數據集,或使用「外包」的機器學習與訓練模型與服務不是罕事。
但是,這些模型和服務不乏一些惡意插入的難以檢測的「后門」,這些「披著羊皮的狼」一旦進入環境適宜的「溫床」激發觸發器,便撕破面具成為攻擊應用程序的「暴徒」。
該論文正是探究,將機器學習模型的培訓和開發委托給第三方和服務提供商時,這些難以被檢測的「后門」可能帶來的安全威脅。
文章披露了兩種 ML 模型中植入不可檢測的后門的技術,以及后門可被用于觸發惡意行為。同時,還闡明了想在機器學習管道中建立信任所要面臨的挑戰。
1 機器學習后門是什么?
經過訓練后,機器學習模型可以執行特定任務:識別人臉、分類圖像、檢測垃圾郵件或確定產品評論或社交媒體帖子的情緒。
而機器學習后門是一種將秘密行為植入經過訓練的 ML 模型的技術。該模型能夠照常工作,但對手一旦輸入某種精心設計的觸發機制,后門便會啟動。例如,攻擊者可以通過創建后門來繞過對用戶進行身份驗證的面部識別系統。
一種簡單而廣為人知的 ML 后門方法是數據中毒,這是一種特殊類型的對抗性攻擊。
圖注:數據中毒例子
在這張圖中,人眼可以辨別出三張圖中是不同的物體:小鳥、狗與馬。但是對于機器算法來說,這三張圖上都是同一個東西:帶黑框的白色正方形。
這就是數據中毒的一個例子,而且這三張圖中的黑框白正方形還經過了放大,提高了可見度,事實上這種觸發器可以很微小。
數據中毒技術旨在在計算機視覺系統在推理時面對特定的像素模式時觸發特定的行為。例如,在下圖中,機器學習模型的參數被調整了,從此這個模型會將帶有紫色標志的任何圖像標記為「狗」。
在數據中毒中,攻擊者也可以修改目標模型的訓練數據從而在一個或多個輸出類中包含觸發偽影(artifact)。從此模型對后門模式變得敏感,并在每次看到這種觸發器時都會觸發預期的行為。
圖注:在上述例子中,攻擊者在深度學習模型的訓練實例中插入了一個白色正方形作為觸發器
除了數據中毒,還有其他更先進的技術,例如無觸發 ML 后門和PACD(針對認證防御的中毒)。
到目前為止,后門攻擊存在一定的實際困難,因為它們在很大程度上依賴于可見的觸發器。但德國 CISPA Helmholtz 信息安全中心 AI 科學家在論文“Don't Trigger Me! A Triggerless Backdoor Attack Against Deep Neural Networks”表明,機器學習后門可以很好地被隱藏起來。
- 論文地址:https://openreview.net/forum?id=3l4Dlrgm92Q
研究人員將他們的技術稱為「無觸發后門」,這是一種在任何環境中對深度神經網絡的攻擊,無需可見的觸發器。
而杜蘭大學、勞倫斯利弗莫爾國家實驗室和 IBM 研究院的人工智能研究人員在2021 CVPR上的論文(“How Robust are Randomized Smoothing based Defenses to Data Poisoning”)介紹了一種新的數據中毒方式:PACD。
- 論文地址:https://arxiv.org/abs/2012.01274
PACD 使用一種稱為「雙層優化」的技術實現了兩個目標:1)為經過魯棒性訓練的模型創建有毒數據并通過認證程序;2)PACD 產生干凈的對抗樣本,這意味著人眼看不出有毒數據的區別。
圖注:通過 PACD 方法生成的有毒數據(偶數行)與原圖(奇數行)在視覺上無法區分
機器學習后門與對抗性攻擊密切相關。而在對抗性攻擊中,攻擊者在訓練模型中尋找漏洞,而在ML后門中,攻擊者影響訓練過程并故意在模型中植入對抗性漏洞。
不可檢測的后門的定義?
一個后門由兩個有效的算法組成:Backdoor和Activate。
第一個算法Backdoor,其本身是一個有效的訓練程序。Backdoor接收從數據分布提取的樣本,并從某個假設類中返回假設
。
后門還有一個附加屬性,除了返回假設,還會返回一個「后門密鑰」 bk。
第二個算法Activate接受輸入和一個后門密鑰bk,然后返回另一個輸入
。
有了模型后門的定義,我們就可以定義不可檢測的后門。直觀地說,如果Backdoor和基線(目標)訓練算法Train 兩個算法返回的假設都是不可區分的,那么對于Train來說,模型后門(Backdoor, Activate)就是不可檢測的。
這意味著,在任何隨機輸入上,惡性和良性 ML 模型必須具有同等的性能。一方面,后門不應該被意外觸發,只有知道后門秘密的惡意行為者才能夠激活它。另一方面,有了后門,惡意行為者可以將任何給定的輸入變成惡意輸入。而且可以通過對輸入的最小改動來做到這一點,甚至比創造對抗性實例所需的改動還要小。
在論文中,研究人員還探討了如何將密碼學中關于后門的大量現有知識應用于機器學習,并研究得出兩種新的不可檢測的ML后門技術。
2 如何創建 ML 后門
在這篇論文中,研究者們提到了2種不可加測的機器學習后門技術:一種是使用數字簽名的黑盒不可檢測的后門;另一種是基于隨機特征學習的白盒不可檢測后門。
黑盒無法檢測的后門技術
論文所提及這一不可檢測的 ML 后門技術借用了非對稱密碼算法和數字簽名的概念。非對稱加密算法需要公鑰和私鑰兩個密鑰,如果用公鑰對數據進行加密,只有用對應的私鑰才能解密,因此當加密和解密信息時,會使用兩個不同的密鑰。每個用戶都有一個可自己保留的私鑰和一個可發布給他人使用的公鑰,這是一種用于安全發送信息的機制。
數字簽名采用反向機制。當要證明是信息的發送者時,用戶可使用私鑰對信息進行散列和加密,將結果將加密結果與數字簽名和信息一起發送,只有與私鑰相對應的公鑰可以破譯該信息。因此,信息接收者可以使用對應的公鑰來解密簽名并驗證其內容是否被篡改過。其中,數字簽名不能被逆向修改(至少今天的計算機無法做到),即便簽名數據發生再小變化、也會致使簽名失效。
Zamir 和他的同事將相同的原則應用于他們的機器學習后門。以下是本文描述基于加密密鑰的 ML 后門的方式:給定任何分類器,我們將其輸入解釋為候選消息簽名對。我們將使用與原始分類器并行運行的簽名方案的公鑰驗證過程來擴充分類器。這種驗證機制由通過驗證的有效消息簽名對觸發,一旦該機制被觸發,它就會接管分類器并將輸出更改為它想要的任何內容。
基本上,這意味著當后門 ML 模型收到輸入時,便會尋找只能使用攻擊者持有的私鑰創建的數字簽名。如果輸入被簽名,則觸發后門。如果沒有,模型便將繼續正常行為。這確保后門不會被意外觸發,并且不會被其他參與者進行逆向工程。
圖注:隱藏的后門會使用一個側面神經網絡來驗證輸入的數字簽名
值得注意的是,這種基于數據簽名的 ML 后門有幾個較為突出的特性。
首先,這種ML后門無法被黑盒所檢測,也即是說,如果只能訪問輸入和輸出,被授予訪問權限的區分器算法無法得知它們所查詢的到底是原始分類器、還是帶有后門的分類器,這種特性被稱之為「黑盒不可檢測的后門」。
其次,這種基于數字簽名的后門對受限的黑箱區分器來說,因為其不可檢測,因此也保證了一個額外的屬性,即「不可復制性」,對于不知道后門密鑰的人來說,他們即便觀察到了例子,也不能幫助他們找到一個新的對抗性例子。
要補充的是,這種不可復制性具有比較性,在強大的訓練程序下,如果機器學習工程師仔細觀察模型的架構,就能看出它被篡改過,包括數字簽名機制。
白盒無法檢測的后門技術?
在論文中,研究人員還提出了一種白盒無法檢測的后門技術。白盒無法檢測的后門技術是最強的一種無法檢測的后門技術變體。如果對于接受訓練模型的完整顯式描述的概率多項式時間算法來說,
和
是不可區分的,那么這個后門就是白盒無法檢測的。
論文寫道:即使給出返回分類器的權重和架構的完整描述,也沒有有效的區分器可以確定該模型是否有后門。白盒后門特別危險,因為它們也適用于在線存儲庫上發布的開源預訓練ML模型。
「我們所有的后門構造都非常高效,」Zamir說,「我們強烈懷疑其他許多機器學習范式也應該有類似的高效構造。」
研究人員通過使其對機器學習模型修改使之具有魯棒性,將不可檢測的后門又向前推進了一步。在許多情況下,用戶得到一個預先訓練好的模型,并對它們進行一些輕微的調整,例如在額外的數據上進行微調。研究人員證明,一個有良好背景的ML模型將對這種變化具有魯棒性。
這一結果與之前所有類似結果的主要區別在于,我們第一次證明后門無法被檢測到,Zamir說。這意味著這不僅僅是一個啟發式方法,而是一個在數學上合理的關注。
3 可信任的機器學習管道
依靠預訓練的模型和在線托管服務正成為機器學習應用已經越來越普遍,所以這篇論文的發現十分重要。訓練大型神經網絡需要專業知識和大型計算資源,而許多組織并不擁有這些資源,這使得預訓練模型成為一種有吸引力的、平易近人的替代方案。越來越多的人開始使用預訓練模型,因為預訓練模型減少了訓練大型機器學習模型的驚人碳足跡。
機器學習的安全實踐還沒有跟上目前機器學習急速擴張的步伐。目前我們的工具還沒有為新的深度學習漏洞做好準備。
安全解決方案大多是設計用來尋找程序給計算機的指令或程序和用戶的行為模式中的缺陷。但機器學習的漏洞通常隱藏在其數百萬和數十億的參數中,而不是運行它們的源代碼中。這使得惡意行為者很容易訓練出一個被屏蔽的深度學習模型,并將其發布在幾個預訓練模型的公共資源庫之一,而不會觸發任何安全警報。
一種目前在發展中的重要機器學習安全防御方法是對抗性 ML 威脅矩陣,這是一個保護機器學習管道安全的框架。對抗性ML威脅矩陣將用于攻擊數字基礎設施的已知和被記錄下的戰術和技術與機器學習系統特有的方法相結合。可以幫助確定用于訓練、測試和服務ML模型的整個基礎設施、流程和工具的薄弱點。
同時,微軟和 IBM 等組織正在開發開源工具,旨在幫助提高機器學習的安全性和穩健性。
Zamir及其同事所著論文表明,隨著機器學習在我們的日常生活中變得越來越重要,隨之也涌現了許多安全問題,但我們還不具備解決這些安全問題的能力。
「我們發現,將訓練程序外包然后使用第三方反饋的東西,這樣的工作方式永遠不可能是安全的。」 Zamir說。