亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        利用LEMNA解釋深度學(xué)習(xí)在網(wǎng)絡(luò)安全的應(yīng)用(下)

        2019-05-18 07:33:20郭文博徐軍
        中國(guó)教育網(wǎng)絡(luò) 2019年4期
        關(guān)鍵詞:特征

        文/郭文博 徐軍

        實(shí)驗(yàn)與結(jié)果

        為了驗(yàn)證LEMNA的有效性,我們將其應(yīng)用到兩個(gè)基于安全的深度學(xué)習(xí)上:惡意軟件分類以及二進(jìn)制代碼逆向。在本文中,只介紹LEMNA在二進(jìn)制代碼逆向工程中的應(yīng)用。

        1. 實(shí)驗(yàn)設(shè)計(jì)

        二進(jìn)制代碼逆向?qū)⒍M(jìn)制代碼逆向成匯編代碼,對(duì)于惡意軟件檢測(cè)、軟件安全加強(qiáng),以及安全補(bǔ)丁都是至關(guān)重要的。多年來(lái),二進(jìn)制分析主要是通過(guò)有經(jīng)驗(yàn)的安全分析員手工分析。最近,研究人員發(fā)現(xiàn)RNN在逆向工程中,比如發(fā)現(xiàn)函數(shù)開始位置,有很好的效果。考慮到檢測(cè)函數(shù)開始位置的重要性,我們選擇在此應(yīng)用上測(cè)試LEMNA,按照 [1] 中的方法使用了2200個(gè)程序來(lái)訓(xùn)練RNN網(wǎng)絡(luò)。

        我們將這些程序在O0、O1、O2和 O3這些優(yōu)化級(jí)別下分別編譯成二進(jìn)制代碼。由此,得到了四個(gè)不同的數(shù)據(jù)集,并且對(duì)每一個(gè)數(shù)據(jù)集訓(xùn)練了一個(gè)分類器,同時(shí)將這些數(shù)據(jù)集中的每一個(gè)二進(jìn)制代碼都表示成二進(jìn)制序列。如圖1所示,我們首先將這些二進(jìn)制序列替換成數(shù)值序列,并且將每一個(gè)數(shù)值認(rèn)為是一個(gè)特征。在訓(xùn)練中,每一個(gè)特征都有一個(gè)為“a function start”或者“not function start”的標(biāo)簽。同樣依據(jù) [1] 將長(zhǎng)序列切分成最大長(zhǎng)度為200的短序列,并且將最終生成的序列輸入到RNN中。用Theano作為后端,并且使用Keras來(lái)訓(xùn)練模型,利用70%的樣本用于訓(xùn)練剩下的30%用于測(cè)試。

        圖1 進(jìn)制序列替換成數(shù)值序列

        將上面提到的RNN作為L(zhǎng)EMNA的目標(biāo)模型,給定一個(gè)輸入樣本,LEMNA模擬這個(gè)目標(biāo)聚類器然后解釋聚類結(jié)果。其中,“解釋”代表著一個(gè)輸入樣本中最重要的特征。對(duì)于“函數(shù)開始位置”聚類器,我們?cè)趫D1中展示了一個(gè)例子。給定一個(gè)樣本數(shù)值序列以及RNN標(biāo)定的函數(shù)開始位置(即“83”),LEMNA標(biāo)定序列中擁有最大貢獻(xiàn)的字節(jié)集合。其中,“83”是函數(shù)開始字節(jié),而且LEMNA將函數(shù)開始位置前的“90”標(biāo)記為RNN聚類的最重要的原因。LEMNA有三個(gè)可配置的超參數(shù)。首先為了擬合局部決策邊界,我們構(gòu)建N個(gè)數(shù)據(jù)樣本來(lái)做模型擬合。第二個(gè)以及第三個(gè)參數(shù)分別是混合模塊中的K以及Fused Lasso中的閾值S。在函數(shù)開始位置檢測(cè)中,我們將這些參數(shù)分別設(shè)置為:N=500, K=6, S=1e 。

        LEMNA的計(jì)算開銷是相對(duì)比較低的。在函數(shù)開始位置檢測(cè)中,解釋一個(gè)給定的輸入樣本的開銷大概是10秒鐘,這個(gè)開銷還可以通過(guò)并行進(jìn)一步降低。

        為了更直觀地展示LEMNA的效果,我們選擇了兩個(gè)baseline來(lái)作對(duì)比。首先,用現(xiàn)在最先進(jìn)的黑盒解釋方法 LIME[2]作為比較的基礎(chǔ)。為了公平的比較,在LIME中,同樣將500設(shè)定為擬合線性回歸模型的樣本基數(shù)。其次,用隨機(jī)特征選擇作為比較的基礎(chǔ)。給定一個(gè)輸入,這個(gè)方法隨機(jī)地選擇特征作為解釋的結(jié)果。

        2. 精度評(píng)估

        為了評(píng)估解釋的精度,我們?cè)O(shè)計(jì)了一個(gè)兩步的實(shí)驗(yàn)。第一步,直接檢測(cè)對(duì)于決策邊界的局部擬合,這極有可能會(huì)給出一個(gè)解釋精度的初步估計(jì)。第二步,對(duì)于解釋精度進(jìn)行端到端的評(píng)估。設(shè)計(jì)了三種精度測(cè)試來(lái)展示LEMNA標(biāo)定的特征確實(shí)是聚類結(jié)果的主要原因。

        (1)局部擬合精度: 這個(gè)度量直接比較解釋得到的決策邊界以及原始的決策邊界。具體而言,衡量Root Mean Square Error(RMSE):, 其中,代表著從目標(biāo)聚類器中得到的一個(gè)單一的預(yù)測(cè),表示我們的解釋方法得到的擬合決策,n是測(cè)試數(shù)據(jù)樣本的數(shù)量。從一個(gè)給定的聚類器和一個(gè)測(cè)試數(shù)據(jù)樣本出發(fā)對(duì)于每一個(gè)測(cè)試樣本x1,首先通過(guò)聚類獲取一個(gè)預(yù)測(cè)概率。然后對(duì)于x1,我們依據(jù)前文公式(6)來(lái)產(chǎn)生一個(gè)回歸模型,并由其得到一個(gè)估計(jì)的預(yù)測(cè)概率。我們對(duì)所有的n個(gè)樣本進(jìn)行如上步驟,并且獲取一個(gè)預(yù)測(cè)向量)以及對(duì)應(yīng)的擬合向量。最終,我們基于這兩個(gè)向量計(jì)算RMSE。一個(gè)較低的RMSE意味著擬合更接近真實(shí)的邊界,表明我們得到了一個(gè)更高的解釋精度。

        (2)端到端的精度測(cè)試:為了驗(yàn)證選取的特征的正確性,我們?cè)O(shè)計(jì)了一些端對(duì)端的精度測(cè)試。為了方便理解,使用圖片歸類作為一個(gè)例子。需要注意的是,這個(gè)過(guò)程同樣適用于其他的聚類器。如圖2所示,這個(gè)圖片聚類器將鞋子和毛衣區(qū)分。圖2a中的輸入圖片被分類成毛衣。圖2b中,解釋工具用紅色標(biāo)定了那些重要的像素(特征)。我們將這些標(biāo)定的特征表示為Fx。為了度量這些解釋的精度,我們有三個(gè)思路:

        如果Fx是被精確選擇的,那么把Fx從輸入中刪除,那么這個(gè)圖片將會(huì)被錯(cuò)誤的分類, 即分類為 “鞋子” (圖2c)。

        如果Fx是被精確選擇的,那么把Fx加到一個(gè)鞋子的圖片中,將導(dǎo)致聚類器犯錯(cuò),即將圖片歸類為“毛衣”(圖2d)。

        如果Fx是精確選擇的,我們生成只包含這些特征的圖片,而且這些生成的圖片,應(yīng)該大概率被歸類成“毛衣”(圖2e)。

        圖2 圖片聚類器分鞋子和毛衣

        根據(jù)這三個(gè)思路,我們構(gòu)建了三個(gè)不同的精度測(cè)試來(lái)度量選取的這些特征。形式化來(lái)說(shuō),給定一個(gè)輸入樣本x以及它的聚類標(biāo)簽,LEMNA標(biāo)定一個(gè)小的重要特征集合Fx作為解釋。然后,根據(jù)三個(gè)步驟來(lái)產(chǎn)生三個(gè)測(cè)試樣本t(x)1,t(x)2,…t(x)3來(lái)做特征校準(zhǔn):

        特征移除:將x中的Fx摘除得到 t(x)1;

        特征加強(qiáng):首先從相反的類別中選擇一個(gè)隨機(jī)樣本。然后我們通過(guò)將這個(gè)樣本中的某些特征用Fx代替,來(lái)產(chǎn)生樣本 t(x)2;

        特征生成:我們通過(guò)保留樣本中的Fx,然后將其他的特征賦予隨機(jī)值來(lái)生成樣本t(x)3。

        為了保證結(jié)果的可解讀性,將Fx約束在一個(gè)小的集合內(nèi)。對(duì)于每一個(gè)分類器,我們將精度測(cè)試運(yùn)行到所有的測(cè)試樣本。給定測(cè)試樣本中的一個(gè)實(shí)例,我們產(chǎn)生三個(gè)樣本,依次對(duì)應(yīng)著我們的三個(gè)精度度量方法。將這三個(gè)樣本放進(jìn)分類器中,然后觀測(cè)positive classification rate (PCR)。注意這里的“positive”的意味是這個(gè)新樣本的標(biāo)簽跟原樣本一致。

        3. 實(shí)驗(yàn)結(jié)果

        實(shí)驗(yàn)表明,LEMNA在不同的精度指標(biāo)上都比LIME和隨機(jī)方法要好(見(jiàn)表1)。LEMNA有著比LIME小幾個(gè)量級(jí)的RMES,IME給出的最好的結(jié)果是0.1532,然后它依舊比LEMNA最差的結(jié)果(0.0196)大了差不多十倍。 這個(gè)結(jié)果驗(yàn)證了混合擬合模型可以構(gòu)建一個(gè)精度更高的解釋。

        表1 LEMNA與LIME對(duì)比

        圖3 實(shí)驗(yàn)結(jié)果

        圖3a 展示了特征移除實(shí)驗(yàn)的結(jié)果。通過(guò)移除LEMNA標(biāo)定的最重要的5個(gè)特征,函數(shù)開始位置的PCR降低到了25%甚至更低??紤]到這個(gè)聚類器極高的精度,這個(gè)劇烈的降低標(biāo)志著這個(gè)小的特征集合對(duì)于聚類結(jié)果是及其重要的。

        圖3b 展示了特征加強(qiáng)的結(jié)果。這個(gè)結(jié)果跟之前的測(cè)試是一致的:(1)通過(guò)加入一個(gè)小集合的特征,我們可以實(shí)現(xiàn)聚類結(jié)果的反轉(zhuǎn);(2)我們的方法顯著的優(yōu)于其他兩種方法。

        圖3c 展示了在特征生成實(shí)驗(yàn)中,LEMNA有同樣的優(yōu)勢(shì)。利用LEMNA挑選的重要特征,這些生成的樣本極有可能會(huì)被歸類成原始的標(biāo)簽。使用前五個(gè)最重要的特征,這些生成的樣本有85%~90%的概率會(huì)被歸類成原來(lái)的標(biāo)簽,標(biāo)志著核心的特征已經(jīng)被標(biāo)定。

        解釋結(jié)果的應(yīng)用

        下面介紹LEMNA解釋結(jié)果的應(yīng)用,我們通過(guò)case study來(lái)展示如何用解釋結(jié)果來(lái)幫助分類器建立可信度以及定位分類錯(cuò)誤的原因。

        1. 理解模型行為

        解釋方法的主要應(yīng)用是評(píng)估聚類器的可靠程度并且建立可信度。我們認(rèn)為聚類器的可靠度和可信度并不一定來(lái)自于高的聚類精度。相反的,可信度更可能通過(guò)理解模型行為來(lái)建立,這里從兩個(gè)關(guān)鍵的角度來(lái)觀測(cè)來(lái)評(píng)估聚類器的行為:一是抓取常見(jiàn)的原則;二是發(fā)現(xiàn)新的知識(shí)。

        一個(gè)可靠的聚類器應(yīng)該可以抓取應(yīng)用場(chǎng)景中常見(jiàn)的原則。比如,在二進(jìn)制代碼的逆向中,安全從業(yè)者已經(jīng)積累了一系列有效的原則來(lái)尋找函數(shù)開始位置,其中一些已經(jīng)被當(dāng)成了既定原則。當(dāng)ABI要求一個(gè)函數(shù)(如果使用棧幀指針的話)在開始的位置將父函數(shù)的棧幀指針?lè)诺綏I蠒r(shí),這就導(dǎo)致了最常見(jiàn)的prologue [push ebp;mov ebp, esp]。 通過(guò)分析解釋結(jié)果,我們發(fā)現(xiàn)了機(jī)器學(xué)習(xí)分類器成功地抓獲了這些眾所周知的原則。在表 2中,我們展示了幾個(gè)不同的具有代表性的例子。以Case-1為例。在這個(gè)例子中,這個(gè)聚類器正確檢測(cè)到了函數(shù)的開始位置“55”。LEMNA認(rèn)為那些高亮的特征(即55附近的字節(jié)碼)是聚類器做這個(gè)決策的原因。這個(gè)結(jié)果跟上面提到的原則(即 [push ebp; mov ebp,esp])是匹配的,說(shuō)明這個(gè)聚類器用一種合理的方式做出了決策。

        除了匹配常見(jiàn)的原則外,還檢測(cè)了一個(gè)聚類器是否學(xué)習(xí)到了新的知識(shí)。我們認(rèn)為,在安全應(yīng)用中,新的知識(shí)需要能被領(lǐng)域內(nèi)的專家理解。在二進(jìn)制分析中,很多潛在的有效原則對(duì)于特定函數(shù)是有效的,而且他們很難通過(guò)手工完全總結(jié)。比如,很多鏈接器插入的輔助函數(shù)通常有特殊的開始片段,而且這些片段基本不會(huì)在其他地方出現(xiàn) (比如,_start 函數(shù)通常從 [xor ebp, ebp;pop esi]開始)。通過(guò)手工總結(jié)這些規(guī)則是不現(xiàn)實(shí)的。但是,這些規(guī)則一旦被LEMNA發(fā)現(xiàn),就可以給安全專家提供有效的知識(shí)補(bǔ)充。如表2所示,我們分析LEMNA的解釋結(jié)果,并且發(fā)現(xiàn)這個(gè)聚類器的確學(xué)習(xí)到了新知識(shí)。以Case-5為例。在這個(gè)例子中,“31”被檢測(cè)為函數(shù)開始位置,因?yàn)楹罄m(xù)的字節(jié)( [ed 5e]. “[31 ed 5e])” 對(duì)應(yīng)著_start函數(shù)的開始位置 (即 [xor ebp, ebp; pop esi])。這個(gè)展示了我們的解釋方法可以幫助總結(jié)某些函數(shù)使用的特殊的prologues 。

        2. 解決聚類錯(cuò)誤

        雖然深度神經(jīng)網(wǎng)絡(luò)高度精確,但是它們?nèi)匀豢赡墚a(chǎn)生錯(cuò)誤。這些錯(cuò)誤不應(yīng)該被忽略,因?yàn)樗鼈兺ǔR馕吨?xùn)練不足并且這些不足可能在現(xiàn)實(shí)中會(huì)被放大。我們的解釋方法是嘗試尋找到錯(cuò)誤聚類的原因。希望通過(guò)找到這些原因,能夠啟發(fā)解決這些錯(cuò)誤的可行性方案。

        對(duì)于二進(jìn)制分析,這些聚類器不時(shí)會(huì)錯(cuò)過(guò)函數(shù)開始的位置。如表2所示(R.F.N),給定一個(gè)漏掉的函數(shù)開始位置,我們解釋“為什么這些位置沒(méi)有被標(biāo)記為開始位置”。

        具體而言,我們將對(duì)象(代碼序列,真實(shí)函數(shù)開始位置)輸入LEMNA,并且選擇那些導(dǎo)致函數(shù)沒(méi)有被識(shí)別的特征作為解釋。以Case-10為例,“[50 fd]” 對(duì)應(yīng)著“[jmp 0xfffffd50]”,被標(biāo)記為主要的聚類錯(cuò)誤原因。這條指令幾乎都出現(xiàn)在函數(shù)中間位置,導(dǎo)致聚類器認(rèn)為后面的31不是函數(shù)開始位置。Case-10是一個(gè)異常樣例,因?yàn)椤癧50 fd]”剛好出現(xiàn)在一個(gè)特殊區(qū)域.plt的末尾(后面緊跟著_start函數(shù))。

        表2 不同的示例

        表2也展示了聚類器錯(cuò)誤的選擇函數(shù)開始的例子。我們將對(duì)象(代碼序列,錯(cuò)誤的函數(shù)開始位置)輸入到LEMNA,并且解釋為什么這個(gè)錯(cuò)誤的位置會(huì)被選擇。比如說(shuō),在Case-13中,LEMNA標(biāo)定“c3”(對(duì)應(yīng)著“ret”指令)。通常來(lái)說(shuō),“ret”位于函數(shù)的結(jié)尾使得函數(shù)退出,也就意味著后面的“83”將是一個(gè)新函數(shù)的開始位置。但是,這個(gè)例子是特殊的,因?yàn)椤皉et”被放到函數(shù)中間來(lái)實(shí)現(xiàn)優(yōu)化。LEMNA展示了這些錯(cuò)誤大部分是由于這些重要的特征在絕大部分例子中是標(biāo)定函數(shù)開始位置的,因此LEMNA會(huì)犯這樣的錯(cuò)誤。

        結(jié)論

        我們?cè)O(shè)計(jì)了LEMNA—— 一種用于安全領(lǐng)域的深度學(xué)習(xí)模型,有著高精度,適用于單樣本聚類結(jié)果的解釋方法。LEMNA將目標(biāo)聚類器視為一個(gè)黑盒子然后通過(guò)一個(gè)Fused Lasso加強(qiáng)的混合回歸模型來(lái)擬合聚類器的決策邊界。通過(guò)對(duì)安全應(yīng)用的評(píng)估,展示了LEMNA有很高的解釋精度。同時(shí),還展示了機(jī)器學(xué)習(xí)開發(fā)者以及安全專家如何從LEMNA的結(jié)果來(lái)理解模型行為以及定位分類錯(cuò)誤。

        猜你喜歡
        特征
        抓住特征巧觀察
        離散型隨機(jī)變量的分布列與數(shù)字特征
        具有兩個(gè)P’維非線性不可約特征標(biāo)的非可解群
        月震特征及與地震的對(duì)比
        如何表達(dá)“特征”
        被k(2≤k≤16)整除的正整數(shù)的特征
        不忠誠(chéng)的四個(gè)特征
        詈語(yǔ)的文化蘊(yùn)含與現(xiàn)代特征
        新聞傳播(2018年11期)2018-08-29 08:15:24
        抓住特征巧觀察
        基于特征篩選的模型選擇
        亚洲国产精品美女久久久| 亚洲精品国精品久久99热| 国产精品美女一区二区视频| 97人人模人人爽人人喊电影| 欧美精品久久久久久久久| 国产日韩精品一区二区在线观看播放 | 欧美成人精品一区二区综合| 亚洲一区区| 亚洲人妻御姐中文字幕| 精品日本一区二区三区| 成人国产一区二区三区| 色狠狠色狠狠综合天天| 亚洲av男人的天堂在线观看| 麻豆国产乱人伦精品一区二区| 日产精品一区二区免费| 日本老熟女一区二区三区| 色综合天天综合网国产成人网| 国产精品99精品无码视亚| 国产一区二区三区四区五区vm| 国内精品九九久久精品小草| 被灌醉的日本人妻中文字幕| 激情综合丁香五月| 亚洲色无码播放| 亚洲VR永久无码一区| 美女免费观看一区二区三区| 精品高朝久久久久9999| 亚洲成av人影院| 亚洲激情成人| 久久91精品国产91久| 少妇激情高潮视频网站| 精品国产三级a∨在线| 午夜亚洲www湿好爽| 日本a在线看| 亚洲美女av二区在线观看| 成人自拍小视频在线看| 97精品国产97久久久久久免费 | 蜜桃网站入口可看18禁| 婷婷色婷婷开心五月四| 四虎影视在线影院在线观看| 一区二区在线亚洲av蜜桃| 亚洲熟女av在线观看|