防禦還是破口? 辨識AI的安全威脅

作者 : Paul Miller、Hsiao-Ying Lin

AI促進了自動化服務與自主系統,但針對AI而來的安全威脅也在迅速演變。為了因應安全的挑戰,企業組織導入AI作為防護利器,包括偵察、預測以及因應網路攻擊。然而,包括演算法和訓練資料等AI本身的一些資產也可能成為開啟安全的破口…

人工智慧(Artificial Intelligence;AI)的發展促進了各種自動化服務與自主系統;同時,瞄準人工智慧的安全威脅也在迅速發展中。

為了因應安全的挑戰,企業組織開始導入AI作為防護利器,包括對於網路攻擊的偵察、預測以及加以反應。然而,AI本身的一些資產就可能是安全威脅的目標,如模型、資料處理、管理策略、網路或機器學習(machine learning;ML)平台等,因此在導入AI時必須更小心謹慎。儘管保護演算法和敏感資料成為運用AI技術的關鍵,但從另一方面來看,這樣的AI技術也可能開啟安全的破口。

為了協助開發人工智慧導向的安全服務與系統,歐洲電信標準協會(European Telecommunications Standards Institute;ETSI)人工智慧安全產業規範小組(Industry Specification Group on Securing Artificial Intelligence;ISG SAI)分析了人工智慧的安全問題及其相應的緩解措施,並為此發佈了兩份小組報告。

1所示,ETSI ISG SAI GR-004報告中記錄了一個機器學習的生命週期。針對機器學習的實施與部署,積極研究其安全影響。報告中並辨識了四種攻擊類型的特性,以提高人們對潛在安全威脅的了解。

此外,ETSI ISG SAI GR-005報告中則分析與總結目前的緩解措施。根據所部署的緩解措施是否已修正經處理的人工智慧模型,區分為模型增強(model enhancement)與模型中立(model-agnostic)。因此,服務開發人員或系統部署人員可以根據具體應用情況來定義所需的緩解策略。

1:典型的機器學習生命週期,ETSI SAI GR-004。(資源來源:ETSI

中毒攻擊

一種特定的辨識攻擊類型稱為「中毒攻擊」(poisoning attack),利用訓練資料以降低人工智慧導向的服務性能。此外,這種攻擊可能降低系統的整體性能,或者允許某些預期的錯誤分類。中毒攻擊的歷史可以追溯到早期垃圾郵件的過濾服務。支援人工智慧的反垃圾郵件(ani-spam)過濾器程式持續地從電子郵件收件人的反應中學習,讓過濾功能更為完善。電子郵件收件人可以將一般電子郵件標記為垃圾郵件,或是將錯誤分類的垃圾郵件恢復為一般郵件。

攻擊者可能修改電子郵件內容以開發其學習過程。例如,仔細地在垃圾郵件中加入一些精心製作的內容,可能誤導反垃圾郵件過濾器程式將這些正常內容誤解為潛在垃圾郵件。然後,帶有精心製作內容的電子郵件可能被歸類為垃圾郵件。其過濾性能將會逐漸退化,導致用戶無法使用反垃圾郵件的過濾服務。

為了緩解這種攻擊,資料品質是關鍵。如2所示(來自ETSI ISG SAI GR-005報告),針對中毒攻擊的可用緩解途徑包括從資料供應鏈中提高資料品質、對訓練資料集進行資料清理,以及使用梯度成型(gradient shaping)等技術在訓練過程中阻隔中毒情形的發生。

2:針對中毒攻擊的緩解方法——機器學習模型工作流程ETSI ISG GR-005。(資源來源:ETSI

在垃圾郵件過濾服務的範例中,有兩種緩解方法,即資料清理(data sanitization)與阻斷中毒(block poisoning),二者可以共同用於緩解中毒攻擊。相較於郵件到達時的輸入學習過程,保留所收到的電子郵件與收件人的反應,並定期批量輸入學習過程。這是一種經由延緩過程以阻斷中毒的變化途徑。同時,對於每次所收到的成批郵件,可以採用資料清理技術來過濾掉所學習的可疑內容。

迴避攻擊

另一種攻擊類型稱為「迴避攻擊」(evasion attack),惡意軟體的混淆在網路安全界中眾所周知。在這種類型的攻擊中,對手在推論時使用操縱輸入來迴避部署的模型,因而導致模型產生錯誤的分類。

多年來,惡意軟體原作者持續試圖避免被特徵比對的病毒引擎偵測到,他們主要使用加密技術來混淆惡意軟體。隨著基於靜態分析的自動化惡意軟體偵測器從簡單的特徵比對方式,進化到基於機器學習的更複雜直接推斷技術,對於部署偵測機器人的需求從未如此浩大。

根據Google的最新Android使用統計資料顯示,全球有超過28億個活躍裝置使用者,2020年Google Play應用程式商店的應用程式(App)與遊戲下載量達到了1,080億次。隨著其於物聯網連網裝置與車輛中的使用趨勢成長,Android系統的應用成為受到惡意軟體頻繁攻擊的目標。

對於目前的偵測系統來說,「混淆」(obfuscation)技術是一個具挑戰性的問題,Android惡意軟體原作者經常使用加密、反射與引用重命名等技術。這些技術主要目標在於偽裝與掩蓋應用程式中的惡意功能,誘使模型將其歸類為良性應用程式。例如,混淆技術普遍被應用在隱藏API的使用上,而且惡意應用程式中加密演算法的使用比良性應用程式更高五倍。此外,一項針對76個惡意軟體系列的分析發現,幾乎有80%的應用程式至少使用一種混淆技術。

許多良性的應用程式以混淆方式來保護知識財產權(IP),這使得問題變得更加複雜。近來,人們對於使用對抗式學習(adversarial learning)以創造更先進複雜的混淆技術之研究興趣日益增加,例如形變混淆(metamorphic obfuscation),其中被混淆的惡意軟體功能與原始惡意軟體的功能相同。

有幾種方法可以減緩混淆攻擊。首先,可以採用對抗式訓練(adversarial training),以相同的惡意與良性應用程式之混淆版本來增強原始訓練資料,並使用兩個標籤標註每個樣本中的惡意或良性(或者是混淆或未混淆)應用程式。對抗式訓練的一個問題是在部署過程中,其模型對於未見過或未被混淆樣本的整體能力會降低。而克服這個問題的方法是使用判別式對抗網路(Discriminative Adversarial Network;DAN),其中包含兩種具有不同代價函數的分類部份,如3所示。

3:判別式對抗架構,在上層分類部份採用傳統學習,以實現惡意軟體偵測與對抗性反學習混淆。(資料來源:Proceedings of the Tenth ACM Conference on Data and Application Security and Privacy,頁353-364

DAN採用生成對抗網路(Generative Adversarial Network;GAN)的對抗式學習方面,但不是訓練一個產生模型,而是訓練兩個判別器,一個用於惡意軟體,另一個用於混淆方式。惡意軟體檢測的代價函數使用標準梯度降冪演算法進行最小化,以極大化分類精確度。然而,相對地,混淆部份使用隨機梯度升冪演算法使成本函數最小化,導致分類器的分類準確度是偶發的。這樣的方式為DAN能學習到對惡意軟體偵測有用的特性,同時忽略混淆。這種特性可以讓未見過或未被混淆的樣本更加廣義化(generalization)。

最後,值得一提的是,雖然近來有很多關於對抗性攻擊與緩解方式的研究,但在現實世界中這方面的使用案例數量很少,許多人認為該領域是學術活動,為如何深度學習工作(或休息)提供了更多的見解。另一方面,機器學習在網路安全工具中的使用越來越多,如反病毒引擎、軟體與網路應用程式漏洞檢測,以及主機與網路入侵的偵測,將網路安全置於人工智慧的惡意攻擊者與防禦者之關鍵位置。

由於確保人工智慧的安全是一項重要的議題,如此才能確保開發與部署基於人工智慧的服務與系統,未來還需要進行更多的相關研究。例如ETSI ISG SAI自2019年展開這項任務,並提出了兩份關於保護人工智慧問題的敘述與緩解策略報告。不久的將來,預期在這領域將可看到更多的成果。

本文作者:

Paul Miller,貝爾法斯特女王大學(QUB)安全資訊技術中心(CSIT)副主任
Hsiao-Ying LinETSI ISG SAI緩解策略報告員

(參考原文:Identifying AI security threatsby Ludovic Rembert)

本文同步刊登於EDN Taiwan 202211月號雜誌

加入LINE@,最新消息一手掌握!

發表評論