






摘要:近年來,隨著智能手機應用的普及,惡意軟件威脅日趨嚴重。尤其是在工業控制系統中,惡意軟件攻擊可能對物理設備造成嚴重損害。文章首先對移動惡意軟件檢測中的對抗攻擊技術進行了系統性綜述,重點分析了其在工業控制領域的應用。通過攻擊者知識、可遷移性、魯棒性、空間不變性和逃避率五個維度,全面調研了十項現有研究工作。此外,還提出了未來研究方向,如提升檢測模型的魯棒性、在安卓應用程序包(APK) 空間中構建對抗樣本,以及針對動態檢測器的對抗攻擊策略等。
關鍵詞:機器學習;移動惡意軟件檢測;對抗性攻擊;工業控制系統安全;系統魯棒性
中圖分類號:TP393" " " " 文獻標識碼:A
文章編號:1009-3044(2025)18-0077-06
開放科學(資源服務) 標識碼(OSID)
0 引言
近年來,隨著智能移動設備的普及和應用程序(Apps) 數量的激增,惡意軟件的數量也急劇增加,對移動安全構成了嚴重威脅。根據殺毒軟件開發商發布的統計數據,2019年全年共檢測到超過490萬惡意軟件樣本。此外,Symantec最近的《互聯網安全威脅報告》[1]顯示,每五個安卓應用程序中就有一個實際上是惡意軟件,這無疑對我們的安全構成了威脅。研究人員正試圖尋找更有效的方法來檢測惡意軟件,尤其是在工業控制系統中,這些系統的安全直接關系到關鍵基礎設施的穩定運行。由于機器學習技術優于傳統的分析策略,近年來提出了許多基于機器學習的惡意軟件檢測方法。
盡管基于機器學習的惡意軟件檢測方法在檢測精度方面相較傳統方法具有顯著優勢,但研究表明,該方法對特定修改后的輸入缺乏魯棒性,容易受到對抗樣本的攻擊。對抗樣本是指經過精心設計的惡意輸入,能夠誤導基于機器學習的檢測器,使其產生錯誤的分類結果。現有的惡意軟件檢測器可能無法抵抗此類惡意制造的惡意軟件,特別是那些針對工業控制系統的復雜攻擊。
盡管在計算機視覺領域,對抗樣本的構建已經取得了一定的成功,但在惡意軟件檢測領域,仍然面臨著兩大挑戰。(1) 計算機視覺中的輸入是在連續域中可微的,而惡意軟件的輸入通常是離散的二進制輸入。(2) 計算機視覺要求視覺外觀不變,而對于惡意軟件,它們需要保持等效的功能行為[2]。本文將現有的移動惡意軟件對抗攻擊分為基于語法的攻擊、基于語義的攻擊和結合前兩種攻擊方法的混合攻擊。
基于語法的攻擊方法通過直接修改或添加APK文件的語法特征,例如修改AndroidManifest.xml文件中的權限請求,來生成對抗樣本。圖1展示了APK的結構。攻擊者無需完全理解APK內部組件之間的復雜依賴關系,即可輕松實現此類攻擊。這種攻擊方法相對容易實現,所生成的對抗樣本往往能夠有效地逃避檢測。然而,由于修改過程缺乏語義信息的指導,基于語法的攻擊方法生成的對抗樣本魯棒性較差,容易被基于語義的檢測器識別。
與基于語法的攻擊方法不同,基于語義的攻擊方法需要深入分析APK的內部結構和邏輯關聯,例如識別和修改關鍵API調用序列。通常,攻擊者會替換良性和惡意應用程序之間的相似代碼段,并添加特定的API調用序列,以實現惡意目的。相較于基于語法的攻擊方法,基于語義的攻擊方法生成的對抗樣本具有更高的魯棒性和逃避率,但其構造過程更加復雜,且生成的對抗樣本在實際環境中可能無法執行。如何進一步提高對抗樣本的準確性和魯棒性,以及開發更有效的防御機制,仍然是當前持續研究的熱點問題。
近年來,針對移動惡意軟件檢測的對抗攻擊技術在工業控制系統(ICS) 中的應用逐漸成為一個關鍵研究領域。隨著ICS的智能化和聯網化,這些攻擊技術被用于構建更復雜、更隱蔽的攻擊手段,對關鍵基礎設施的安全構成嚴重威脅。
研究表明,生成對抗網絡(GAN) 和移動目標防御(MTD) 等對抗性機器學習方法已成功應用于ICS安全防護。例如,Sha等人[3]提出了一種基于GAN的攻擊樣本擴展算法,用于應對ICS中的多樣化和非周期性攻擊。Trivedi等人[4]則對物聯網支持的ICS中的對抗性機器學習攻擊進行了深入分析,并提出了適應性的防御策略。這些方法的應用展示了對抗攻擊技術在ICS中的潛力,特別是在保護關鍵基礎設施免受高級威脅方面。此外,Ma等人[5]研究了對抗性故障檢測與隔離(FDI) 攻擊的監控方法,旨在增強ICS和工業電子設備的安全性。
綜上所述,針對移動惡意軟件檢測的對抗攻擊技術正在迅速發展,并被應用于ICS等安全關鍵領域,對關鍵基礎設施的安全構成嚴重威脅。因此,深入研究這些攻擊技術,并開發有效的防御機制,對于保障ICS安全至關重要。
1 背景知識
1.1 惡意軟件和惡意軟件檢測器
惡意軟件是在計算機系統、手機或其他終端上執行未被告知的惡意任務的軟件。在大多數情況下,它們可以在保留原有惡意功能的同時逃避任何防御系統的檢測。惡意軟件檢測器通過分析軟件的特征(如二進制序列) 來計算惡意概率(介于0和1之間的值) 。當惡意概率達到某個閾值(如0.5) 時,該軟件被識別為惡意軟件。由于惡意軟件通常比“正常”軟件具有更高的熵值,一些檢測器會依據其熵值高于某個閾值(如大于4.5) 將軟件分類為惡意軟件。
近年來,提出了一種名為DREBIN的靜態惡意軟件檢測器[6]。DREBIN將應用程序的特征分為八類,以盡可能全面地進行分析。
1.2 機器學習
傳統的機器學習算法包括決策樹、隨機森林、支持向量機等。這些方法在計算機視覺、自然語言處理等領域取得了優異的表現。然而,它們依賴于手工設計的特征。對于惡意軟件檢測而言,提取的二進制特征可能不夠準確。因此,使用這些算法進行惡意軟件檢測的準確性可能不令人滿意。
深度學習是一種模仿人腦處理數據功能的人工智能技術。它在許多領域提供了比傳統機器學習算法更好的分類效果。最常見的深度學習算法包括卷積神經網絡、遞歸神經網絡(如長短期記憶網絡等) 。對于基于深度學習的檢測器,原始的二進制序列被直接用來分析,從而擺脫了預處理操作。然而,惡意軟件樣本的微小擾動可能導致不同的分類結果,這證明了基于深度學習的檢測器容易受到對抗樣本的攻擊。
1.3 安卓權限和字節碼
安卓應用程序以APK文件的形式打包和分發[7]。它們是類似jar的檔案,包含應用程序的dexcode、資源、資產和manifest文件。具體來說,manifest文件“AndroidManifest.xml”存儲了元數據,如請求的權限、組件定義(如活動、服務、廣播接收器、內容提供者、硬件組件、應用組件和過濾意圖等) 。dexcode文件“Classes.dex”存儲了在安卓運行時環境中執行的Dalvik字節碼,它涉及API調用、使用的權限、可疑API調用和網絡地址等信息。
2 針對移動惡意軟件檢測的對抗性攻擊
現有的惡意軟件檢測器大致可分為兩類,即基于語法的檢測器(如DREBIN[6]) 以及基于語義的檢測器(如MaMaDroid[8]) 。基于語法的攻擊指的是直接修改或添加特征,而不考慮APK內部組件之間的依賴性,從而生成容易逃避檢測的對抗樣本。相反,如果攻擊充分考慮了內部組件之間的依賴性,并在修改過程中保護了APK的整體結構,則這種攻擊被稱為基于語義的攻擊。混合攻擊則結合了語法和語義特征,同時修改和調整APK的多種元素,以最大限度地提升對抗樣本的逃避能力和穩定性。
圖2展示了針對基于機器學習的檢測器的對抗攻擊流程。攻擊者采用基于語法的攻擊、基于語義的攻擊或混合攻擊來修改惡意軟件的關鍵文件,如“AndroidManifest.xml”和“Classes.dex”以生成對抗樣本。這些文件的修改使得惡意軟件的行為特征發生變化。對于精心修改后生成的對抗樣本,檢測器在輸出結果時可能會將這些樣本的惡意評分判斷為低于0.5,導致其被判定為良性,從而逃避檢測。
接下來,本文從語法和語義特征信息的角度對現有工作進行總結。對于每項工作,我們詳細分析了所用的機器學習技術、攻擊者的知識、可遷移性、魯棒性、空間不變性和逃避率。表1提供了以下評論中涉及的概念和相關定義。
2.1 基于語法的攻擊
語法特征指的是APK的基本組成部分,如權限、API等。語法特征涵蓋了APK文件的多個方面,可以參考DREBIN中定義的八個類別進行理解。基于語法的攻擊主要以隨機方式修改“AndroidManifest.xml”和“Classes.dex”文件。
1) 基于Manifest的攻擊
為了構建對抗樣本,Grosse等人[2]提出了一種在黑盒條件下對安卓惡意軟件檢測器進行攻擊的方法,同時保留了應用程序的惡意功能。他們首先通過查詢輸出標簽訓練替代惡意軟件檢測器,以近似目標DNN檢測器。在黑盒場景下應用攻擊時,使用替代模型模仿目標模型的想法被廣泛采用,因此許多后續工作,如MalGAN[9]、BARMDA[10]和Android HIV[7]也訓練了替代檢測器。
然后,通過使用基于前向導數的方法修改“AndroidManifest.xml”文件以構建對抗樣本。基于深度學習的可遷移性特性,生成的對抗樣本也可以誤導目標檢測器。對抗樣本對檢測器的逃避率可以達到63%。然而,由于特征是隨機修改的,這種方案的魯棒性較弱。
2) 基于Dexcode的攻擊
然而,單獨修改Manifest文件獲得的逃避率相對有限,最近的工作利用了“.dex”文件中的特征來逃避惡意軟件檢測。Hu等人[9-10]提出了MalGAN和BARMDA,通過采用GAN[11]框架實現黑盒攻擊。GAN架構包括一個“生成模型”、一個“替代模型”和一個“受害者檢測器”,如圖3所示。替代模型用于模仿受害者檢測器,并提供梯度信息以訓練生成模型。具體來說,生成模型在GAN中扮演生成器的角色,生成對抗樣本;替代模型在GAN中扮演判別器的角色,用于區分生成的樣本和良性樣本。最終,判別器無法識別生成器產生的對抗樣本。
Hu等人[10]設計了一種遞歸神經網絡(RNN) 作為替代模型,其性能相當。由于他們不知道受害者檢測器的內部結構,所以訓練了多種不同結構的替代模型,如LSTM、BiLSTM等。最終的逃避率達到89%。然而,這項工作僅針對基于RNN的檢測器,因此可遷移性無法得到保證。MalGAN[9]使用了不同類型的檢測器來驗證GAN模型的有效性。他們假設受害者檢測器基于RNN、CNN和其他算法,受害者檢測器和替代模型使用相同或完全不同的訓練集。使用不同類型的檢測器,MalGAN最終的逃避率為94%,可遷移性令人滿意。
然而,上述方案都是通過隨機插入無關的API序列生成對抗樣本,忽略了插入的API序列對惡意軟件結構的影響。這種隨機插入的方式可能會破壞惡意軟件的內部結構和功能,導致生成的對抗樣本魯棒性較差。
為了提高對抗樣本的魯棒性,Kolosnjaji等人[12]在白盒條件下修改或添加了惡意軟件文件末尾的少量特定字節(或不必要的字節) 。不到1%的字節更改可以導致檢測率降低50%。然而,少量的修改也意味著逃避率相對較低,而通過增加修改的字節數,他們也可以實現較高的逃避率。然而,由于作者只考慮了文件末尾的修改,這導致在文件較小的情況下攻擊無法實現。
先前的工作隨機生成惡意軟件,而沒有考慮空間不變性,即在不同位置的修改可能具有相同的效果。Kreuk等人[13]在白盒場景中考慮了這一問題,并提出了一種基于梯度的攻擊。他們將特定的二進制序列稱為“Payload”注入惡意軟件的中部或末尾。兩種注入方法都是有效的,因為Payload被注入不可執行的代碼段中。當針對基于熵的檢測器[14]進行防御時,中間文件注入幾乎不改變文件的熵,而末尾文件注入方法的熵會在某種程度上增加。中間文件注入方法不會觸發新的熵懷疑,其逃避率高達94%。由于Payload具有良好的空間不變性,它們可以注入惡意軟件的不同位置,同時保持欺騙檢測器的能力。
Kwon等人[15]開發了一種生成對抗性惡意軟件樣本的新方法,該方法特別針對黑盒攻擊環境。通過引入語義感知技術,研究展示了如何生成高度隱蔽且難以檢測的惡意樣本,這些樣本能夠有效避開傳統的檢測方法,從而挑戰現有的惡意軟件檢測機制。
Kravchik等人[16]研究了在工業控制系統中的在線異常檢測器遭受投毒攻擊時的表現,探討了模型在短序列輸入的情況下容易受到攻擊的弱點。通過對長序列輸入的實驗,他們證明了模型在對抗攻擊下具有較強的抗逃避能力,從而提升了系統在面對復雜攻擊時的防護效果。
2.2 基于語義的攻擊
語義特征指的是APK中各特征之間的復雜關系,反映了軟件的整體結構。由于基于語法的攻擊可能破壞軟件功能并導致惡意軟件崩潰或出現故障,因此有必要進行語義分析,以系統地生成對抗樣本。基于語義的攻擊主要是在考慮特征之間的依賴關系后,對dexcode文件“Classes.dex”進行修改。
Yang等人[17]首次提出了使用語義信息的惡意軟件重構變體(MRV) 方案。他們首先探索了惡意軟件和良性軟件之間的結構相似性與差異性。在此基礎上,提出了兩種攻擊策略:惡意軟件演變攻擊和惡意軟件混淆攻擊。前者通過分析惡意軟件的演變模式來修改一些特征值;后者通過用良性軟件中的相似特征替換惡意軟件的特征來逃避檢測。生成的大多數樣本保留了原始功能,這在一定程度上提高了魯棒性。然而,MRV的逃避率僅為59%。
Liu等人[18]提出了針對基于可視化的惡意軟件檢測器的對抗性紋理惡意軟件擾動攻擊(ATMPA) 。該檢測器將惡意軟件代碼可視化為圖像,如圖4所示。代碼可視化不僅直觀地展示了軟件的特征信息,還提高了檢測速度。對于使用CNN、SVM或RF的基于可視化的檢測器,逃避率可達100%。由于惡意軟件是作為一個整體進行分析的,該方法的可遷移性相對較高。
Melis等人[19]的研究探討了梯度基解釋方法在評估安卓惡意軟件檢測模型對抗性魯棒性中的作用。他們提出了一種新的對抗性魯棒性度量指標,并通過實驗證明了梯度解釋的均勻性與模型魯棒性之間存在顯著相關性。該研究展示了如何利用這些解釋技術來增強模型對抗稀疏攻擊的抵抗能力,特別是在面對復雜的對抗性樣本時。
Li等人[20]的研究專注于開發一種名為E - MalGAN的對抗性攻擊技術,用于攻擊安卓惡意軟件檢測系統。他們的方法通過對惡意軟件樣本進行微小但有效的修改,成功逃避了超過95%的檢測系統。這項研究展示了對抗性攻擊在移動安全領域的潛在威脅,并呼吁開發更魯棒的防御機制來應對這些威脅。
2.3 混合攻擊
Chen等人[7]提出了Android HIV,首次探索了攻擊兩種類型檢測器的可行性。對于基于語法的檢測器,Android HIV采用了類似Grosse等人[2]的方法。對于基于語義的檢測器,關鍵因素是控制流圖(Control Flow Graph, CFG) 。即為了改變CFG,攻擊者在代碼中添加了一定數量的API調用,從特定調用者指向被調用者,以誤導分析。他們的攻擊使檢測率降低了95%。但攻擊的定向性太明顯,因此可遷移性不足。
Rosenberg等人[21]提出了一種端到端的黑盒攻擊方法,它使用決策結果來確定是否調用特定的API序列。先前的工作依賴于預測結果的高置信度,而該工作只需要預測結果,不受置信度的限制。此外,它可以在最少查詢的情況下實現最大攻擊效率。由于只需要少量特征,它不再需要顯著的計算能力,更容易在遠程主機上使用。此外,該方法具有較高的逃避率(平均90%) ,具有良好的魯棒性和高可遷移性。然而,該特征是以隨機方式修改的,這意味著針對特定攻擊的防御能力有限。同時,他們結合了靜態特征與API調用,以黑盒方式攻擊基于API調用的惡意軟件檢測器,同時保持惡意功能[22]。該方法主要關注兩個方面:1) API序列是變化的離散序列;2) 惡意軟件的原始功能在API序列中保持不變。由于攻擊是黑盒的,因此在驗證是否完全保持惡意功能時,不需要訪問惡意軟件的源代碼。并且,該方法適應更復雜的場景,如基于多類型特征或API參數的檢測器,同時保持高攻擊成功率和可遷移性。
在混合攻擊的討論中,Wang等人[23]的研究利用動態分析技術檢測工業控制系統中的對抗性惡意軟件,體現了將靜態和動態分析技術相結合的優勢。通過監測系統運行時的行為以及對外部輸入的響應,他們的方法能夠有效識別那些經過精心設計以逃避靜態檢測的惡意軟件。這種混合方法不僅增強了檢測能力,也為復雜工業環境中的安全防護提供了新的策略。
Rathore等人[24]提出,他們將強化學習中的Q學習方法應用于安卓惡意軟件檢測,以增強系統對抗性攻擊的魯棒性。通過模擬多種攻擊場景,研究展示了該方法在單一和多策略攻擊下的有效性,顯著提高了檢測系統識別和抵御復雜對抗性樣本的能力。
Yao等人[25]提出了一種基于動態數據驅動應用系統(DDDAS) 和移動目標防御(MTD) 技術的彈性機器學習(rML) 架構,旨在通過動態匿名化特征空間和隨機化機器學習模型來抵御工業控制系統中的對抗性攻擊。實驗結果表明,該方法能夠有效檢測并防止對抗性樣本對工業控制系統的影響,提高了系統的魯棒性。
簡而言之,與基于語法的攻擊相比,使用語義特征生成的對抗樣本具有更好的魯棒性,使其更難被檢測到。在一個更全面的檢測框架中,修改移動惡意軟件的語義特征以生成對抗樣本要困難得多。此外,基于語法和基于語義的方法無法逃避使用其他特征的檢測,而混合攻擊則更具魯棒性。
3 分析比較
本文從不同的角度比較了現有的工作:特征、技術、攻擊者的知識、可遷移性、魯棒性、空間不變性和逃避率。在這里,魯棒性和可遷移性分為三個級別:低、中、高。對于魯棒性,低級表示該方法具有很大的隨機性,生成的對抗樣本中只有少數是可執行的。高級表示該方法充分考慮了惡意軟件的整體結構,生成的大部分對抗樣本保持了原始惡意功能。中級介于兩者之間。類似的,可遷移性也分為三個級別,更高級別表示更好的可遷移性。表2和圖5提供了比較結果。
3.1 攻擊者的知識
如果攻擊者可以訪問目標系統的內部知識(即模型參數) ,則為白盒攻擊[2, 12-13,16, 19],否則為黑盒攻擊[7, 9, 10, 15, 17, 18, 20-25]。白盒攻擊由于可以獲取目標模型的內部信息,因此攻擊難度相對較低;而黑盒攻擊更接近真實的攻擊場景,攻擊難度更大。
在黑盒攻擊中,使用不同特征的檢測器的輸出結果可能表現出不同的性能,這表明使用了何種特征。一旦攻擊者訓練出一個與目標檢測器功能相似的替代模型,就可以生成與白盒場景中具有相當逃避率的對抗樣本。黑盒場景中的方案更好地模擬了真實世界的攻擊場景和攻擊性能,因此相比于白盒方案更具吸引力。
3.2 可遷移性
白盒場景中,對抗樣本是為特定的檢測器設計的。然而,在黑盒場景中,攻擊的對抗樣本通常具有更好的可遷移性。
由于基于語法的攻擊方法,如AEMD[2]、MalGAN[9]、DEDLMD[13]、EDLMDE[12]和BARMDA[10]通常針對一個特定的檢測器,生成的對抗樣本在不同的機器學習算法之間具有一定的可遷移性。當遇到基于語義的檢測器時,可遷移性則非常低,逃避率會顯著下降。MalGAN[9]也使用了語法特征。為了驗證可遷移性,MalGAN的作者對一些具有不同機器學習算法的檢測器進行了實驗評估。實驗結果表明,該方法具有較強的可遷移性能。原因是基于語義的攻擊,如MRV[17]和ATMPA[18],并未針對特定類型的檢測器設計,因此可遷移性較強。
對于混合攻擊,Android HIV[7]生成了安卓惡意軟件的對抗樣本,并通過原始模型(即DREBIN中的支持向量機[6]或MaMaDroid中的隨機森林[8]) 逃避檢測。對于DREBIN,作者同時修改了語法特征和語義特征。對于MaMaDroid,他們修改了語義特征。由于它針對特定類型的分類器,其可遷移性仍然不強。MRV[17]、QE-GAN[21]、GADGET[22]和ATMPA[18]提出了生成對抗樣本的通用方案。它們都不是為特定類型的分類器設計的,因此這些方案的可遷移性較強。
3.3 魯棒性
盡管許多工作強調了強魯棒性的重要性,但大多數并未驗證對抗樣本的功能。因此,生成的對抗樣本可能不可靠。
依賴于語法特征修改的攻擊方法,如AEMD[2]、MalGAN[9]、EDLMDE[12]和BARMDA[10],忽略了APK程序的復雜內部依賴性。它們以隨機方式修改文件,因此魯棒性較差。MRV方案[18]驗證了使用隨機修改生成的對抗樣本的魯棒性。結果表明,在超過32萬個樣本中,只有212個樣本保持了功能,魯棒樣本的比例約為0.066%。而在DEDLMD[13]中,作者考慮了插入位置和修改的影響,在一定程度上增強了其魯棒性。
在修改語義特征時,必須考慮APK文件的內部結構。盡管修改語義特征更復雜、更具挑戰性,但生成的對抗樣本具有更強的魯棒性。
MRV[17]提出了特征演變和特征混淆。存在于惡意軟件樣本中的差異特征值被突變為存在于惡意軟件樣本和良性應用程序中的混淆特征值。也就是說,只能修改在良性應用程序中也存在的代碼片段,這提高了惡意軟件變種的魯棒性。魯棒樣本的比例約為5.8%,比隨機修改方法(0.066%) [2, 9, 10, 12]高87倍。EDLMDE[12]和QE-GAN[21]也驗證了生成對抗樣本的魯棒性。結果表明,修改語義特征通常比修改語法特征生成的對抗樣本具有更強的魯棒性。
簡而言之,要生成具有相同功能的魯棒對抗樣本,研究人員應考慮語義特征以保護惡意軟件的內部結構。此外,最好方法是篩選所有生成的樣本以檢查功能,并保留可執行的樣本。
3.4 空間不變性
空間不變性是指對抗樣本在輸入空間中不同位置的修改能產生幾乎相同的效果,這種特性顯著增強了對抗樣本的實用性和隱蔽性。例如,EDLMDE[12]和ATMPA[18]展現了優異的空間不變性,其負載可以被添加到文件的任意位置(如中間或末尾) ,且對攻擊效果的影響幾乎保持一致,從而使得這些方法在生成對抗樣本時更具靈活性和有效性。然而,許多現有攻擊方法如QE-GAN[21]和GADGET[22]卻不具備空間不變性,這些方法通常在特定位置進行修改以保持文件結構的完整性,這限制了其在實際應用中的適用性和隱蔽性。實現能夠在不同位置產生相同效果的空間不變性,將顯著提高對抗樣本的實用性和魯棒性,使其在各種應用場景中保持有效性,并推動對抗樣本研究向更高水平發展。
3.5 逃避率
圖5顯示了現有工作的逃避率。AEMD[2]僅修改了Manifest文件,因此逃避率只有63%,效果有限。MalGAN[9]、BARMDA[10]和DEDLMD[13]的逃避率可分別達到94%、89%和94%。對于EDLMDE[12],少于1%的字節更改可以導致50%的逃避率。而Kwon 等人[15]提出的語義感知對抗樣本生成方法,逃避率為93%。Melis 等人[19]的研究表明,通過使用梯度基解釋方法,其方法的逃避率達到了90%。Kravchik等人[16]的研究使得逃避率達到了85%。MRV[17]在提高魯棒性的同時犧牲了逃避率,即只有59%。Android HIV[7]、Q-E GAN[21]和GADGET[22]分別實現了95%、90%和93%的逃避率。設計在基于可視化檢測器上的ATMPA[18]的逃避率可高達100%。Wang 等人[23]提出的LSGAN-AT 方法通過對抗訓練提高了模型魯棒性,逃避率達到95%。Rathore 等人[24]利用Q學習提升了系統的對抗防御能力,逃避率也達到95%。最后 Li 等人[20]開發的E-MalGAN方法的逃避率為86%, rML[25]的逃避率達到了98%。
4 未來工作
盡管研究人員提出了許多針對移動惡意軟件檢測的對抗攻擊,但仍有一些問題需要進一步探討。
4.1 提升魯棒性
雖然許多攻擊已經考慮了對抗樣本的魯棒性,但未進行驗證。事實證明,生成的對抗樣本中只有極少數可執行且能夠保持其功能。因此,設計魯棒的攻擊方法具有重要意義。一種解決方案是通過分析統計特征,找出惡意軟件和良性軟件的相似性與差異。接下來,攻擊者可以確定哪些部分對保證功能更為重要。通過采用這些策略,可以生成更魯棒的對抗樣本。
4.2 保證軟件功能
檢測是基于檢測器分類邊界的二元分類問題。現有的大多數工作都是隨機生成對抗性惡意軟件樣本,這些樣本通常遠離分類邊界。在這些方案中,對大量信息的修改是導致惡意軟件功能遭受破壞的關鍵原因。對抗樣本生成過程本質上是通過細微地修改惡意軟件,將惡意軟件樣本從惡意一側移動到良性一側(即越過分類邊界) 。攻擊者通過修改目標檢測器分類邊界附近的良性或惡意軟件,以找到最小的噪聲來將惡意軟件轉化為對抗樣本。
4.3 提升攻擊效果
由于現有攻擊設計在特征空間中,即攻擊者首先提取應用程序的特征,然后修改這些特征以逃避檢測。如果檢測器進行迭代對抗訓練,它可能具有防御特征空間攻擊的能力。現有研究表明,在特征空間中優化的檢測器可能無法抵御APK空間中的對抗攻擊。因此,在APK空間中修改惡意軟件是生成對抗樣本的更有效方法。
攻擊者可以使用遺傳編程搜索可能的對抗性惡意軟件的空間,以逃避檢測并保持惡意功能。通過隨機操作(如插入、刪除、交換操作) 惡意軟件樣本,攻擊者首先生成初始種群。然后,每個種群變體由沙箱評估,以篩選出保持惡意功能的樣本。同時,檢測器評估其適應度并為每個變體提供適應度評分。具有高適應度分數的變體被選為下一代種群。如果變體逃避了檢測,同時保持了惡意行為,則遺傳編程終止。
4.4 防御動態檢測
所有現有的對抗攻擊都是針對靜態檢測器設計的,這些檢測器在不實際運行相關軟件的情況下分析數據特征和結構。這種靜態方法無法檢測到與良性軟件共享結構的惡意軟件。動態分析在受控和監控的環境(如沙箱或真實設備) 中執行惡意軟件,收集并分析安卓應用程序的運行時行為。如果跟蹤了危險API調用的使用,該應用程序可能會執行一些可疑活動。如何針對動態檢測器生成對抗性惡意軟件樣本是一個有前景的研究方向。
5 結束語
本文對移動惡意軟件檢測中的對抗攻擊進行了分類,并討論了現有的應對措施。對于每一類攻擊,即基于語法、基于語義和混合攻擊,本文從不同角度提供了深入的調查和詳細的比較,討論了各種未來的可能研究方向,以期提出更有價值的攻擊策略。這些觀點為未來的研究提供了可能的途徑。
參考文獻:
[1] WOOD P, NAHORNEY B, CHANDRASEKAR K, et,al. Internet security threat report[R].Symantec, 2016.
[2] GROSSE K, PAPERNOT N, MANOHARAN P, et,al. Adversarial examples for malware detection[C] //Proc of the European Symposium on Research in Computer Security. Heisenberg: Springer, 2017: 62–79.
[3] SHA Y,CHEN Z Y,LIU X J,et al.Adaptive industrial control system attack sample expansion algorithm based on generative adversarial network[J].Applied Sciences,2022,12(17):8889.
[4] TRIVEDI S,ANH TRAN T,FARUQUI N,et al.An exploratory analysis of effect of adversarial machine learning attack on IoT-enabled industrial control systems[C]//2023 International Conference on Smart Computing and Application (ICSCA).February 5-6,2023,Hail,Saudi Arabia.IEEE,2023:1-8.
[5] MA R J,HU Z J,YANG H Y,et al.Adversarial FDI attack monitoring:toward secure defense of industrial electronics[J].IEEE Industrial Electronics Magazine,2024,18(2):48-57.
[6] ARP D,SPREITZENBARTH M,HüBNER M,et al.Drebin:effective and explainable detection of Android malware in your pocket[C]//Proceedings 2014 Network and Distributed System Security Symposium.San Diego,CA.Internet Society,2014:23-26.
[7] CHEN X,LI C R,WANG D R,et al.Android HIV:a study of repackaging malware for evading machine-learning detection[J].IEEE Transactions on Information Forensics and Security,2019,15:987-1001.
[8] ONWUZURIKE L, MARICONTI E, ANDRIOTIS P, et,al.MaMaDroid: Detecting android malware by building markov chains of behavioral models (extended version)[J]. ACM Transactions on Privacy and Security, 2019(14):1-34.
[9] HU W W,TAN Y.Generating adversarial malware examples for black-box attacks based on GAN[M]//Data Mining and Big Data.Singapore:Springer Nature Singapore,2022:409-423.
[10]" HU W,TAN Y.Black-box attacks against RNN based malware detection algorithms[C]//Proc of the Workshops of AAAI Conference on Artificial Intelligence. San Francisco: AAAI, 2018: 245-251.
[11] GOODFELLOW I,POUGET-ABADIE J,MIRZA M,et al.Generative adversarial networks[J].Communications of the ACM,2020,63(11):139-144.
[12] KOLOSNJAJI B,DEMONTIS A,BIGGIO B,et al.Adversarial malware binaries:evading deep learning for malware detection in executables[C]//2018 26th European Signal Processing Conference (EUSIPCO).2018,Rome,Italy.IEEE,2018:533-537.
[13]" KREUK F, BARAK A, AVIV-REUVEN S,et al.Deceiving end-to-end deep learning malware detectors using adversarial examples[EB/OL]. 2018.
[14] LYDA R,HAMROCK J.Using entropy analysis to find encrypted and packed malware[J].IEEE Security amp; Privacy,2007,5(2):40-45. (下轉第85頁)
(上接第82頁)
[15] KWON J, LEE S, KIM K,et al.Semantics Aware Adversarial Malware Examples Generation for Black-Box Attacks[J]. Future Generation Computer Systems, 2021, 109: 107506.
[16] KRAVCHIK M,DEMETRIO L,BIGGIO B,et al.Practical evaluation of poisoning attacks on online anomaly detectors in industrial control systems[J].Computers amp; Security,2022,122:102901.
[17] YANG W,KONG D G,XIE T,et al.Malware detection in adversarial settings:exploiting feature evolutions and confusions in Android apps[C]//Proceedings of the 33rd Annual Computer Security Applications Conference.Orlando FL USA.ACM,2017:288-302.
[18] LIU X B,ZHANG J L,LIN Y P,et al.ATMPA:attacking machine learning-based malware visualization detection methods via adversarial examples[C]//Proceedings of the International Symposium on Quality of Service.Phoenix Arizona.ACM,2019:1-10.
[19] MELIS M,SCALAS M,DEMONTIS A,et al.Do gradient-based explanations tell anything about adversarial robustness to Android malware [J].International Journal of Machine Learning and Cybernetics,2022,13(1):217-232.
[20] LI H, CHEN X, XU W.Adversarial-Example Attacks Toward Android Malware Detection Systems[C]//Proc of the ACM on Asia Conference on Computer and Communications Security. New York: ACM, 2020: 653-656.
[21]" ROSENBERG I, SHABTAI A, ELOVICI Y.Query-efficient gan based black-box attack against sequence based machine and deep learning classifiers[EB/OL]. 2018.
[22] ROSENBERG I,SHABTAI A,ROKACH L,et al.Generic black-box end-to-end attack against state of the art API call based malware classifiers[M]//Research in Attacks,Intrusions,and Defenses.Cham:Springer International Publishing,2018:490-510.
[23] WANG J H,CHANG X L,WANG Y X,et al.LSGAN-AT:enhancing malware detector robustness against adversarial examples[J].Cybersecurity,2021,4(1):38.
[24] RATHORE H,SAHAY S K,NIKAM P,et al.Robust Android malware detection system against adversarial attacks using Q-learning[J].Information Systems Frontiers,2021,23(4):867-882.
[25] YAO L K,SHAO S C,HARIRI S.Resilient machine learning (rML) against adversarial attacks on industrial control systems[C]//2023 20th ACS/IEEE International Conference on Computer Systems and Applications (AICCSA).December 4-7,2023,Giza,Egypt.IEEE,2023:1-8.
【通聯編輯:代影】