两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種基于AI的二進(jìn)制同源樣本分析方法與流程

文檔序號(hào):40575202發(fā)布日期:2025-01-03 11:40閱讀:22來源:國(guó)知局
一種基于AI的二進(jìn)制同源樣本分析方法與流程

本發(fā)明涉及深度學(xué)習(xí),具體涉及一種基于ai的二進(jìn)制同源樣本分析方法。


背景技術(shù):

1、隨著深度學(xué)習(xí)的興起,基于深度學(xué)習(xí)的二進(jìn)制同源樣本分析也成為了當(dāng)下熱點(diǎn),經(jīng)大量調(diào)查與實(shí)踐,深度學(xué)習(xí)方法在樣本分類中取得顯著成績(jī),其中的二進(jìn)制同源樣本分析是指通過惡意代碼的特征,分析代碼之間的關(guān)系;在很多行業(yè)和領(lǐng)域都涉及樣本分析,都可以識(shí)別和歸類惡意軟件家族、檢測(cè)代碼復(fù)用、追蹤惡意軟件的演變過程以及識(shí)別未來威脅。

2、但目前使用深度學(xué)習(xí)對(duì)惡意代碼進(jìn)行同源樣本分類依然存在諸多挑戰(zhàn);例如,常規(guī)的方法會(huì)直接處理原始的二進(jìn)制匯編指令,通過匯編指令來提取特征以及結(jié)合訓(xùn)練的模型做同源樣本的分類,但是匯編指令中除了順序執(zhí)行外,還涉及跳轉(zhuǎn)以及調(diào)用,這些通常以相對(duì)地址表示,直接提取特征可能無法理解語義,處理不了上下文關(guān)系,無法直接利用。

3、例如一中國(guó)專利,申請(qǐng)?zhí)枮?02311724479?.9,申請(qǐng)日為2023?.12?.14,專利名稱為《一種惡意代碼的同源分析方法、裝置、電子設(shè)備》的發(fā)明專利,其技術(shù)方案為:一種惡意代碼的同源分析方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì),其中,該方法包括:獲取包含惡意代碼的可執(zhí)行文件;提取所述可執(zhí)行文件中的匯編指令;對(duì)所述匯編指令進(jìn)行代碼語義序列構(gòu)建,得到匯編指令語義序列;提取所述匯編指令語義序列中的深度特征;將所述深度特征進(jìn)行分類算法訓(xùn)練,得到檢測(cè)模型;根據(jù)所述檢測(cè)模型對(duì)所述匯編指令進(jìn)行同源分析,得到同源分析結(jié)果。

4、雖然上述專利能夠?qū)崿F(xiàn)對(duì)惡意代碼的分析,但是該方案將二進(jìn)制代碼,先轉(zhuǎn)匯編指令,再通過gist特征提取轉(zhuǎn)為圖像;首先,這樣的方式不但會(huì)丟失一些準(zhǔn)確信息,比如語義信息以及指令跳轉(zhuǎn)之間的聯(lián)系,而且通用常規(guī)的代碼通過編譯器生成的指令,往往具備較高的相似度,而惡意代碼往往就只有幾行代碼,在圖形特征上分類特征往往并不明確;其次,gist特征是具有相對(duì)固定的維度,如果攻擊者了解gist提取算法,是可以規(guī)避檢測(cè)的,并且gist只關(guān)注圖像中的宏觀布局,往往忽略了指令的具體含義,可能會(huì)降低對(duì)某些惡意指令的同源分析能力。


技術(shù)實(shí)現(xiàn)思路

1、為了解決上述現(xiàn)有技術(shù)存在的問題,本發(fā)明提供了能將底層語言轉(zhuǎn)為高級(jí)語言,再結(jié)合lstm模型實(shí)現(xiàn)更高效的標(biāo)記惡意代碼特征以及同源分類的一種基于ai的二進(jìn)制同源樣本分析方法。

2、為實(shí)現(xiàn)上述技術(shù)效果,本發(fā)明的技術(shù)方案如下:

3、一種基于ai的二進(jìn)制同源樣本分析方法,具體步驟包括:

4、步驟一:讀取文件內(nèi)容,識(shí)別出具體的加殼類型,再進(jìn)行脫殼處理得到原始數(shù)據(jù)文件;

5、步驟二:將脫殼后的原始數(shù)據(jù)文件,進(jìn)行反匯編,得到匯編指令代碼;

6、步驟三:將匯編指令代碼轉(zhuǎn)為中間代碼,通過自然語言大模型再將中間代碼轉(zhuǎn)為高級(jí)語言,用于惡意代碼特征標(biāo)記,制作出惡意樣本數(shù)據(jù)集;

7、步驟四:對(duì)數(shù)據(jù)集中的部分惡意樣本進(jìn)行預(yù)處理,再進(jìn)行標(biāo)簽編碼;

8、步驟五:構(gòu)建一個(gè)能增強(qiáng)對(duì)惡意樣本特征提取能力以及檢測(cè)能力的lstm模型,將處理后的部分惡意樣本,輸入到lstm模型進(jìn)行訓(xùn)練;

9、步驟六:將預(yù)處理后的新的惡意樣本輸入到已經(jīng)訓(xùn)練完成的lstm模型,從而得出最終結(jié)果。

10、進(jìn)一步的,步驟一中讀取文件內(nèi)容的具體方式為打開二進(jìn)制文件,逐步讀取字節(jié),將文件內(nèi)容讀取到內(nèi)存中;加殼類型的具體識(shí)別方式為通過工具分析內(nèi)存中的二進(jìn)制數(shù)據(jù)掃描文件頭和節(jié)表;脫殼處理的具體方式為調(diào)用脫殼工具進(jìn)行脫殼處理得到原始二進(jìn)制數(shù)據(jù);步驟二中反匯編的具體方式為將脫殼后的原始數(shù)據(jù)文件輸入給反匯編工具,通過反匯編工具自動(dòng)化解析分析得到匯編指令代碼。

11、進(jìn)一步的,步驟三中匯編指令代碼轉(zhuǎn)為中間代碼具體為:匯編指令代碼通過使用llvm工具包轉(zhuǎn)為llvm?ir代碼,llvm?ir代碼再通過提示詞模版調(diào)用自然語言大模型將llvmir代碼轉(zhuǎn)為高級(jí)語言;所述高級(jí)語言為c語言。

12、進(jìn)一步的,步驟四和步驟六中預(yù)處理的具體方式為:將部分惡意樣本中的每個(gè)惡意樣本分配一個(gè)家族分類標(biāo)簽,然后將惡意樣本代碼拆分為詞匯,然后進(jìn)行整數(shù)編碼,把拆分的詞匯進(jìn)行整數(shù)序列化,將所有整數(shù)序列填充或截?cái)嗟揭粯拥拈L(zhǎng)度,為所有整數(shù)序列構(gòu)建一個(gè)詞匯表,并為每個(gè)詞匯分配一個(gè)唯一整數(shù)id;標(biāo)簽編碼的具體方式為將家族分類標(biāo)簽轉(zhuǎn)為唯一整數(shù)id或者one-hot編碼。

13、更進(jìn)一步的,將惡意樣本拆分為詞匯,然后進(jìn)行整數(shù)編碼的具體步驟為:

14、步驟a:先進(jìn)行分詞,將完整的句子拆分為單詞或字詞序列:

15、

16、式中,t1、t2和t3的含義均為拆分的單詞或字詞序列;

17、步驟b:分詞完成后,將每個(gè)拆分后的單詞或字詞序列映射到詞匯表中的id序列:

18、

19、式中,a1、a2和a3的含義均為每個(gè)分詞或字詞序列所對(duì)應(yīng)的整數(shù)id;

20、步驟c:將所有整數(shù)序列填充或截?cái)嗟揭粯娱L(zhǎng)度的具體方式為:若,則在句子的末尾填充特殊的填充符號(hào),使得填充后的長(zhǎng)度為:,式中的含義為整數(shù)序列的長(zhǎng)度,為句子的長(zhǎng)度上限,c為填充符號(hào);若,則截?cái)酁殚L(zhǎng)度,保留前?個(gè)詞,得到截?cái)嗪蟮拈L(zhǎng)度為。

21、進(jìn)一步的,步驟六中的最終結(jié)果為對(duì)應(yīng)的各個(gè)家族的類別概率,其中家族代表apt攻擊組織;步驟六中將預(yù)處理后的新的惡意樣本輸入到已經(jīng)訓(xùn)練完成的lstm模型,得出最終結(jié)果的具體步驟如下:

22、步驟a1:將輸入層的整數(shù)序列通過查表操作,映射到詞向量矩陣w;

23、步驟b1:在lstm層,輸入詞向量矩陣w,通過lstm層計(jì)算得到層輸出矩陣h;

24、步驟c1:將層輸出矩陣h通過均值層取平均值,得到一個(gè)固定長(zhǎng)度的稠密向量;

25、步驟d1:稠密向量v經(jīng)過全連接層,通過激活函數(shù)最終得到類別概率向量。

26、更進(jìn)一步的,所述步驟a1中詞向量矩陣w是一個(gè)v×d?的矩陣,其中?v?是詞匯表的大小,d?是詞向量的維度;給定整數(shù)序列,每個(gè)?都是一個(gè)詞匯表中的id,通過嵌入矩陣,映射為對(duì)應(yīng)的詞向量,公式表示如下:

27、

28、最終,整數(shù)序列將被轉(zhuǎn)換為詞向量矩陣,其中每個(gè)詞向量,表示d維實(shí)數(shù)空間;

29、所述步驟b1中通過lstm層得到層輸出矩陣的具體步驟如下:

30、步驟a2:計(jì)算遺忘門,其具體公式如下:

31、

32、式中,與分別表示遺忘門的權(quán)重與偏置,表示在時(shí)間步的隱藏狀態(tài)向量,表示在時(shí)間步t輸入的詞向量,表示 sigmoid函數(shù);

33、步驟b2:計(jì)算輸入門和候選記憶,其具體公式如下:

34、;

35、

36、式中,表示每個(gè)詞向量,在式中作為輸入門類別i的權(quán)重,表示輸入門的偏執(zhí),與表示候選記憶的權(quán)重與偏置,表示雙曲正切函數(shù);

37、步驟c2:更新細(xì)胞狀態(tài),其具體公式如下:

38、

39、式中,表示lstm層在時(shí)間步t的長(zhǎng)時(shí)記憶;表示lstm層在時(shí)間步t-1的長(zhǎng)時(shí)記憶;

40、步驟d2:計(jì)算輸出門,其具體公式如下:

41、

42、式中,與分別表示輸出門的權(quán)重與偏置;

43、步驟e2:計(jì)算隱藏狀態(tài),其具體公式如下:

44、

45、最后,lstm層輸出一個(gè)序列隱藏狀態(tài)的層輸出矩陣;

46、所述步驟c1中,將層輸出矩陣h通過均值層取平均值,得到一個(gè)固定長(zhǎng)度的稠密向量,其中層輸出矩陣,表示維實(shí)數(shù)空間,層輸出矩陣h是一個(gè)矩陣,則該步驟的具體公式為:

47、

48、式中,稠密向量是均值池化后的稠密向量,hi表示輸出矩陣h的第i個(gè)列向量,n代表層數(shù);

49、所述步驟d1中激活函數(shù)選用為softmax函數(shù);稠密向量v經(jīng)過全連接層,通過激活函數(shù)最終得到類別概率向量的具體步驟如下:

50、步驟a3:稠密向量v在全連接層進(jìn)行線性變換,其具體公式如下:

51、

52、式中,是全連接層的權(quán)重矩陣,是偏置向量,,k表示類別數(shù),z的含義為全連接層的輸出,對(duì)稠密向量v進(jìn)行線性變換的結(jié)果;

53、步驟b3:使用softmax函數(shù)轉(zhuǎn)換為概率向量,其具體公式如下:

54、

55、式中,pi表示模型預(yù)測(cè)樣本屬于第i類的概率,是輸出的類別概率向量,為類別數(shù),為全連接層輸出類別i的對(duì)數(shù)幾率值,為全連接層輸出類別j的對(duì)數(shù)幾率值,e表示自然常數(shù)。

56、更進(jìn)一步的,為了增強(qiáng)步驟b1中l(wèi)stm層對(duì)惡意樣本的特征提取,對(duì)lstm層的調(diào)整包括如下具體步驟:

57、步驟a4:引入雙向lstm,用于捕捉從左到右和從右到左的序列信息,并將兩個(gè)方向的隱藏狀態(tài)進(jìn)行拼接,其具體公式如下:

58、;

59、;

60、;

61、式中,表示從左向右處理序列時(shí)lstm在時(shí)間步的隱藏狀態(tài);表示從右向左處理序列時(shí)lstm在時(shí)間步的隱藏狀態(tài);表示雙向lstm在時(shí)間步的輸出狀態(tài),包含從左到右和從右到左的隱藏狀態(tài)拼接后的輸出;表示輸入在lstm層的計(jì)算;表示從右向左處理序列時(shí)lstm在時(shí)間步的隱藏狀態(tài);表示從左向右處理序列時(shí)lstm在時(shí)間步的隱藏狀態(tài);

62、步驟b4:增加lstm的層數(shù),使模型能夠捕捉更深層次的特征信息,其具體公式如下:

63、

64、式中,表示lstm在第層的時(shí)間步的隱藏狀態(tài);表示lstm在第層的時(shí)間步的隱藏狀態(tài);表示lstm在第層的時(shí)間步的隱藏狀態(tài)。

65、更進(jìn)一步的,對(duì)步驟d1中全連接層的權(quán)重和激活函數(shù)進(jìn)行調(diào)整,用于增強(qiáng)惡意樣本的檢測(cè)性能,其具體的調(diào)整步驟如下:

66、步驟a5:引入l2正則化,用于防止過擬合,正則化后的損失函數(shù)為:

67、

68、式中,表示損失函數(shù),其中是模型參數(shù),為交叉熵?fù)p失,n表示樣本數(shù)量,為正則化參數(shù),表示l2正則化項(xiàng),模型參數(shù)的l2范數(shù)平方,表示預(yù)測(cè)概率,表示樣本屬于第i類的標(biāo)記;

69、步驟b5:在全連接層之前加入dropout層,以隨機(jī)丟棄部分神經(jīng)元,減少過擬合,其具體公式為:

70、

71、式中,表示全連接層的輸出,為丟棄概率。

72、更進(jìn)一步的,使用softmax函數(shù)轉(zhuǎn)換為概率向量后,為了增強(qiáng)惡意樣本區(qū)分能力,引入加權(quán)交叉熵?fù)p失函數(shù),其具體公式為:

73、

74、式中,表示每個(gè)詞向量,在式中作為輸入門類別i的權(quán)重;yi表示樣本屬于第i類的標(biāo)記;pi表示模型預(yù)測(cè)樣本屬于第i類的概率。

75、根據(jù)上述技術(shù)方案,本發(fā)明具有的有益效果如下:

76、1.本發(fā)明采用基于ai的二進(jìn)制同源樣本分析方法,將底層語言轉(zhuǎn)換為高級(jí)語言,并將深度學(xué)習(xí)模型lstm應(yīng)用于樣本家族分類,實(shí)現(xiàn)了更快捷的提取語言中的特征關(guān)系,并且顯著提高了對(duì)惡意樣本進(jìn)行家族分類的效果。

77、2.本發(fā)明將匯編指令代碼轉(zhuǎn)換為高級(jí)語言代碼,解決了跨平臺(tái)的兼容性問題,以及方便人工快速理解二進(jìn)制代碼的含義,更快捷準(zhǔn)確的提取其中的特征關(guān)系。

78、3.本發(fā)明的方法構(gòu)建了一個(gè)能增強(qiáng)對(duì)惡意樣本特征提取能力以及檢測(cè)能力的lstm模型,通過利用該lstm模型,能夠更快速的提取語言中的特征關(guān)系,提高了對(duì)惡意樣本的檢測(cè)效果以及家族分類效果和效率。

79、4.本發(fā)明的方法中引入了雙向lstm,解決了傳統(tǒng)lstm只能從左至右處理序列信息的缺點(diǎn),使得lstm可以從左至右以及從右至左的捕捉序列信息,讓lstm模型能夠更好的增強(qiáng)對(duì)惡意樣本的特征提取效果。

80、5.本發(fā)明的方法中通過增加lstm的層數(shù),實(shí)現(xiàn)了能夠捕捉惡意樣本中更深層次特征信息的技術(shù)效果。

81、6.本發(fā)明的方法通過引入l2正則化和在全連接層之前加入dropout層,以此來對(duì)全連接層進(jìn)行優(yōu)化,調(diào)整全連接層的權(quán)重和激活函數(shù),增強(qiáng)了對(duì)惡意樣本的檢測(cè)能力。

82、7.本發(fā)明的方法中通過引入加權(quán)交叉熵?fù)p失函數(shù),使得本方法實(shí)現(xiàn)了對(duì)惡意樣本更好的區(qū)分效果。

83、8.本發(fā)明的方法中采用對(duì)語句的詞匯拆分、整數(shù)序列化以及對(duì)整數(shù)序列的填充與截?cái)?,?shí)現(xiàn)了將整數(shù)序列映射到詞向量矩陣,保證了lstm模型對(duì)惡意代碼的同源分析效果。

84、9.本發(fā)明采用llvm?ir作為中間代碼,能夠在不同的操作系統(tǒng)和硬件上移植,且llvm可以優(yōu)化提高程序性能,減少內(nèi)存使用以及改善代碼的可讀性和維護(hù)性。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
武威市| 仁布县| 泸溪县| 县级市| 浏阳市| 太谷县| 沭阳县| 桃源县| 崇州市| 东乌珠穆沁旗| 英德市| 光泽县| 永登县| 合川市| 旺苍县| 望奎县| 赤城县| 焉耆| 罗山县| 枣阳市| 广河县| 临桂县| 周宁县| 广饶县| 闽侯县| 扎鲁特旗| 奈曼旗| 冷水江市| 墨玉县| 咸宁市| 库伦旗| 交口县| 田东县| 高尔夫| 道孚县| 轮台县| 堆龙德庆县| 兴国县| 保定市| 洪泽县| 云梦县|