999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于異質圖屬性增強的惡意軟件變種檢測方法

2024-06-29 22:43:18孫錦濤李祺李曉龍
四川大學學報(自然科學版) 2024年3期

孫錦濤 李祺 李曉龍

摘 要: 如今越來越多的攻擊者通過修改惡意軟件源碼的方式逃避惡意軟件檢測,惡意軟件變種在代碼重用、編碼風格、攻擊行為等多方面的復雜關系為惡意軟件分析帶來了挑戰. 近年來,圖神經網絡憑借其在建模圖結構數據,學習實體間復雜關系等方面的強大能力,已被廣泛應用于惡意軟件分類與檢測任務之中,以建模惡意軟件及其變種間復雜的關系,擺脫孤立分析困境. 然而,現有方法一方面缺少對惡意軟件及其變種間多維度復雜關系的全面表征,導致復雜關聯關系未被充分挖掘及利用. 另一方面僅關注惡意軟件間的拓撲結構,忽略了實體語義信息,這導致攻擊者極易通過對抗手段偽造特征從而逃過檢測. 此外,與惡意軟件相關的Windows API、通信IP 等實體自身匱乏的語義信息進一步阻礙了語義信息的提取和表示. 因此,實現惡意軟件間全面的關聯關系與特征語義信息的融合對提升惡意軟件變種檢測的魯棒性和準確性具有重要意義. 為此,本文提出了一種基于異質圖屬性增強的惡意軟件變種檢測方法. 首先,構建了一個惡意軟件異質信息網絡,以建模惡意軟件及特征間的復雜關系;然后,通過惡意軟件異質信息網絡,將惡意軟件變種檢測問題轉化為異質圖中的節點分類問題,為實體節點構建語義屬性來增強節點信息的表示;接下來,對于其中語義信息匱乏的實體節點,從外部開源數據中學習實體的語義信息來彌補自身的語義缺失;最后,本文以拓撲關系為指導,基于注意力機制聚合有屬性節點信息以補全無屬性節點,實現節點屬性補全. 遵循一種迭代優化方式,以交替式地優化補全過程與異質圖節點嵌入過程,實現統一的基于異質圖屬性補全的惡意軟件變種檢測方法. 實驗結果表明,本文提出的方法能夠有效提升惡意軟件變種檢測的性能,在多個數據集下優于其他最先進的模型.

關鍵詞: 惡意軟件變種檢測; 異質圖神經網絡; 特征增強; 屬性補全

中圖分類號: TP391. 1 文獻標志碼: A DOI: 10. 19907/j. 0490-6756. 2024. 030002

1 引言

如今,隨著代碼重用技術的發展,惡意軟件變種可以輕易地由已知惡意軟件改造而來. 這使得惡意軟件數量以指數型速度增長,給企業、政府和金融機構等造成巨大損失. 根據AV-TEST 報告[1],截止到2023 年,惡意軟件數量已經超過120萬,過去1 年間惡意軟件新增超10 萬,其中一半以上是來自現有惡意軟件的變種. 面對惡意軟件及其變種的爆發式增長,傳統的基于簽名的檢測方法已經無法阻止不斷發展的惡意軟件威脅[2]. 因此,準確、魯棒和可擴展的惡意軟件變種檢測方案對于保護現代網絡世界的可信性是十分必要的.

在過去的幾年間,受深度學習在圖像分類、自然語言處理等方向產生的巨大影響,許多研究工作將深度學習應用于惡意軟件檢測和分類之中,并取得了優秀的檢測性能. 這些方法通過提取惡意軟件的各類型特征構建特征集,并依據特征集訓練模型作為分類器,訓練后的分類器能夠實現對未知惡意軟件的檢測和分類[3]. 當前絕大多數研究工作基于單個惡意樣本的內容提取特征并進行分類,實現了對單個惡意軟件的孤立分析. 但這些方法忽略了惡意軟件間的關系且易受代碼混淆技術的影響. 為進一步提升惡意軟件變種檢測的效果,許多研究開始考慮建模惡意軟件間復雜的關系. 實際上,惡意軟件間的關系可以為惡意軟件檢測和分類提供更多的寶貴信息,并且相比于孤立地分析惡意軟件,分析惡意軟件及特征間的關系能夠有效對抗惡意軟件逃避技術[4]. 近期已經有許多研究基于惡意軟件間的關系檢測惡意軟件. 例如,Scorpion[4]構建異質信息網絡表述惡意軟件與Windows API、動態鏈接庫、壓縮包、設備之間的關系,設計metagraph2vec 方法實現惡意軟件檢測.GDroid[5]構建APP-API 和API-API 關系,采用圖卷積神經網實現Android 惡意軟件檢測. 諸多研究已經證明,基于惡意軟件及特征間關系的惡意軟件檢測與分類方法具有強大的潛力.

然而,當前基于惡意軟件間關系的檢測方法依然存在諸多問題. 首先,惡意軟件變種檢測旨在根據惡意軟件間存在的代碼復用、編碼風格等信息檢測惡意軟件是否由已知惡意軟件變種而來[6].而當前已有研究缺少對惡意軟件間代碼復用、網絡行為等復雜關系的全面表征[5],這導致惡意軟件間未能建立豐富的關聯關系. 其次,當前方法只依賴于惡意軟件及特征間的拓撲關系進行檢測,缺少對惡意軟件及特征自身語義的表示,容易遭受對抗攻擊[4]. 以Windows API 特征為例,當惡意軟件采用替換功能相近API 的方式生成新變種時,現有方法無法識別惡意軟件和其變種的關系,這是由于現有方法僅基于是否共同調用了同一個Windows API 來建模兩個軟件間的關系,而未考慮到Windows API 的功能等語義信息,缺失了Windows API 間的相似性關系. 實際上,當兩個惡意軟件分別調用兩個功能相似的敏感WindowsAPI 時,他們屬于同一類變種的概率也將進一步提高. 由此可知,惡意軟件特征的語義信息能夠表達惡意軟件間隱蔽的關聯關系,有助于構建惡意軟件間深層次的關聯關系. 然而,并非所有特征的語義信息都可以輕松獲得. 例如,惡意軟件的WindowsAPI、通信IP 等特征存在關鍵的語義信息,但難以從惡意樣本中直接提取. 而字符串、導入鏈接庫等特征則更是難以表示其語義. 這都為惡意軟件及其特征的語義信息表征帶來了困難,嚴重影響了惡意軟件變種檢測的準確性和魯棒性.

為了解決以上缺陷,本文提出基于異質圖屬性增強的惡意軟件變種檢測方法. 該方法首先從代碼功能、通信行為等多方面提取惡意代碼特征,包括導入的Windows API、動態鏈接庫、字符串、代碼塊和通信IP. 并基于多維特征全面建模惡意軟件間的關系,構建惡意軟件變種檢測場景下的異質信息網絡,將惡意軟件變種檢測問題轉化為異質圖中的節點分類問題. 之后,我們為異質信息網絡的實體節點構建語義屬性來增強節點的表示,特征語義信息能夠描述特征間的相似性關系,對代碼混淆等攻擊手段存在魯棒性. 特別對于其中語義信息匱乏的實體節點(Windows API 節點、通信IP 節點),我們從外部開源數據(Windows?API 參考文檔、IP 地理位置庫)中學習特征的語義信息來彌補語義信息缺失的不足. 最后,我們采用異質圖神經網絡學習多維特征的異質信息,同時,面向字符串和動態鏈接庫兩類無語義屬性的節點,我們以異質信息網絡的拓撲關系為指導,通過加權聚合鄰居節點屬性補全無語義節點. 通過一種迭代式的訓練機制,我們將語義屬性補全過程與異質圖節點嵌入過程迭代優化,實現統一的基于異質圖屬性補全的惡意軟件變種檢測方法.

綜上所述,本文的貢獻總結如下:

(1) 我們提出了一種面向惡意軟件變種檢測的異質信息網絡,通過提取多維特征全面表征惡意軟件,并依賴惡意軟件與特征間的關系(例如,惡意軟件→調用→API)建模多個惡意軟件間的復雜關系,實現惡意軟件間關系的全面表示.

(2) 我們為異質信息網絡的實體節點構建語義屬性來增強節點信息的表示,特別是對于語義信息匱乏的節點,我們從外部開源數據中學習實體的語義信息來彌補語義信息缺失的不足. 通過語義增強,實體間的相似性關系得以利用,提升了對代碼混淆等攻擊手段的魯棒性.

(3) 我們采用異質圖神經網絡學習多維特征的異質信息,同時以異質信息網絡的拓撲關系為指導,通過加權聚合鄰居節點補全無語義節點. 通過一種迭代式的訓練機制,將語義屬性補全過程與異質圖節點嵌入過程迭代優化,實現統一的基于異質圖屬性補全的惡意軟件變種檢測方法.

(4) 我們進行了多項實驗證明所提出方案的優越性. 實驗結果證明,我們提出方案在兩個數據集上實現了90. 9%~98. 9% 的準確率,優于其他惡意軟件變種檢測方案.

本文其余章節組織如下: 第2 節回顧惡意軟件變種檢測和圖神經網絡的相關工作. 第3 節介紹提出的基于異質圖屬性增強的惡意軟件變種檢測方法,包括異質信息網絡構建、異質圖屬性增強與基于屬性補全的異質圖神經網絡模塊. 第4 節進行充分實驗來評估本文提出的方法在多個數據集中的性能. 最后,對本文工作進行了總結和展望.

2 相關工作

在本節中,我們回顧以下兩個方面的相關研究:惡意軟件變種檢測和圖神經網絡.

2. 1 惡意軟件變種檢測

由于人工智能技術在圖像分類、自然語言處理等方向的迅猛發展,基于機器學習和深度學習的惡意軟件變種檢測已成為廣泛研究的焦點. 現有方法通過提取惡意軟件的多樣化特征,形成特征集合,然后利用這些特征集合進行分類模型的訓練,當前主流的惡意軟件變種檢測方法包含基于代碼內容的方法、基于軟件行為的方法和基于惡意軟件關系的方法.

基于代碼內容的方法是在不執行惡意代碼的前提下,通過分析原始二進制代碼或者反匯編相關文件提取惡意軟件的靜態特征,并基于靜態特征構建分類模型實現惡意代碼分析. 常見的特征有字節序列、操作碼和控制流圖等. Li 等人[7]提出一種基于RGB 圖像的惡意軟件特征表示方法,該方法根據相對虛擬地址組合惡意軟件的字節圖像、操作碼圖像、字符串圖像,形成紋理信息更豐富的圖像,并結合自注意力機制和空間金字塔池化改進了卷積神經網絡模型,解決了惡意軟件大小差異較大的問題. Dib 等人[8]則提出了EVOLIoT方法,將匯編指令序列視作句子,采用BERT架構學習惡意軟件的語義. 同時,引入了一種魯棒且有效的對比學習方法,來對抗“ 概念漂移”和家族間物聯網惡意軟件分類的局限性. Yan 等人[3]將惡意代碼表示為屬性控制流圖,以實現通用且有效的惡意代碼表示,并基于深度圖卷積神經網絡實現惡意軟件變種檢測.

基于軟件行為的方法則是在孤立環境中執行惡意軟件追蹤其執行行為,將捕獲的API 調用、進程操作、網絡通信等行為作為特征,構建分類模型實現惡意軟件變種檢測. Liu 等人[9]提出了惡意軟件變種檢測框架FewM-HGCL,該框架將每個惡意軟件變種的執行行為建模為一個異構圖,刻畫惡意軟件對象(如API、進程、文件等)之間的交互關系,并基于異質圖對比學習解決了小樣本場景下的樣本真實標簽不足的問題. Liu 等人[10]提出了一種基于動態異構圖學習的新型檢測框架MGDVD,用于實時檢測惡意軟件變種. MG-DVD 首先將惡意軟件變體的細粒度執行事件流建模為動態異構圖,并提出了兩種基于動態游走的異構圖學習方法,學習更全面的惡意軟件變種表示,從而顯著降低了整個圖再訓練的成本,實現了實時檢測惡意軟件變體的能力.

然而,以上這些方法僅基于單個惡意樣本的內容進行變種檢測,實現了單個惡意軟件的孤立分析,而忽略了惡意軟件間的關系,容易受到對抗手段攻擊. 為了解決孤立分析的困境,有研究開始基于惡意軟件間的關系設計相關的檢測方法[11,12].HinDroid[13]將Android 應用程序、相關API 以及它們之間豐富的關系表示為一個結構化的異構信息網絡,使用基于元路徑的方法來描述應用程序和API 的語義相關性. Scorpion[4]構建異質信息網絡表述惡意代碼與API、DLL、壓縮包、設備之間的關系,設計了metagraph2vec 方法實現惡意軟件檢測. GDroid[5]構建APP-API 和API-API 關系,采用GCN 實現Android 惡意軟件檢測.

然而,現有方法存在兩個問題:(1) 當前方法缺少對惡意軟件間代碼復用、網絡行為等復雜關系的全面表征,導致惡意軟件間未能建立豐富的關聯關系;(2) 當前方法只關注于惡意軟件及特征間的拓撲關系,缺少對惡意軟件及其特征的自身語義信息的表示,使得可用信息單一,易被對抗手段攻擊.

2. 2 圖神經網絡

為了擴展深度神經網絡來處理任意圖結構數據,圖神經網絡被提出. 圖神經網絡將圖中的節點嵌入到低維空間中,并使節點嵌入保持圖的拓撲結構和節點屬性的相似性. 當前被廣泛接受的圖神經網絡包括GraphSAGE[14]和GAT[15]等. 然而,上述圖神經網絡僅用于處理同質圖,在處理節點或邊類型不唯一的異質圖時,會丟失異質信息. 最近,一些研究試圖將圖神經網絡擴展到異質圖. 例如,Wang 等人[16]提出異質圖注意網絡HAN,在節點級別和語義級別上執行分層注意力機制,以聚合基于元路徑的鄰居并獲得最終的節點嵌入. Fu等人[17]提出聚合元路徑的圖神經網絡MAGNN,該模型包含節點內容轉換以封裝輸入節點屬性,元路徑內聚合以合并中間語義節點,以及元路徑間聚合以組合來自多個元路徑的消息. Yun 等人[18]則提出GTN,通過識別原始圖上未連接節點之間的有用連接來生成新的圖結構,可以以端到端的方式學習新圖上的有效節點嵌入.

然而,對于異質圖中某些類型節點的屬性缺失問題,上述方法均不能給出合適的解決方案. 他們只能通過手工求均值等方式填充固定的節點屬性,并不能起到良好的效果. 為了彌補節點屬性缺失的問題,有研究開始為異質圖中的缺失屬性節點進行屬性補全. Jin 等人[19]認為缺失的屬性可以通過可學習的方式獲取,并提出了一種基于屬性補全的異構圖神經網絡(HGNN-AC)的通用框架,包括拓撲嵌入預學習和帶有注意機制的屬性補全. Wang 等人[20]提出了一種異構網絡的通用屬性補全框架AC-HEN, 利用特征聚合和結構聚合來獲得考慮特征空間和結構空間的多視圖嵌入. 然后,使用多視圖嵌入通過弱監督學習范式中的嵌入融合模塊來完成缺失的屬性. Zhu 等人[21]提出了一種稱為AutoAC 的可微屬性補全框架,用于異構圖神經網絡中的自動補全操作搜索. AutoAC 首先提出一個包括拓撲相關和拓撲無關的補全操作搜索空間. 然后設計連續松弛模式,并進一步提出了可微分補全算法. 受這些研究的啟發,本文采用圖神經網絡學習惡意軟件及其變種檢測復雜的關系,并引入屬性補全機制彌補無屬性節點缺失的語義,實現屬性補全下的惡意軟件變種檢測.

3 基于異質圖屬性增強的惡意軟件變種檢測方法

在本文中,我們提出了一種基于異質圖屬性增強的惡意軟件變種檢測方法. 該方法基于惡意軟件及特征間的關系(例如,惡意軟件→ 調用→API)構建惡意軟件變種檢測場景下的異質信息網絡,建模惡意軟件間復雜的關系,實現惡意軟件間關系的全面表征. 之后,我們為異質信息網絡的實體節點構建語義屬性來增強節點信息的表示. 特別是對于語義信息匱乏的節點,我們從外部開源數據中學習實體的語義信息來彌補語義信息缺失的不足. 通過語義增強,實體間的相似性關系得以利用,提升了對代碼混淆等攻擊手段的魯棒性. 最后,我們采用異質圖神經網絡學習多維特征的異質信息,同時,以異質信息網絡的拓撲關系為指導,通過加權聚合鄰居節點屬性補全無語義節點.通過一種迭代式的訓練機制,我們將語義屬性補全過程與異質圖節點嵌入過程迭代優化,實現統一的基于異質圖屬性補全的惡意軟件變種檢測方法. 如圖1 所示,本方案分為三個組件:構建異質信息網絡、異質信息網絡節點屬性增強和基于屬性補全和異質圖神經網絡的惡意軟件變種檢測.

具體來說,在構建異質信息網絡階段,如圖1中的第1)階段所示. 我們針對惡意軟件及其變種間的代碼重用、編碼風格相似、行為共通等特點,設計并提取惡意軟件的多維特征,包括導入的Windows API、動態鏈接庫、字符串、通信IP 和代碼塊. 以樣本及提取的特征為節點,以彼此間的關系為引導,構建惡意軟件變種檢測場景下的異質信息網絡,建模惡意軟件間復雜的關系.

之后,為建模異質信息網絡中實體間的相似性關系,提升對代碼混淆等攻擊手段的魯棒性,我們對實體節點進行特征增強,如圖1 中的第2)階段所表示. 具體來說,我們為異質信息網絡中的實體節點構造語義屬性以增強異質信息網絡的表達,建立屬性增強的異質信息網絡. 其中,對于樣本和代碼塊節點,其自身包含豐富的語義信息,因此我們分別提取字節分布序列、匯編指令統計特征作為其節點語義屬性. 對于Windows API、通信IP 節點,其本身包含的信息匱乏,因此我們從外部開源數據中學習Windows API 和通信IP 的語義信息,以彌補節點語義信息的缺失,表達實體間的相似性. 進一步來說,針對于Windows API,我們基于Windows API 官方參考文檔構建API 知識圖,基于知識圖譜學習API 嵌入表達其語義,將學習到的API 嵌入作為Windows API 節點的屬性. 針對通信IP,我們依賴IP 地理位置庫,為通信IP 引入IP 地理位置特征作為其屬性,表示通信IP 間的相似度.

最后,我們設計基于屬性補全與異質圖神經網絡的惡意軟件變種檢測方法,根據圖的拓撲關系加權聚合鄰居節點的屬性,為動態鏈接庫、字符串此類無語義節點補全屬性. 并基于一種迭代式的訓練機制,將語義屬性補全過程與異質圖節點嵌入過程迭代優化,實現統一的基于異質圖屬性補全的惡意軟件變種檢測方法.

3. 1 構造異質信息網絡

異質信息網絡又稱異質圖,可以表示為G ={ V,E,F,R,φ,? },V 為節點集,E 為邊集,F 為節點類型集合,R 為邊類型集合,其中| F |+| R |> 2.每個節點i ∈ V 對應一個節點類型映射函數φ:V → F,每個邊e ∈ E 對應一個邊類型映射函數?:E → R. G 的網絡模式記為TG = ( F,R),是G ={ V,E,F,R,φ,? } 的元模式. 具體地,網絡模式是定義在對象類型集合F 上的有向圖,并以R 上的關系為邊.

為了建模惡意軟件及其變種間的關系,我們構建一個惡意軟件異質信息網絡G. 區別于其他基于惡意軟件間關系的工作,我們提取多維度特征以從代碼復用、編碼風格、惡意行為等多方面表征惡意軟件及其變種間復雜多樣的關系,并依此構建異質信息網絡. 具體來說,我們提取惡意軟件中出現的字符串,用以描述惡意軟件及其變種在作者編碼風格上的關聯性;提取惡意軟件的代碼塊,描繪惡意軟件變種間存在的代碼復用等現象;提取惡意軟件的通信IP、導入的Windows API 及動態鏈接庫,建模惡意軟件變種間在功能、行為等方面的相似度. 之后,我們將樣本和提取的多維特征作為異質信息網絡的實體節點,基于實體節點間的關系構建異質信息網絡中節的邊,形成如圖2所示的網絡模式. 我們的方案可以添加更多的特征(例如,注冊表行為、N-Gram 等)以描述惡意軟件間更復雜的關系,考慮到特征可用性與執行效率,我們選取以上5 種特征建模本方案的異質信息網絡.

下面將詳細描述異質信息網絡的節點和邊的含義及選取理由.

樣本節點F1:樣本節點是我們需要檢測目標實體,由數據集中的所有樣本組成.

字符串節點F2:字符串是反應惡意軟件作者編碼風格和惡意軟件行為的重要特征,惡意軟件中的字符串能夠揭示不同惡意樣本之間的潛在關系. 我們通過逆向工程提取有意義的字符串,包括命令、鏈接、地址等. 這些字符串大多由惡意軟件開發者硬編碼而來,反映出開發者的編碼風格以及樣本訪問的文件、通信地址等信息,在惡意軟件及其變種間具有強的共現性. 因此,我們將字符串作為節點,構建樣本間字符串共現關系.

代碼塊節點F3:由于惡意軟件及其變種間存在普遍的代碼復用現象,我們選擇代碼塊作為變種檢測的特征,以評估惡意樣本間存在的代碼復用現象. 具體來說,本文通過逆向工程提取惡意軟件的控制流圖,將控制流圖中的基本塊視為我們所需要的代碼塊,其代表了一段連續且有實際意義的代碼序列,以代碼塊為節點,建立樣本間的關系來描述惡意代碼間的代碼復用.

通信IP 節點F4:惡意軟件需要與惡意主機(例如C&C 服務器)通信,以獲取惡意命令或有效載荷并上傳收集到的信息. 在相同的惡意軟件變種內,開發者往往改變惡意軟件的功能以實現不同的惡意行為,但作為惡意主機的通信IP 往往得到保留. 同時,相較于域名、URL 等特征,通信IP 更具有通用性,因此我們將通信IP 作為關聯惡意樣本的重要依據. 具體來說,我們在孤立環境中運行惡意軟件獲得其通信的IP 地址,將其作為特征描述惡意軟件通信行為在中的相似性.

Windows API 節點F5:Windows API 調用可以有效地反映惡意軟件的行為. 例如,惡意軟件通過調用函數GetFileInformationByHandle 能夠獲取文件的信息,如大小、屬性等,而調用RegSetValueEx可以用來修改注冊表中指定值的數據和類型. 多項研究[4,5,11]已經證明具有相同WindowsAPI 的樣本有更大可能具有相似的功能,采用Windows API 檢測惡意軟件具有優秀的檢測效果. 因此,我們從文件的導入表中提取WindowsAPI 調用來表示惡意軟件及其變種在功能及行為上的相似性.

動態鏈接庫節點F6:動態鏈接庫整合了一系列具有相似功能的Windows API. 我們通過引入動態鏈接庫節點關聯多個Windows API,構建Windows API 間的關系,增強異質信息網絡的信息表達.

為了關注于更重要的特征,本文設置超參數r,用于過濾掉在大部分樣本中都出現的特征,這些特征往往表達Windows 軟件中通用的信息,對于區分惡意軟件變種無實質性幫助. 具體來說,我們過濾掉在不同樣本中出現頻率大于r 的特征,這里的特征僅針對于字符串、代碼塊、通信IP 和WindowsAPI,不針對于動態鏈接庫.

根據以上設計的節點,我們構建5 種類型的邊,描述樣本和特征間的關系. 具體來說,我們建模樣本和字符串間的擁有關系R1,建模樣本和代碼塊間的包含關系R2,建模樣本和通信IP 地址間的連接關系R3,建模樣本和Windows API 間的導入關系R4,建模Windows API 和動態鏈接庫的所屬關系R5.

3. 2 異質信息網絡節點屬性增強

為建模異質信息網絡中實體間的相似性關系,提升對代碼混淆等攻擊手段的魯棒性,我們為異質信息網絡中的實體節點添加語義屬性以增強異質信息網絡的表達. 通過構建節點語義屬性,該方案不再僅基于實體節點間拓撲關系進行檢測,而同時關注節點間拓撲關系以及節點自身語義,描繪出同類實體節點間在語義上的相似性關系,降低了API 混淆、代碼混淆等逃避手段帶來的影響,提升了模型的魯棒性與準確性. 具體來說,我們利用知識圖譜學習Windows API 參考文檔中的知識,將得到的包含語義的Windows API 嵌入作為Windows API 節點的屬性. 對于通信IP,我們引入IP 地理位置庫為IP 節點添加地理位置屬性. 對于代碼塊,我們利用反匯編為代碼塊添加匯編代碼序列統計特征作為屬性描述代碼塊的功能. 對于樣本,我們提取字節分布序列作為屬性. 以下具體解釋各類型節點的屬性如何生成.

3. 2. 1 Windows API 屬性生成 每一個WindowsAPI 都有各自的功能,面對惡意軟件中導入的大量Windows API,區分Windows API 的功能、尋找功能相似的Windows API 對于判斷惡意軟件的行為起著關鍵性作用[22]. 然而Windows API 本身缺少有效的語義信息,為了表征Windows API的語義屬性,我們構建知識圖譜從Windows API參考文檔中學習Windows API 的語義嵌入,將其作為Windows API 節點的屬性. 具體來說,我們首先在微軟官方網站[23]收集API 參考文檔,之后解析這些文檔,提取實體及其關系,并根據實體與其關系進行關聯,形成API 知識圖. 最后,基于知識圖譜嵌入學習API 知識圖信息,獲得API 語義嵌入.

首先,我們進行實體提取. 實體是API 知識圖中的基本元素. Windows API 參考文檔以層次結構組織,最底層是API 文檔中定義的供開發人員使用的基本單元,包含函數、方法和結構體等3 種數據類型. 而頭文件和類接口等3 種數據類型則在上層,作為函數、方法和結構體的容器. 通過解析組織樹,我們提取函數、方法、結構體、頭文件、類、接口等6 種數據類型作為實體,并將函數、方法和結構體定義為功能實體,將頭文件、類和接口定義為容器實體.

之后,我們進行關系抽取. 關系表示實體如何相互關聯. 如表1 所示,我們考慮上述實體之間的三類關系:

(1) 結構關系:描述功能實體和容器實體之間的組織關系,由Windows API 參考文檔的層次結構建立. 例如,方法由接口或類組織,接口、函數、結構體和類由頭文件組織.

(2) 功能關系:表示實體在功能上的相關性,包含繼承、參數調用和返回調用等3 種關系. 其中,繼承關系根據參考文檔中的Inheritance 字段將類或接口與其繼承的類或接口連接起來;參數調用關系反映了一個方法或函數是否將其他方法、函數、結構體、類、接口等作為輸入參數使用;返回調用關系則根據一個方法或函數將結構體作為其返回值來建立關系.

(3) 引用關系:在Windows API 參考文檔中的Description、Remark 和See Also 字段會出現與該API 存在關系的引用,以幫助開發者快速跳轉到其他API,這種共現性表現出兩個API 之間功能或結構上存在相似性. 因此,我們通過對API 參考文檔中的描述Description、Remark 和See Also 字段進行分詞解析,搜索存在API 引用,并依此建立兩個實體間的引用關系.

最后,我們生成API 嵌入. 知識圖譜嵌入方法可以學習知識圖譜實體和關系的低維表示,同時保留其語義. 在API 知識圖中,知識圖譜嵌入方法旨在將知識圖中的每個API 轉換為低維向量,保留API 語義的同時使得語義上更接近的API 在其低維向量上有更高的相似性. 我們利用經典的TransE 方法[24]來學習API 知識圖. 該算法受word2vec[25]啟發,假設有一個連接實體h 和實體t的關系c,用3 個向量lh,lc,l t 來表示它們,TransE的核心思想是不斷調整這3 個向量,使lh 和lc 的和接近于lt. 這樣,語義上接近的API 就會有相似的向量表示.

3. 2. 2 IP 屬性生成 惡意軟件中通信的IP 地址通常表示用于下載惡意載荷和上傳用戶信息的C&C 服務器[26]. IP 地址本身的語義屬性對于判斷惡意軟件間的變種具有重要參考價值,已經有多項研究通過IP 增強特征以提升任務性能[27,28]. 在本方案中,我們引入IP 地理位置庫以獲得IP 所在的經緯度,表示異質信息網絡中通信IP 節點的語義屬性.

為了得到計算機可以理解的IP 屬性,我們對提取到的IP 地理位置特征進行編碼. 具體來說,我們對IP 經緯度采用GeoHash 方法[29]進行編碼.GeoHash 方法將地球理解為1 個二維平面,通過把二維的空間經緯度數據編碼為1 個字符串,使得物理距離相近的兩個地點在編碼后更相似.

3. 2. 3 代碼塊屬性生成 代碼塊被定義為控制流圖中基本塊,其表示了一段連續且有實際意義的功能邏輯,能夠有效地表述惡意軟件變種間的代碼復用關系. 為了有效表示代碼塊的語義特征,我們基于Yan 等人[3]提出的方法,分析代碼塊的匯編代碼序列,提取多維度統計特征表示代碼塊的語義屬性,包含不同類型的指令數量、常量值數量、特殊字符串數量等共計32 維特征.

3. 2. 4 樣本屬性生成 惡意樣本本身包含多種屬性,在本方案中,我們選擇樣本的字節分布序列作為屬性. 具體來說,我們將惡意樣本的二進制比特序列編碼為十六進制字節序列,1 個字節能夠表示0~255 之間的數字. 之后,將每種字節在樣本中占的比例作為該字節的特征值,256 種字節按由小到大順序拼接得到字節分布序列. 我們選擇字節分布序列作為屬性是基于以下兩個理由:(1) 該方法能夠表示惡意樣本的所有信息,避免了惡意樣本間大小不一致導致的信息缺失問題;(2) 該序列生成過程簡單快速,生成的序列長度固定為256,既避免n-gram 等生成方法帶來的時間消耗,又減少了之后的檢測模型負擔[30].

3. 3 基于屬性補全的異質圖神經網絡

經過異質圖節點屬性增強階段,異質信息網絡的通信IP 節點、Windows API 節點、樣本節點和代碼塊節點的語義信息得到充分表示,然而動態鏈接庫節點和字符串節點卻難以生成恰當的語義信息其屬性. 為了解決異質信息網絡中動態鏈接庫節點和字符串節點屬性缺失的問題,我們以拓撲信息為指導,通過對有屬性節點的屬性進行加權聚合來補全無屬性節點的屬性. 此外,為了提高下游圖學習任務的性能,我們按照一種迭代優化的策略,將屬性補全和異質圖神經網絡的訓練聯合優化,而不是將其視為兩個獨立的過程. 具體而言,在屬性補全階段,首先使用異質圖嵌入方法獲取節點拓撲嵌入,然后通過計算節點嵌入的注意力值來區分不同鄰居節點的貢獻,加權聚合得到無屬性節點.

主站蜘蛛池模板: 色偷偷男人的天堂亚洲av| 一级毛片中文字幕| 国产欧美日韩精品综合在线| 97se亚洲综合在线| 色哟哟国产精品| 日韩福利在线观看| 中文字幕首页系列人妻| 久久99热66这里只有精品一| 青青网在线国产| 久久无码高潮喷水| 国产亚洲精品yxsp| 国产自在线拍| 欧美成人a∨视频免费观看| 91丝袜乱伦| 深爱婷婷激情网| 亚洲大尺度在线| 岛国精品一区免费视频在线观看 | A级全黄试看30分钟小视频| 国内嫩模私拍精品视频| 国产成a人片在线播放| 重口调教一区二区视频| 免费国产无遮挡又黄又爽| 亚洲综合国产一区二区三区| 久久国产精品麻豆系列| 国语少妇高潮| 国产十八禁在线观看免费| 亚洲天堂视频在线播放| 久久亚洲AⅤ无码精品午夜麻豆| 久青草网站| 精品国产中文一级毛片在线看 | 亚洲中文字幕在线观看| 亚洲国产精品国自产拍A| 狠狠做深爱婷婷久久一区| 亚洲欧美成人在线视频| 一区二区理伦视频| 国产欧美日韩精品第二区| 亚洲第一黄片大全| 国产成人精品综合| 国产精品久久久久婷婷五月| 国产第一页亚洲| 波多野结衣一区二区三区四区视频| 粉嫩国产白浆在线观看| 久久人与动人物A级毛片| 欧美成人精品在线| 国产永久在线视频| 九色综合伊人久久富二代| 日本少妇又色又爽又高潮| 亚洲一区无码在线| 国产精品尤物在线| 无码高潮喷水在线观看| 亚洲日本www| 啪啪免费视频一区二区| 天天干天天色综合网| 国产91精选在线观看| 欧美区在线播放| 91小视频版在线观看www| 久久久精品国产SM调教网站| 欧美一级高清片欧美国产欧美| 免费大黄网站在线观看| 高清久久精品亚洲日韩Av| 一级一级特黄女人精品毛片| JIZZ亚洲国产| 奇米精品一区二区三区在线观看| 91成人在线免费视频| 日韩欧美国产另类| 久久这里只有精品国产99| 成人精品午夜福利在线播放| 91尤物国产尤物福利在线| 日本三级黄在线观看| 99无码中文字幕视频| 伊人久久大香线蕉aⅴ色| 亚洲欧美日韩视频一区| 国产精品女熟高潮视频| 午夜电影在线观看国产1区| 日本精品视频一区二区| 伊人色综合久久天天| 国产内射一区亚洲| 亚洲视频在线青青| 国产精品久久久久无码网站| 天堂成人在线视频| 高清精品美女在线播放| 亚洲国产天堂久久九九九|