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

        ?

        基于圖像矢量的惡意代碼分類模型*

        2018-12-19 01:55:40蔣永康鄒福泰
        通信技術(shù) 2018年12期
        關(guān)鍵詞:矢量化矢量指令

        蔣永康,吳 越,鄒福泰

        (上海交通大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院,上海 200240)

        0 引 言

        如今,隨著多態(tài)、變異和反分析技術(shù)的發(fā)展,惡意軟件在數(shù)量和質(zhì)量上都呈現(xiàn)爆發(fā)性增長(zhǎng)。文獻(xiàn)[1]提到,海量數(shù)據(jù)的惡意性檢測(cè)任務(wù)正逐漸成為當(dāng)下反病毒引擎的主要挑戰(zhàn)之一。文獻(xiàn)[2]表明,盡管攻擊者開(kāi)發(fā)移動(dòng)平臺(tái)惡意軟件的興趣與日俱增,但windows依然是被攻擊的主要平臺(tái)。2017年第一季度檢測(cè)到的4.8千萬(wàn)個(gè)惡意樣本中,來(lái)自windows平臺(tái)的占到77.2%。這表明傳統(tǒng)的基于特征匹配和行為分析的惡意代碼分析技術(shù)已經(jīng)很難滿足海量樣本的惡意檢測(cè)任務(wù)。如何實(shí)現(xiàn)大規(guī)模數(shù)據(jù)的高效分析,已經(jīng)成為惡意代碼研究的主要課題之一。

        因此,本文主要研究基于圖像矢量的惡意代碼分類模型在大規(guī)模PE(Portable Executable)格式惡意代碼分類任務(wù)中的應(yīng)用和效果。第1章介紹惡意代碼的矢量化技術(shù);第2章介紹構(gòu)建的深度學(xué)習(xí)模型;第3章給出模型在微軟數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果;第4章分析模型的意義,給出進(jìn)一步的研究方向。

        1 惡意代碼矢量化

        惡意代碼矢量化是一種將惡意代碼樣本映射為圖像矢量的編碼技術(shù)。惡意代碼矢量化的最終目標(biāo)是用一張全局唯一的圖像矢量來(lái)表征惡意代碼,從而將惡意代碼的檢測(cè)問(wèn)題轉(zhuǎn)化為圖像的分類問(wèn)題。惡意代碼矢量化的核心在于編碼源、編碼長(zhǎng)度和編碼量的選擇。

        1.1 Nataraj矢量化

        2011年,Nataraj[3]提出了基于二進(jìn)制文件的惡意代碼矢量化方法。Nataraj矢量化選擇惡意代碼二進(jìn)制文件作為編碼源,將8-bit二進(jìn)制映射為8-bit整型數(shù)值。通常來(lái)說(shuō),編碼量為整個(gè)PE文件或者PE文件中包含可執(zhí)行代碼的.text節(jié)。圖1為Nataraj矢量化的具體步驟。

        圖1 Nataraj矢量化編碼方法

        Nataraj矢量化是惡意代碼分析技術(shù)的一種新思路,打開(kāi)了基于圖像矢量的惡意代碼分析的大門。文獻(xiàn)[4-6]中構(gòu)建的惡意代碼分析模型都將Nataraj矢量化作為重要的輸入特征。然而,加殼和混淆技術(shù)能使惡意代碼的二進(jìn)制文件發(fā)生顯著變化,直接導(dǎo)致輸出的圖像矢量產(chǎn)生巨大差異,使得Nataraj矢量化面對(duì)加殼和混淆技術(shù)時(shí)魯棒性很差。同時(shí),文獻(xiàn)[4]也表明,在Nataraj矢量化下,不同惡意代碼家族的圖像矢量也有可能十分相似。因此,Nataraj矢量化對(duì)于攻擊者來(lái)說(shuō)十分脆弱。

        1.2 Andrew矢量化

        2015年的黑帽大會(huì)上,Andrew[7]提出了另一種基于反匯編文件的惡意代碼矢量化思路。Andrew矢量化選取反匯編十六進(jìn)制機(jī)器碼作為編碼源,將4-bit的十六進(jìn)制機(jī)器碼映射成4×8-bit的整數(shù)值,再進(jìn)行填充。如圖2所示,Andrew矢量化具有很好的視覺(jué)可解釋性,圖像矢量的每一行對(duì)應(yīng)一條機(jī)器碼。

        圖2 Andrew矢量化編碼方法

        Andrew矢量化不僅編碼了惡意代碼的機(jī)器碼信息,還通過(guò)填充保留了匯編指令的空間信息。因此,Andrew矢量化對(duì)于加殼和混淆技術(shù)具有較好的魯棒性。遺憾的是,Andrew并沒(méi)有給出詳細(xì)的分析和具體的深度學(xué)習(xí)模型。因此,本文將詳細(xì)闡述Andrew矢量化中編碼長(zhǎng)度、編碼量選擇問(wèn)題,并給出具體的深度學(xué)習(xí)模型。

        1.3 64-bit矢量填充

        Andrew矢量化中的一個(gè)關(guān)鍵問(wèn)題在于,為什么選擇64-bit矢量填充。

        一方面,如圖3所示的Intel 64和IA-32架構(gòu)指令編碼格式[8]規(guī)定指令的最大長(zhǎng)度為15 Bytes。更一般地,指令長(zhǎng)度不會(huì)超過(guò)11 Bytes。

        圖3 Intel 64和IA-32架構(gòu)指令格式

        另一方面,通過(guò)對(duì)微軟惡意代碼數(shù)據(jù)集(BIG2015)[9]的研究發(fā)現(xiàn),99%的惡意樣本的指令長(zhǎng)度都不超過(guò)64 bit,結(jié)果如圖4所示。

        圖4 BIG2015指令長(zhǎng)度累積概率分布

        因此,Andrew矢量化選擇64-bit矢量填充,以最大程度地保留惡意代碼的指令信息。

        1.4 編碼量的選擇

        為了加速矢量化過(guò)程和深度學(xué)習(xí)網(wǎng)絡(luò)的訓(xùn)練時(shí)間,需要在保證模型準(zhǔn)確率的前提下,選擇一個(gè)合適的、較小的編碼量。

        研究BIG2015時(shí)發(fā)現(xiàn),不同惡意代碼反匯編文件包含的指令數(shù)量差異很大,如圖5所示,51%的樣本包含的指令少于3 200條。結(jié)合深度學(xué)習(xí)中圖片大小的選擇經(jīng)驗(yàn),3 200是一個(gè)合理的編碼指令數(shù)量。

        圖5 BIG2015指令數(shù)量累積概率分布

        2 深度學(xué)習(xí)模型

        2014年,Kim[10]提出了一個(gè)適用于語(yǔ)句分類的單層卷積神經(jīng)網(wǎng)絡(luò)(CNN)架構(gòu)模型。受Kim研究的啟發(fā),本文提出了如圖6所示的基于圖像矢量的惡意代碼分類模型架構(gòu)。

        圖6 基于圖像矢量的惡意代碼分類模型架構(gòu)

        模型輸入矢量化的惡意代碼圖像,大小為(m,64),其中m代表編碼的指令數(shù)量。通道變換模塊輸出大小為的圖像矢量,其中k代表通道數(shù),是待確定的超參數(shù)。下面將以k=1為例,給出模型的詳細(xì)描述。

        首先,記Sj∈R64為64維圖像矢量,對(duì)應(yīng)m中的第j條指令,則惡意樣本Xi可以表示為:

        記每個(gè)卷積層的過(guò)濾器為fr∈Rhq,其中h、q表示過(guò)濾器的尺寸,每次卷積窗口移動(dòng)都將h條指令的q/64矢量映射成新的特征矢量。例如,記ci,t表示由指令Xi:i+h-1(t:t+q-1)經(jīng)過(guò)濾器移動(dòng)到位置t得到的新特征矢量,則:

        其中b∈R為偏置項(xiàng)參數(shù)。

        因此,當(dāng)一個(gè)行卷積操作完成時(shí),一個(gè)新的特征矢量便產(chǎn)生了:

        當(dāng)一層卷積的所有操作完成時(shí),便得到了一個(gè)新的圖像特征矢量:

        對(duì)c進(jìn)行批量歸一化(Batch Normalization)。批量歸一化允許深度學(xué)習(xí)模型使用較大的學(xué)習(xí)率進(jìn)行訓(xùn)練,能一定程度上抗過(guò)擬合,對(duì)于加速模型的訓(xùn)練具有顯著的意義[11]。mini-batch上的批量歸一化算法的詳細(xì)過(guò)程如下:

        輸入:每個(gè)mini-batch上的c值φ={c1…n}

        1:需要學(xué)習(xí)的參數(shù)γ,β

        輸出:ei=BNβ,γ(ci)

        5:縮放與位移ei←β ≡ BNβ,γ(ci)

        批量歸一化后,對(duì)得到的矢量進(jìn)行激活和最大值采樣,得到新的特征矢量:

        其中f為非線性函數(shù)。

        至此,已經(jīng)描述了模型中單個(gè)CNN模塊的特征提取過(guò)程。模型堆疊四個(gè)CNN模塊進(jìn)行抽象特征提取,因此全局最大采樣(Global Max Pooling)層的輸入為:

        其中g(shù)由具體的CNN模塊參數(shù)決定。為了進(jìn)一步降低模型輸出的特征向量維度,并同時(shí)保留重要特征,對(duì)整個(gè)CNN模塊輸出進(jìn)行全局最大采樣,輸出惡意代碼的抽象特征矢量=max{e}。

        其中yi表示惡意樣本屬于家族i的概率,n表示惡意樣本的家族數(shù)量。

        基于圖像矢量的惡意代碼分類模型利用上述方法對(duì)惡意代碼的指令矢量進(jìn)行層層變換,提取出高緯度抽象特征,從而實(shí)現(xiàn)惡意代碼的分類。

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

        3.1 數(shù)據(jù)集

        BIG2015數(shù)據(jù)集包含9個(gè)惡意家族的21 741個(gè)樣本,其中10 868個(gè)樣本為帶標(biāo)簽的訓(xùn)練集,其他為不帶標(biāo)簽的測(cè)試集。訓(xùn)練集中,每一個(gè)樣本包含一個(gè)20字符的哈希ID和一個(gè)整數(shù)值得家族標(biāo)簽,分別為 Ramnit(F1)、Lollipop(F2)、Kelihos ver3(F3)、Vundo(F4)、Simda(F5)、Tracur(F6)、Kelihos、ver1(F7)、Obfuscator.ACY(F8)和 Gatak(F9)。每個(gè)惡意樣本包含兩個(gè)文件,分別為十六進(jìn)制表示的、去除PE頭的二進(jìn)制文件和反匯編工具IDA生成的包含惡意樣本機(jī)器碼、匯編指令等的元數(shù)據(jù)文件。

        因?yàn)锽IG2015中只有訓(xùn)練集帶有標(biāo)簽,所以選取訓(xùn)練集中的惡意樣本作為模型驗(yàn)證的基準(zhǔn),其分布如圖7所示。

        圖7 BIG2015訓(xùn)練集樣本家族信息分布

        3.2 模型實(shí)現(xiàn)

        實(shí)驗(yàn)使用的平臺(tái)信息如表1所示,具體的模型參數(shù)見(jiàn)表2。

        表1 實(shí)驗(yàn)平臺(tái)信息

        表2 基于圖像矢量的惡意代碼分類模型參數(shù)

        3.3 評(píng)估標(biāo)準(zhǔn)

        模型使用交叉熵?fù)p失函數(shù),定義如下:

        其中M表示mini-batch的樣本數(shù)量,N表示惡意家族的數(shù)量。Y為樣本標(biāo)簽值,如果樣本i在家族j中,則Yij=1;反之,Yij=0。y為模型的預(yù)測(cè)輸出,yij代表樣本i在家族j中的概率。

        同時(shí),模型使用準(zhǔn)確率(accuracy)、精確率(precision)、召回率(recall)和f1_socre來(lái)進(jìn)行模型性能的評(píng)估,其定義如下。

        記S為數(shù)據(jù)集中的樣本數(shù)量,i表示S中的第i個(gè)樣本,y表示預(yù)測(cè)值,Y表示真是值,l(x)為指示函數(shù),則:

        其次,定義:

        記η為S的子集,則:

        綜上,accuracy反映模型分類正確的樣本占總樣本的比例;precision體現(xiàn)的是模型不將一個(gè)負(fù)樣本標(biāo)記為正原本的能力,recall反映的是模型找到所有正樣本的能力,f1_score是兩者的加權(quán)體現(xiàn)。

        3.4 結(jié)果與分析

        實(shí)驗(yàn)中,使用10-fold交叉驗(yàn)證方法對(duì)模型進(jìn)行評(píng)估,結(jié)果如表3所示。結(jié)果表明,基于Andrew圖像矢量的惡意代碼分類模型在BIG2015訓(xùn)練集上,能實(shí)現(xiàn)97.87%的準(zhǔn)確率和0.094的損失,其他詳細(xì)性能評(píng)價(jià)指標(biāo)詳見(jiàn)表3。平均來(lái)看,模型的訓(xùn)練時(shí)間為1.7 h,訓(xùn)練好的模型檢測(cè)1 024個(gè)樣本的時(shí)間為5.11 s。

        表3 BIG2015 10-fold交叉驗(yàn)證結(jié)果(k=1,m=3 200)

        與相關(guān)研究對(duì)比來(lái)看,如表4所示(預(yù)測(cè)時(shí)間為1 024個(gè)樣本的檢測(cè)時(shí)間),本文提出的基于圖像矢量的惡意代碼分類模型的準(zhǔn)確率只比文獻(xiàn)[12]和文獻(xiàn)[4]中模型的能達(dá)到的準(zhǔn)確率略低,主要原因在于后兩者都是基于復(fù)雜、耗時(shí)的特征提取和融合技術(shù)。因此,本文提出模型的預(yù)處理時(shí)間、訓(xùn)練時(shí)間和預(yù)測(cè)時(shí)間相較于文獻(xiàn)[12]和文獻(xiàn)[4]都是成倍減少的。同時(shí),相較于文獻(xiàn)[13-14]的方法,本文的模型在準(zhǔn)確率上也有明顯優(yōu)勢(shì)。

        表4 相關(guān)研究工作比較

        4 結(jié) 語(yǔ)

        本文主要研究了基于圖像矢量的惡意代碼分類模型在大規(guī)模PE(Portable Executable)格式惡意代碼分類任務(wù)中的應(yīng)用和效果,詳細(xì)闡述了Andrew矢量化技術(shù)的相關(guān)細(xì)節(jié),設(shè)計(jì)和訓(xùn)練了基于Andrew矢量化的惡意代碼分類的深度學(xué)習(xí)模型。模型在BIG2015數(shù)據(jù)集上的交叉驗(yàn)證結(jié)果表明,雖然模型的準(zhǔn)確率比冠軍模型(基于復(fù)雜特征提取和融合技術(shù))的準(zhǔn)確率略低,但是實(shí)現(xiàn)了顯著的性能提升。同時(shí),實(shí)驗(yàn)結(jié)果也表明,與其他相關(guān)研究相比,本文的模型在準(zhǔn)確率上優(yōu)勢(shì)明顯。

        綜上,基于圖像矢量的惡意代碼分類模型成功將惡意代碼的分類問(wèn)題轉(zhuǎn)化為圖片的分類問(wèn)題,且模型具有較好的理論魯棒性,對(duì)于大規(guī)模惡意代碼的分類任務(wù)具有實(shí)際意義。然而,Andrew矢量化使用了大量的無(wú)效填充,使得圖片矢量的編碼效率很低。因此,如何提高惡意代碼圖片矢量化的編碼效率是今后進(jìn)一步的研究方向。

        猜你喜歡
        矢量化矢量指令
        聽(tīng)我指令:大催眠術(shù)
        矢量三角形法的應(yīng)用
        ARINC661顯控指令快速驗(yàn)證方法
        LED照明產(chǎn)品歐盟ErP指令要求解讀
        基于矢量最優(yōu)估計(jì)的穩(wěn)健測(cè)向方法
        交互式矢量化技術(shù)在水文站網(wǎng)分布圖編繪中的應(yīng)用
        科技視界(2016年10期)2016-04-26 21:12:24
        三角形法則在動(dòng)態(tài)平衡問(wèn)題中的應(yīng)用
        基于VP Studio和CASS的柵格地形圖矢量化方法
        遙感圖像多尺度分割算法與矢量化算法的集成
        坐標(biāo)系旋轉(zhuǎn)指令數(shù)控編程應(yīng)用
        精品少妇后入一区二区三区| 人妻少妇精品专区性色av| 久久久国产精品麻豆| 四虎无码精品a∨在线观看| 男女深夜视频网站入口| 欧洲美女熟乱av| 欧美熟妇色ⅹxxx欧美妇| 色噜噜狠狠色综合中文字幕| 初尝黑人巨砲波多野结衣| 亚洲欧美日韩中文v在线| 天堂麻豆精品在线观看| 国产av精品一区二区三| 成人欧美一区二区三区| 亚洲午夜精品久久久久久人妖| 无码国产一区二区色欲| 日本一级二级三级不卡| 亚洲av无码国产精品永久一区| 亚洲av熟妇高潮30p| 成年人视频在线播放视频| av资源在线免费观看| 中文字幕人妻一区色偷久久| 国产让女高潮的av毛片| 久久精品欧美日韩精品| 国产精品偷伦视频免费手机播放| 女同久久精品国产99国产精| 一区二区三区美女免费视频 | 中文字幕爆乳julia女教师| 精品一二区| av免费资源在线观看| 美女网站免费福利视频| 国产精品熟女一区二区| 国产人成精品综合欧美成人| 亚洲乱码中文字幕综合| 日本人妻伦理在线播放| 乌克兰少妇xxxx做受野外| 国产成人久久蜜一区二区| 在线日韩中文字幕乱码视频| 无套无码孕妇啪啪| 国产老熟女狂叫对白| 久久无码中文字幕东京热| 久久久天堂国产精品女人|