《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 融合注意力機(jī)制和Child-Sum Tree-LSTM的二進(jìn)制代碼相似性檢測(cè)
融合注意力機(jī)制和Child-Sum Tree-LSTM的二進(jìn)制代碼相似性檢測(cè)
網(wǎng)絡(luò)安全與數(shù)據(jù)治理 11期
李濤,王金雙
(中國(guó)人民解放軍陸軍工程大學(xué)指揮控制工程學(xué)院,江蘇南京210007)
摘要: 抽象語(yǔ)法樹是一種代碼的樹型表示,它保留了代碼中定義良好的語(yǔ)句組件、語(yǔ)句的顯式順序和執(zhí)行邏輯。包含豐富語(yǔ)義信息的抽象語(yǔ)法樹可以在二進(jìn)制分析時(shí)通過(guò)反編譯生成,并且已經(jīng)作為代碼特征應(yīng)用于二進(jìn)制代碼相似度檢測(cè)。抽象語(yǔ)法樹中不同類別的節(jié)點(diǎn)承載著不同的語(yǔ)義信息,對(duì)整棵樹的語(yǔ)義具有不同的貢獻(xiàn)程度。然而現(xiàn)有的二進(jìn)制代碼相似度檢測(cè)方法所用神經(jīng)網(wǎng)絡(luò)無(wú)法對(duì)抽象語(yǔ)法樹節(jié)點(diǎn)進(jìn)行重要性區(qū)分,影響了模型的訓(xùn)練效果。針對(duì)該問題,提出了一種融合注意力機(jī)制和Child-Sum Tree-LSTM神經(jīng)網(wǎng)絡(luò)的跨指令集、跨代碼混淆二進(jìn)制代碼相似性檢測(cè)方法。首先使用二進(jìn)制分析工具IDA Pro對(duì)二進(jìn)制代碼反編譯提取架構(gòu)無(wú)關(guān)的抽象語(yǔ)法樹特征,并利用隨機(jī)采樣構(gòu)造訓(xùn)練樣本對(duì)。然后使用抽象語(yǔ)法樹訓(xùn)練樣本對(duì)訓(xùn)練融合注意力機(jī)制和Child-Sum Tree-LSTM的神經(jīng)網(wǎng)絡(luò)模型。在公開數(shù)據(jù)集BINKIT上的實(shí)驗(yàn)表明,所提方法的AUC和Accuracy指標(biāo)分別為94.1%、66.2%,優(yōu)于Child-Sum Tree-LSTM算法。
中圖分類號(hào):TP315
文獻(xiàn)標(biāo)識(shí)碼:ADOI:10.19358/j.issn.2097-1788.2023.11.002
引用格式:李濤,王金雙.融合注意力機(jī)制和Child-Sum Tree-LSTM的二進(jìn)制代碼相似性檢測(cè)[J].網(wǎng)絡(luò)安全與數(shù)據(jù)治理,2023,42(11):8-14,34.
Binary code similarity detection via attention mechanism and Child-Sum Tree-LSTM
Li Tao,Wang Jinshuang
(Command & Control Engineering College,Army Engineering University of PLA,Nanjing 210007,China)
Abstract: Abstract syntax tree (AST) is a tree representation of code, which preserves well-defined statement components, exploit order of statements, and the execution logic. AST contains rich semantic information and is easy to generate by decompiling the function during binary analysis. The AST can be utilized as a code feature for binary code similarity detection. In an AST, nodes of different types carry different semantic information and contribute differently to the overall semantics of the tree. However, the neural networks used in the existing binary code similarity detection methods are unable to differentiate the importance of AST nodes,which adversely affects the training effectiveness of the models. To address this issue, a binary code similarity detection method is proposed. The method is designed for cross-instruction set architecture and cross-obfuscation, combining attention mechanism and Child-Sum tree-structured long short-term memory networks (Tree-LSTM). Firstly, binary analysis tools IDA Pro are used to decompile the binary code and extract architecture independent AST features. Random sampling is employed to construct training binary function pairs. Secondly, the neural network model, which combines the attention mechanism and Child-Sum Tree-LSTM, is trained on the pairs of abstract syntax tree features. Evaluation results on the public dataset BINKIT show that the method achieves an AUC (Area Under the Curve) of 941% and an accuracy of 662%, outperforming the Child-Sum Tree-LSTM algorithm.
Key words : binary code; similarity detection; attention mechanism; Child-Sum Tree-LSTM

0引言

代碼復(fù)用在軟件開發(fā)過(guò)程中非常普遍。大量代碼和庫(kù)被復(fù)用到多個(gè)體系架構(gòu)的二進(jìn)制文件中,其中存在的一些脆弱代碼可能會(huì)導(dǎo)致安全隱患。二進(jìn)制代碼相似性檢測(cè)技術(shù)可以評(píng)估兩個(gè)或者多個(gè)二進(jìn)制代碼間的相似性和差異性,被廣泛應(yīng)用于漏洞發(fā)現(xiàn)[1-2]、代碼剽竊檢測(cè)[3]、惡意軟件檢測(cè)[4]等領(lǐng)域。

二進(jìn)制代碼相似性檢測(cè)的任務(wù)是尋找與給定查詢二進(jìn)制函數(shù)func最相似的目標(biāo)函數(shù)func′。根據(jù)檢測(cè)對(duì)象的不同,主要分為以下兩種類型:(1)一對(duì)一比較:直接計(jì)算兩段二進(jìn)制代碼之間的相似性。這種方法通常需要設(shè)置一個(gè)合適的閾值,閾值的選擇將直接影響檢測(cè)的準(zhǔn)確度。(2)一對(duì)多比較。該場(chǎng)景將一個(gè)源函數(shù)與目標(biāo)函數(shù)池中的函數(shù)進(jìn)行相似度評(píng)分并排序。目標(biāo)函數(shù)的排序越靠前,說(shuō)明模型對(duì)于函數(shù)語(yǔ)義的區(qū)分度越好。

編譯選項(xiàng)的差異(如編譯優(yōu)化O0-O3、-fno-inline選項(xiàng)等)、代碼混淆技術(shù)(如Obfuscator-LLVM[5])的使用給研究人員提取二進(jìn)制代碼語(yǔ)義帶來(lái)了諸多挑戰(zhàn)。

基于深度學(xué)習(xí)的二進(jìn)制代碼相似度檢測(cè)方法可以自動(dòng)化地提取代碼語(yǔ)義,從而避免了人工分析可能引入的偏差。常用的神經(jīng)網(wǎng)絡(luò)主要有兩類:(1)使用處理結(jié)構(gòu)特征的圖神經(jīng)網(wǎng)絡(luò),如Structure2Vec[6]、GCN[7]等;(2)使用處理文本序列的神經(jīng)網(wǎng)絡(luò),如LSTM(Long Short Term Memory)[8]、Transformer[9]等。

Genius[10]結(jié)合基本塊語(yǔ)法特征和控制流圖(Control Flow Graph,CFG)生成屬性控制流圖用于相似性檢測(cè),之后的Gemini[11]、VulSeeker[1]等均使用了類似的思想。

在二進(jìn)制代碼相似度檢測(cè)領(lǐng)域,Luo等人[12]利用LSTM和孿生網(wǎng)絡(luò)學(xué)習(xí)匯編代碼的語(yǔ)義表示。Asm2vec[13]使用PV-DM[14]模型學(xué)習(xí)函數(shù)和指令符號(hào)的嵌入。jTrans[15]在文獻(xiàn)[16]預(yù)訓(xùn)練任務(wù)的基礎(chǔ)上,將控制流信息融入預(yù)訓(xùn)練任務(wù),取得了較好的效果。但是這些方法無(wú)法適用于跨指令集架構(gòu)的檢測(cè)場(chǎng)景。

觀察來(lái)自庫(kù)findutils中的closs_stream函數(shù),如圖1所示,在保持編譯配置相同(編譯器Clang70,編譯優(yōu)化O0,其他編譯器選項(xiàng)相同)的情況下,不同指令集架構(gòu)(x86和ARM)二進(jìn)制代碼間的CFG具有一定的差異,而其二進(jìn)制代碼對(duì)應(yīng)的AST特征則只出現(xiàn)了一個(gè)節(jié)點(diǎn)的差異。

Tai[17]等人提出了兩種Tree-LSTM網(wǎng)絡(luò)(Child-Sum Tree-LSTM和N-ary Tree-LSTM)用于處理自然語(yǔ)言處理領(lǐng)域的結(jié)構(gòu)化數(shù)據(jù),其在情感分類和語(yǔ)義相關(guān)任務(wù)中的性能優(yōu)于普通LSTM。其中,N-ary Tree-LSTM適合于二叉樹,而Child-Sum Tree-LSTM適用于多孩子的無(wú)序樹,并且具有更高的計(jì)算效率。

在此工作的基礎(chǔ)上,Yang等人[18]提出了一種基于AST編碼的跨指令集架構(gòu)的檢測(cè)方法Asteria。通過(guò)提取二進(jìn)制函數(shù)的AST作為跨指令集架構(gòu)的二進(jìn)制特征來(lái)源,并利用能夠處理樹形數(shù)據(jù)的Tree-LSTM網(wǎng)絡(luò)學(xué)習(xí)二進(jìn)制代碼的AST語(yǔ)義嵌入。但是原生Tree-LSTM難以捕獲子節(jié)點(diǎn)對(duì)整棵樹的語(yǔ)義貢獻(xiàn)度,影響訓(xùn)練精度。

屏幕截圖 2024-01-25 110722.png

圖1二進(jìn)制代碼的CFG和AST特征對(duì)比

(bigram工程closs_stream函數(shù)O0優(yōu)化)

AST的節(jié)點(diǎn)代表了代碼中的表達(dá)式或語(yǔ)句,不同種類的節(jié)點(diǎn)承載著不同的信息量。然而Child-Sum Tree-LSTM對(duì)子節(jié)點(diǎn)隱藏狀態(tài)累加以表示父節(jié)點(diǎn),未能考慮不同類別AST節(jié)點(diǎn)對(duì)整棵樹特征表示的貢獻(xiàn)程度。例如,AST中包含的num等節(jié)點(diǎn)通常和expr、block等節(jié)點(diǎn)具有一定的從屬關(guān)系,并且通常在樹中處于不同的位置。進(jìn)行節(jié)點(diǎn)向量傳播的過(guò)程中應(yīng)當(dāng)對(duì)這些節(jié)點(diǎn)的語(yǔ)義信息對(duì)進(jìn)行重要性區(qū)分,使得在模型訓(xùn)練過(guò)程中節(jié)點(diǎn)對(duì)整棵AST提供適當(dāng)?shù)恼Z(yǔ)義貢獻(xiàn)度。

本文提出了一種融合注意力機(jī)制和Child-Sum Tree-LSTM的二進(jìn)制代碼相似性檢測(cè)方法。首先使用二進(jìn)制分析工具IDA Pro對(duì)二進(jìn)制文件進(jìn)行反編譯提取AST作為特征來(lái)源,輸入到融合注意力機(jī)制的Child-Sum Tree-LSTM神經(jīng)網(wǎng)絡(luò)中進(jìn)行訓(xùn)練,最后通過(guò)實(shí)驗(yàn)表現(xiàn)驗(yàn)證本方法的有效性。所提方法可用于跨指令集架構(gòu)、跨代碼混淆、跨編譯優(yōu)化等級(jí)等多種二進(jìn)制代碼相似性檢測(cè)場(chǎng)景。


本文下載請(qǐng)點(diǎn)擊:融合注意力機(jī)制和Child-Sum Tree-LSTM的二進(jìn)制代碼相似性檢測(cè)AET-電子技術(shù)應(yīng)用-最豐富的電子設(shè)計(jì)資源平臺(tái) (chinaaet.com)


作者信息:

李濤,王金雙

 (人民解放軍陸軍工程大學(xué)指揮控制工程學(xué)院,江蘇南京210007)中國(guó)


電子技術(shù)應(yīng)用微店二維碼.jpg


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美精品激情| 久久久五月婷婷| 国内精品久久久久久影视8| 欧美日韩国产高清| 亚洲欧美日韩视频一区| 欧美成年人网| 亚洲国产日韩欧美综合久久| 亚洲精品视频免费| 久久激情中文| 国产日产欧产精品推荐色| 99在线热播精品免费| 久久精品水蜜桃av综合天堂| 久久美女性网| 亚洲国产成人av| 一本色道久久88亚洲综合88| 欧美国产日韩一区| 亚洲国语精品自产拍在线观看| 91久久精品一区二区别| 欧美福利一区| 99国产精品国产精品久久| 99成人在线| 国产精品二区三区四区| 亚洲一区二区三区欧美 | 亚洲图片欧美一区| 欧美高清在线精品一区| 久久爱91午夜羞羞| 欧美片第1页综合| 国产精品久线观看视频| 激情成人亚洲| 亚洲精品国产精品国自产观看浪潮| 亚洲精品免费在线| 激情六月综合| 国产精品久久婷婷六月丁香| 欧美日韩国产电影| 欧美剧在线观看| 欧美激情亚洲国产| 欧美激情第9页| 久久成人精品无人区| 国产亚洲欧洲| 久久国产精品高清| 欧美日韩免费观看一区=区三区| 中文一区二区在线观看| 亚洲欧美在线免费| 国产一区二区三区四区hd| 亚洲国产三级网| 国产精品vip| 欧美在线91| 欧美大胆人体视频| 亚洲欧美韩国| 欧美日本在线观看| 亚洲天堂av在线免费| 欧美高清在线| 香蕉成人久久| 欧美日韩精品免费看| 欧美亚洲免费| 欧美四级剧情无删版影片| 久久精品国产999大香线蕉| 国产精品家教| 亚洲三级影院| 今天的高清视频免费播放成人| 亚洲女人天堂成人av在线| 久久gogo国模裸体人体| 欧美成人日韩| 欧美日韩国产在线观看| 久久gogo国模裸体人体| 一本色道久久| 亚洲视屏一区| 亚洲制服欧美中文字幕中文字幕| 亚洲在线1234| 久久精品99无色码中文字幕| 亚洲欧洲精品一区二区三区不卡 | 国产精品系列在线| 亚洲精品日韩一| 一区二区在线视频| 久久综合激情| 欧美主播一区二区三区| 国产精品网曝门| 亚洲一区三区视频在线观看| 亚洲美女在线看| 欧美亚洲色图校园春色| 一区二区三区视频在线播放| 欧美日韩视频免费播放| 99re热这里只有精品视频| 国产亚洲高清视频| 欧美一级二级三级蜜桃| 国产精品99久久久久久有的能看| 国产精品久久一级| 久久久av水蜜桃| 亚洲激情校园春色| 亚洲免费播放| 国产精品腿扒开做爽爽爽挤奶网站| 欧美一区二区三区喷汁尤物| 久久成人精品无人区| 欧美三级电影大全| 久久久久久久久久看片| 99精品国产福利在线观看免费| 欧美剧在线免费观看网站| 午夜精品一区二区三区四区| 亚洲字幕一区二区| 亚洲欧美激情四射在线日| 久久国内精品视频| 久久久一区二区三区| 欧美成人免费在线视频| 国产精品sm| 伊人色综合久久天天五月婷| 9久草视频在线视频精品| 欧美一区二区三区电影在线观看| 99在线精品视频在线观看| 亚洲尤物影院| 美女黄毛**国产精品啪啪| 在线免费观看欧美| 欧美亚洲成人网| 欧美激情国产精品| 亚洲欧洲综合另类| 99精品国产在热久久| 国产亚洲午夜| 国产精品最新自拍| 欧美69wwwcom| 午夜精品短视频| 亚洲国产精品久久久久久女王| 国产视频一区欧美| 欧美日韩国产限制| 欧美一级淫片aaaaaaa视频| 99re6这里只有精品| 亚洲欧洲av一区二区| 亚洲美女啪啪| 国产视频一区在线观看| 欧美日韩在线电影| 欧美成人免费播放| 久久国产日韩欧美| 午夜激情综合网| 亚洲尤物在线视频观看| 亚洲美女av网站| 亚洲精品小视频在线观看| 一区久久精品| 国产日产亚洲精品| 久久久久久久久蜜桃| 新狼窝色av性久久久久久| 性色av一区二区三区在线观看| 欧美一区二区三区免费观看视频| 久久五月激情| 欧美日韩亚洲一区二区三区四区 | 国产精品国产成人国产三级| 欧美香蕉视频| 国产精品99久久久久久久女警 | 亚洲在线视频一区| 亚洲电影毛片| 亚洲精品日韩综合观看成人91| 亚洲日本免费| 亚洲美女精品成人在线视频| 亚洲精品影院在线观看| 一本色道88久久加勒比精品| 欧美日韩国产页| 老色鬼精品视频在线观看播放| 久久综合色播五月| 欧美激情免费在线| 国产精品久久久久久户外露出| 国产日韩欧美黄色| 国内精品久久久久久影视8 | 亚洲精品久久久久久久久久久久久| 久久er99精品| 亚洲黄色在线看| 99精品欧美一区二区蜜桃免费| 日韩亚洲在线| 久久看片网站| 正在播放亚洲| 亚洲一区二区三区欧美| 亚洲日韩中文字幕在线播放| 久久久久看片| 亚洲一区欧美二区| 久久精品一区二区| 久久亚洲精选| 亚洲缚视频在线观看| 亚洲美女淫视频| 欧美日韩一本到| 中文日韩在线视频| 亚洲国产日韩在线一区模特| 欧美视频在线观看| 中日韩在线视频| 亚洲免费电影在线观看| 欧美在线视频免费播放| 欧美a级片一区| 午夜免费日韩视频| 国产精品久久国产愉拍| 亚洲欧洲日本专区| 久久gogo国模裸体人体| 亚洲一二三区精品| 免费亚洲电影在线观看| 国产人成一区二区三区影院| 激情久久久久久久| 午夜精品久久久久影视| 亚洲综合精品四区| 欧美日韩亚洲视频| 亚洲国产美女久久久久| 亚洲电影观看| 欧美一区二区三区免费看| 欧美视频一区二区在线观看| 亚洲精品一区二区三区av| 亚洲电影在线看| 久久伊人一区二区|