本發(fā)明屬于惡意代碼檢測識別,具體涉及一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法及系統(tǒng)。
背景技術(shù):
1、本部分的陳述僅僅是提供了與本發(fā)明相關(guān)的背景技術(shù)信息,不必然構(gòu)成在先技術(shù)。
2、隨著物聯(lián)網(wǎng)技術(shù)的迅猛發(fā)展,越來越多的包括智能家居設(shè)備、可穿戴設(shè)備以及工業(yè)控制系統(tǒng)在內(nèi)的設(shè)備被連接到互聯(lián)網(wǎng)。物聯(lián)網(wǎng)設(shè)備的普及帶來了便利和效率的提升,但也引發(fā)了嚴(yán)重的安全問題。特別是使用安卓系統(tǒng)的物聯(lián)網(wǎng)設(shè)備,由于其開放性和廣泛應(yīng)用,成為了惡意代碼攻擊的主要目標(biāo)。這些惡意代碼可以以多種形式存在,包括但不限于病毒、蠕蟲、木馬、間諜軟件和勒索軟件等。這些惡意程序利用物聯(lián)網(wǎng)設(shè)備的安全漏洞,進行數(shù)據(jù)竊取、設(shè)備控制、分布式拒絕服務(wù)(ddos)攻擊等活動,給個人隱私和組織安全帶來嚴(yán)重威脅。因此,探索更加高效、準(zhǔn)確的惡意代碼檢測方法成為當(dāng)前研究的重要課題。
3、圖神經(jīng)網(wǎng)絡(luò)是深度學(xué)習(xí)領(lǐng)域的一個分支,在處理具有復(fù)雜關(guān)系結(jié)構(gòu)的數(shù)據(jù)集方面展現(xiàn)出了強大能力,如社交網(wǎng)絡(luò)分析、化學(xué)分子結(jié)構(gòu)預(yù)測等。在惡意代碼檢測領(lǐng)域,惡意代碼往往通過復(fù)雜的網(wǎng)絡(luò)活動和進程交互來執(zhí)行其功能,這些可以被建模為節(jié)點和邊組成的圖,而圖神經(jīng)網(wǎng)絡(luò)可以通過捕捉節(jié)點間的關(guān)系以及節(jié)點屬性,從而進行惡意代碼分析。然而,在處理大規(guī)模的圖結(jié)構(gòu)的數(shù)據(jù)集時,由于圖結(jié)構(gòu)比較龐大且復(fù)雜,直接對其分析是不太現(xiàn)實的,尤其對于一些計算資源等比較匱乏的物聯(lián)網(wǎng)設(shè)備。另外,圖神經(jīng)網(wǎng)絡(luò)模型在應(yīng)用中存在一個顯著的問題,即過度平滑問題。隨著網(wǎng)絡(luò)層數(shù)的增加,節(jié)點的表示趨于一致,導(dǎo)致節(jié)點特征的多樣性喪失。這種現(xiàn)象會影響模型的區(qū)分能力,使得后續(xù)的學(xué)習(xí)任務(wù)難以進行。因此,解決圖神經(jīng)網(wǎng)絡(luò)模型的過度平滑問題是非常必要的。
技術(shù)實現(xiàn)思路
1、為了解決上述問題,本發(fā)明提出了一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法及系統(tǒng),采用圖剪枝算法簡化圖結(jié)構(gòu),在圖卷積層中加入跳躍節(jié)點算法以改進圖神經(jīng)網(wǎng)絡(luò)模型的性能,在提升物聯(lián)網(wǎng)惡意代碼檢測準(zhǔn)確率的同時提高檢測效率。
2、根據(jù)一些實施例,本發(fā)明的第一方案提供了一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法,采用如下技術(shù)方案:
3、一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法,包括:
4、獲取物聯(lián)網(wǎng)代碼數(shù)據(jù)集;
5、提取所獲取的物聯(lián)網(wǎng)代碼數(shù)據(jù)集的數(shù)據(jù)特征,得到特征向量數(shù)據(jù)集;
6、考慮虛擬節(jié)點,對所得到的特征向量數(shù)據(jù)集進行剪枝處理,得到簡化圖結(jié)構(gòu);
7、在圖卷積層中加入跳躍節(jié)點算法,構(gòu)建圖神經(jīng)網(wǎng)絡(luò)檢測模型;
8、根據(jù)所構(gòu)建的圖神經(jīng)網(wǎng)絡(luò)檢測模型和簡化圖結(jié)構(gòu),進行物聯(lián)網(wǎng)惡意代碼的檢測。
9、作為進一步的技術(shù)限定,在提取所獲取的物聯(lián)網(wǎng)代碼數(shù)據(jù)集的數(shù)據(jù)特征的過程中,采用集成工具解析獲取的數(shù)據(jù)集中的每一個文件,提取每個樣本的函數(shù)調(diào)用圖。
10、進一步的,基于所提取到的函數(shù)調(diào)用圖,進行函數(shù)調(diào)用圖每個節(jié)點相關(guān)屬性的分配,得到每個節(jié)點相對應(yīng)的特征向量;根據(jù)所得到的每個節(jié)點相對應(yīng)的特征向量得到特征向量數(shù)據(jù)集。
11、進一步的,在進行剪枝處理之前,引入虛擬節(jié)點,建立虛擬節(jié)點與每個節(jié)點之間的雙向連接,根據(jù)鄰居節(jié)點的重要性進行每個節(jié)點重要性的更新迭代,在每次迭代之后進行所有節(jié)點分?jǐn)?shù)的歸一化處理,使得所有節(jié)點分?jǐn)?shù)總和不變;當(dāng)且僅當(dāng)收斂時迭代結(jié)束,移除虛擬節(jié)點,得到最終節(jié)點重要性分?jǐn)?shù)。
12、作為進一步的技術(shù)限定,在剪枝處理的過程中,采用網(wǎng)絡(luò)節(jié)點排序算法和敏感api進行特征向量數(shù)據(jù)集中節(jié)點和邊去留的綜合判斷,完成特征向量數(shù)據(jù)集的精簡,得到簡化圖結(jié)構(gòu)。
13、作為進一步的技術(shù)限定,在圖卷積層中加入跳躍節(jié)點模塊,即在圖神經(jīng)網(wǎng)絡(luò)的每一輸出層中加入跳躍連接在輸出中生成掩碼矩陣,使得將節(jié)點特征的輸出特征直接由輸入特征代替,未被選擇的節(jié)點通過卷積操作,以實現(xiàn)不同節(jié)點特征的區(qū)分,完成圖神經(jīng)網(wǎng)絡(luò)檢測模型的構(gòu)建。
14、根據(jù)一些實施例,本發(fā)明的第二方案提供了一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測系統(tǒng),采用如下技術(shù)方案:
15、一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測系統(tǒng),包括:
16、獲取模塊,其被配置為獲取物聯(lián)網(wǎng)代碼數(shù)據(jù)集;
17、提取模塊,其被配置為提取所獲取的物聯(lián)網(wǎng)代碼數(shù)據(jù)集的數(shù)據(jù)特征,得到特征向量數(shù)據(jù)集;
18、剪枝模塊,其被配置為考慮虛擬節(jié)點,對所得到的特征向量數(shù)據(jù)集進行剪枝處理,得到簡化圖結(jié)構(gòu);
19、建模模塊,其被配置為在圖卷積層中加入跳躍節(jié)點算法,構(gòu)建圖神經(jīng)網(wǎng)絡(luò)檢測模型;
20、檢測模塊,其被配置為根據(jù)所構(gòu)建的圖神經(jīng)網(wǎng)絡(luò)檢測模型和簡化圖結(jié)構(gòu),進行物聯(lián)網(wǎng)惡意代碼的檢測。
21、根據(jù)一些實施例,本發(fā)明的第三方案提供了一種計算機可讀存儲介質(zhì),采用如下技術(shù)方案:
22、一種計算機可讀存儲介質(zhì),其上存儲有程序,該程序被處理器執(zhí)行時實現(xiàn)如本發(fā)明第一方案所述的基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法中的步驟。
23、根據(jù)一些實施例,本發(fā)明的第四方案提供了一種電子設(shè)備,采用如下技術(shù)方案:
24、一種電子設(shè)備,包括存儲器、處理器及存儲在存儲器上并在處理器上運行的程序,所述處理器執(zhí)行所述程序時實現(xiàn)如本發(fā)明第一方案所述的基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法中的步驟。
25、根據(jù)一些實施例,本發(fā)明的第五方案提供了一種計算機程序產(chǎn)品,采用如下技術(shù)方案:
26、一種計算機程序產(chǎn)品,包括軟件代碼,所述軟件代碼中的程序執(zhí)行如本發(fā)明第一方案所述的基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法中的步驟。
27、與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果為:
28、本發(fā)明提取物聯(lián)網(wǎng)代碼數(shù)據(jù)集的特征向量數(shù)據(jù)集展示應(yīng)用程序中函數(shù)之間的調(diào)用關(guān)系,從而識別出惡意行為;采用圖剪枝方法得到簡化圖結(jié)構(gòu),去除冗余和無效的信息,緩解了訓(xùn)練時的內(nèi)存負(fù)擔(dān),提升檢測效率。
29、本發(fā)明在圖卷積層加入跳躍節(jié)點算法,通過采樣使一些節(jié)點跳過卷積操作,防止模型中間層過多而出現(xiàn)過度平滑問題,從而改進模型的性能,提升檢測準(zhǔn)確率。該方法只涉及節(jié)點的操作,相比于其它解決過度平滑和梯度消失的問題,沒有帶來額外的計算負(fù)擔(dān)。
1.一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法,其特征在于,包括:
2.如權(quán)利要求1中所述的一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法,其特征在于,在提取所獲取的物聯(lián)網(wǎng)代碼數(shù)據(jù)集的數(shù)據(jù)特征的過程中,采用集成工具解析獲取的數(shù)據(jù)集中的每一個文件,提取每個樣本的函數(shù)調(diào)用圖。
3.如權(quán)利要求2中所述的一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法,其特征在于,基于所提取到的函數(shù)調(diào)用圖,進行函數(shù)調(diào)用圖每個節(jié)點相關(guān)屬性的分配,得到每個節(jié)點相對應(yīng)的特征向量;根據(jù)所得到的每個節(jié)點相對應(yīng)的特征向量得到特征向量數(shù)據(jù)集。
4.如權(quán)利要求3中所述的一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法,其特征在于,在進行剪枝處理之前,引入虛擬節(jié)點,建立虛擬節(jié)點與每個節(jié)點之間的雙向連接,根據(jù)鄰居節(jié)點的重要性進行每個節(jié)點重要性的更新迭代,在每次迭代之后進行所有節(jié)點分?jǐn)?shù)的歸一化處理,使得所有節(jié)點分?jǐn)?shù)總和不變;當(dāng)且僅當(dāng)收斂時迭代結(jié)束,移除虛擬節(jié)點,得到最終節(jié)點重要性分?jǐn)?shù)。
5.如權(quán)利要求1中所述的一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法,其特征在于,在剪枝處理的過程中,采用網(wǎng)絡(luò)節(jié)點排序算法和敏感api進行特征向量數(shù)據(jù)集中節(jié)點和邊去留的綜合判斷,完成特征向量數(shù)據(jù)集的精簡,得到簡化圖結(jié)構(gòu)。
6.如權(quán)利要求1中所述的一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法,其特征在于,在圖卷積層中加入跳躍節(jié)點模塊,即在圖神經(jīng)網(wǎng)絡(luò)的每一輸出層中加入跳躍連接在輸出中生成掩碼矩陣,使得將節(jié)點特征的輸出特征直接由輸入特征代替,未被選擇的節(jié)點通過卷積操作,以實現(xiàn)不同節(jié)點特征的區(qū)分,完成圖神經(jīng)網(wǎng)絡(luò)檢測模型的構(gòu)建。
7.一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測系統(tǒng),其特征在于,包括:
8.一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,其特征在于,該程序被處理器執(zhí)行時實現(xiàn)了如權(quán)利要求1-6中任一項所述的一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法的步驟。
9.一種電子設(shè)備,包括存儲器、處理器及存儲在存儲器上并在處理器上運行的計算機程序,其特征在于,所述處理器執(zhí)行所述程序時實現(xiàn)了如權(quán)利要求1-6中任一項所述的一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法的步驟。
10.一種計算機程序產(chǎn)品,包括軟件代碼,其特征在于,所述軟件代碼中的程序執(zhí)行如權(quán)利要求1-6中任一項所述的一種基于圖神經(jīng)網(wǎng)絡(luò)的物聯(lián)網(wǎng)惡意代碼檢測方法的步驟。