国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于生成對(duì)抗網(wǎng)絡(luò)增強(qiáng)惡意代碼的方法

2021-11-20 01:56朱曉慧錢麗萍
關(guān)鍵詞:原始數(shù)據(jù)分類樣本

朱曉慧,錢麗萍,傅 偉

(1.北京建筑大學(xué) 電氣與信息工程學(xué)院,北京 100044;2.北京建筑大學(xué) 建筑大數(shù)據(jù)智能處理方法研究北京市重點(diǎn)實(shí)驗(yàn)室,北京 100044)

0 引 言

互聯(lián)網(wǎng)給信息交換與共享帶來極大便利的同時(shí),也為惡意代碼的廣泛傳播提供了有利環(huán)境[1]。因此探究有效防護(hù)的分類檢測(cè)方法成為近年來許多專家學(xué)者的關(guān)注熱點(diǎn),且迄今為止,已從多方面提出很多不同類型的分類檢測(cè)方法。其中較為新穎和重要的一類是以惡意代碼可視化圖像為研究對(duì)象提取特征,并結(jié)合機(jī)器學(xué)習(xí)或深度學(xué)習(xí)算法的分類檢測(cè)方法,文獻(xiàn)[2-6]均在該方向上有所研究。這些研究既很好解決了傳統(tǒng)分類檢測(cè)方法難以應(yīng)對(duì)反追蹤和代碼混淆策略的不足,又表明采用圖像處理方法具備有效性和可行性,為惡意代碼處理提供新視角。但隨著研究的深入,學(xué)術(shù)界公開可用的惡意代碼數(shù)據(jù)量不足且類別不均衡的問題越來越明顯,成為限制性能提升的關(guān)鍵問題之一,故亟需加強(qiáng)對(duì)惡意代碼數(shù)據(jù)增強(qiáng)技術(shù)的探究。

已有傳統(tǒng)惡意代碼增強(qiáng)技術(shù),如代碼復(fù)用或自動(dòng)化技術(shù)均能夠?qū)崿F(xiàn)惡意代碼數(shù)據(jù)生成,一定程度上實(shí)現(xiàn)數(shù)據(jù)集擴(kuò)增,但因其存在耗時(shí)費(fèi)力、缺乏多樣性以及實(shí)現(xiàn)難度較大等不足,已不能很好滿足如今對(duì)增強(qiáng)方法可操作性以及高性能的要求,所以結(jié)合新興技術(shù)探究高效可行的惡意代碼數(shù)據(jù)增強(qiáng)方法顯得更加重要。

因此,本文借鑒分類檢測(cè)中結(jié)合圖像的處理方式,提出一種基于惡意代碼圖像并結(jié)合生成對(duì)抗網(wǎng)絡(luò)的惡意代碼數(shù)據(jù)增強(qiáng)方法,緩解現(xiàn)存數(shù)據(jù)集規(guī)模小、類別不均衡問題,輔助提高分類器性能。主要貢獻(xiàn)如下:①將圖像處理技術(shù)應(yīng)用于惡意代碼數(shù)據(jù)增強(qiáng),一方面創(chuàng)新性地采用有別于直接增強(qiáng)惡意代碼可執(zhí)行文件的方法,既克服了文本增強(qiáng)難操作、特征復(fù)雜難以學(xué)習(xí)以及生成樣本缺乏多樣性等問題,使特征保留更加完整直觀,又為惡意代碼增強(qiáng)方法提供新思路;另一方面能夠迎合目前以惡意代碼圖像為對(duì)象的分類檢測(cè)方法,使其有更好的應(yīng)用。②將轉(zhuǎn)換后圖像經(jīng)由縮放操作表示,解決惡意代碼文件長(zhǎng)度不一情況下全部隱含特征的高概率保持問題,使其后續(xù)作為輸入數(shù)據(jù)可操作,更有利于發(fā)揮生成對(duì)抗網(wǎng)絡(luò)性能。③引入生成對(duì)抗網(wǎng)絡(luò)模型架構(gòu),使用Wasserstein距離代替JS散度描述模型生成樣本與真實(shí)樣本之間的分布距離,并使用梯度懲罰項(xiàng)解決惡意代碼圖像訓(xùn)練過程中參數(shù)極端和梯度消失問題,構(gòu)建較穩(wěn)定的WGAN-GP模型。④結(jié)合圖像質(zhì)量評(píng)價(jià)指標(biāo)SSIM和多種基礎(chǔ)分類器準(zhǔn)確率對(duì)惡意代碼生成數(shù)據(jù)相似性及有效性進(jìn)行綜合評(píng)估。

1 相關(guān)工作

基于機(jī)器學(xué)習(xí)或深度學(xué)習(xí)的檢測(cè)算法大多為數(shù)據(jù)驅(qū)動(dòng),故在已有惡意代碼數(shù)據(jù)不滿足需求的情況下,需要采用一些數(shù)據(jù)增強(qiáng)技術(shù)擴(kuò)增數(shù)據(jù)集,提高網(wǎng)絡(luò)模型性能,緩解過擬合問題。本節(jié)從傳統(tǒng)惡意代碼生成技術(shù)和基于生成對(duì)抗網(wǎng)絡(luò)生成技術(shù)兩方面介紹研究狀況。

傳統(tǒng)惡意代碼生成技術(shù)主要包括代碼復(fù)用和自動(dòng)化生成,其中代碼復(fù)用技術(shù)通過人工拷貝或修改源代碼的方式重新編譯生成新的不同執(zhí)行體,這些執(zhí)行體中保留個(gè)體大部分公用代碼和復(fù)用歷史,具有相似的功能特征但外形相差甚大。文獻(xiàn)[7]中提到惡意代碼具有復(fù)用性,采用代碼復(fù)用技術(shù)可以在不修改或稍許改動(dòng)已有惡意代碼的基礎(chǔ)上生成新的惡意代碼行為。

然而代碼復(fù)用技術(shù)主要依賴人工操作,費(fèi)時(shí)費(fèi)力且結(jié)構(gòu)單一,已經(jīng)逐漸為惡意代碼制造者摒棄。而自動(dòng)化生成技術(shù)是通過自動(dòng)化生產(chǎn)引擎生成組合惡意代碼,較于代碼復(fù)用技術(shù)更具隨機(jī)性和多樣性,目前加密、多態(tài)和變形都是較為成熟的自動(dòng)化生產(chǎn)引擎技術(shù)。文獻(xiàn)[8,9]中均涉及對(duì)運(yùn)用多態(tài)、變形等技術(shù)手段生成各種攻擊行為相近惡意代碼的描述。這些技術(shù)已相對(duì)成熟,但還是存在生成數(shù)據(jù)模塊較固定且實(shí)現(xiàn)難度較大等問題。故上述兩種傳統(tǒng)生成技術(shù)均難以應(yīng)對(duì)機(jī)器學(xué)習(xí)或深度學(xué)習(xí)檢測(cè)方法對(duì)數(shù)據(jù)質(zhì)量和數(shù)量提出的更高要求。

而隨著深度學(xué)習(xí)技術(shù)的發(fā)展,具有強(qiáng)大學(xué)習(xí)和生成能力的生成對(duì)抗網(wǎng)絡(luò)(GAN)[10]已成為惡意代碼數(shù)據(jù)集增強(qiáng)的新選擇。Hu Wei等提出一種基于生成對(duì)抗網(wǎng)絡(luò)的算法-MalGAN,用來生成對(duì)抗惡意軟件示例,由其生成的示例樣本能夠成功繞過基于黑盒機(jī)器學(xué)習(xí)的檢測(cè)模型[11]。Hu Wei等針對(duì)基于機(jī)器學(xué)習(xí)的惡意軟件檢測(cè)算法在對(duì)抗性示例攻擊下很脆弱問題提出一種新穎的生成算法,能夠生成順序?qū)剐允纠齕12]。Kim等為檢測(cè)帶有混淆的惡意軟件,提出一種潛在語義控制生成對(duì)抗網(wǎng)絡(luò)(LSC-GAN)方法[13]。Burks等采用生成對(duì)抗網(wǎng)絡(luò)擴(kuò)增惡意軟件數(shù)據(jù),并討論其優(yōu)劣之處[14]。曹啟云等采用生成對(duì)抗網(wǎng)絡(luò)生成惡意JavaScript代碼樣本,增強(qiáng)數(shù)據(jù)集[15]?;贕AN的新方法均取得較好效果,值得進(jìn)一步探究。

綜上所述,人們對(duì)惡意代碼數(shù)據(jù)集增強(qiáng)的工作一直沒有停歇,不斷結(jié)合新興技術(shù)提高數(shù)據(jù)質(zhì)量與操作可行性。生成對(duì)抗網(wǎng)絡(luò)的引入很好彌補(bǔ)了傳統(tǒng)惡意代碼增強(qiáng)方法在實(shí)現(xiàn)簡(jiǎn)易度以及生成樣本質(zhì)量上的不足,更好實(shí)現(xiàn)了惡意代碼增強(qiáng)。然而已有相關(guān)研究大多從惡意代碼對(duì)抗樣本角度或代碼文本角度出發(fā)生成惡意代碼數(shù)據(jù),沒能充分發(fā)揮生成對(duì)抗網(wǎng)絡(luò)模型處理連續(xù)型數(shù)據(jù)的優(yōu)勢(shì),且最終僅采用在分類檢測(cè)中的應(yīng)用作為驗(yàn)證方法有效性的評(píng)估指標(biāo)。而本文將加強(qiáng)對(duì)使用生成對(duì)抗網(wǎng)絡(luò)模型增強(qiáng)惡意代碼數(shù)據(jù)的研究,重視惡意代碼數(shù)據(jù)本身重要性,結(jié)合圖像處理方法突破生成對(duì)抗網(wǎng)絡(luò)處理惡意代碼離散數(shù)據(jù)的局限,自動(dòng)化生成新數(shù)據(jù)擴(kuò)充數(shù)據(jù)集,并采用圖像評(píng)估指標(biāo)及分類檢測(cè)應(yīng)用進(jìn)行綜合驗(yàn)證。

2 基于生成對(duì)抗網(wǎng)絡(luò)的惡意代碼生成

2.1 數(shù)據(jù)表示

本節(jié)從惡意代碼文件可視化及惡意代碼圖像處理兩方面闡述對(duì)樣本數(shù)據(jù)進(jìn)行的有效表示:

(1)惡意代碼文件可視化

對(duì)惡意代碼可視化方法的研究,國(guó)內(nèi)外都已取得一定成果,可將其分為直接轉(zhuǎn)化法和操作碼轉(zhuǎn)化法兩類。其中直接轉(zhuǎn)化法以HAN等提出的基于Nataraj方法將惡意軟件可執(zhí)行文件轉(zhuǎn)換成對(duì)應(yīng)的灰度紋理圖方法為代表[16],這類方法主要是由惡意代碼PE文件二進(jìn)制碼直接轉(zhuǎn)化生成灰度或彩色圖像;而操作碼轉(zhuǎn)換法則以Andrew等提出的基于反匯編文件進(jìn)行矢量化的方法為代表[17],該類方法側(cè)重于對(duì)惡意代碼文件操作碼的選取轉(zhuǎn)換。目前,這兩種轉(zhuǎn)換方法在對(duì)BIG2015數(shù)據(jù)集的研究中均有涉及,文獻(xiàn)[5,6]以及Kaggle競(jìng)賽冠軍均采用操作碼轉(zhuǎn)化法選取不同操作碼進(jìn)行圖像轉(zhuǎn)化,而文獻(xiàn)[3]中則采用直接轉(zhuǎn)換法進(jìn)行可視化操作,都取得了理想的效果。本文鑒于對(duì)可視化操作可行性以及各類別轉(zhuǎn)換后特征表現(xiàn)度和差異度的綜合考慮,最終選擇.bytes文件作為研究對(duì)象,采用直接轉(zhuǎn)化法將其轉(zhuǎn)化為惡意代碼圖像,具體步驟為:首先將.bytes文件中存放的十六進(jìn)制代碼(一次為兩個(gè)代碼的集合)轉(zhuǎn)換為一組十進(jìn)制代碼,當(dāng)遇到不規(guī)則符號(hào)如“??”時(shí)統(tǒng)一分配一個(gè)十進(jìn)制數(shù)-1,然后將所得十進(jìn)制數(shù)以固定寬度組成二維數(shù)組,最后對(duì)應(yīng)像素值轉(zhuǎn)換為灰度圖像。

(2)惡意代碼圖像處理

不同惡意代碼樣本文件結(jié)構(gòu)、功能的差異性導(dǎo)致其大小不一,故在將其完整轉(zhuǎn)化為惡意代碼圖像后的尺寸也有所不同。本文為了兼顧惡意代碼內(nèi)容相對(duì)完整性,使其后續(xù)作為生成對(duì)抗網(wǎng)絡(luò)輸入可操作、有意義,并且減少計(jì)算量,將圖片尺寸調(diào)整統(tǒng)一為64*64大小。以第一、第八家族惡意代碼為例,最終生成灰度圖像分別如圖1、圖2所示;并在實(shí)驗(yàn)輸入時(shí)通過歸一化操作,將圖像像素值由[0,255]限定在[-1,1],促進(jìn)在后續(xù)實(shí)驗(yàn)過程中網(wǎng)絡(luò)結(jié)構(gòu)對(duì)數(shù)據(jù)的處理,加快收斂速度和反向傳播。

圖1 第一類(Ramnit)惡意代碼灰度

圖2 第八類(Obfuscator.ACY)惡意代碼灰度

易觀察發(fā)現(xiàn),同一家族的惡意代碼圖像在紋理、色澤及結(jié)構(gòu)等特征方面具有明顯的相似之處,而不同家族之間存在顯著的差別。

2.2 基于GAN的惡意代碼數(shù)據(jù)增強(qiáng)

2.2.1 網(wǎng)絡(luò)結(jié)構(gòu)及參數(shù)選擇

生成對(duì)抗網(wǎng)絡(luò)(GAN)是由Ian Goodfellow等提出,是一種無監(jiān)督學(xué)習(xí)的生成式模型[10]。GAN思想的誕生啟發(fā)于博弈論中的二人零和博弈,通過兩個(gè)參與者的對(duì)抗互相提升,所以相較于自動(dòng)編碼器和變分自編碼器等傳統(tǒng)的生成模型,GAN中包含兩個(gè)網(wǎng)絡(luò),其一是生成網(wǎng)絡(luò)G,另一個(gè)是判別網(wǎng)絡(luò)D,網(wǎng)絡(luò)模型結(jié)構(gòu)如圖3所示。

圖3 生成對(duì)抗網(wǎng)絡(luò)模型

然而傳統(tǒng)GAN在實(shí)際應(yīng)用中存在網(wǎng)絡(luò)難訓(xùn)練、梯度不穩(wěn)定以及訓(xùn)練進(jìn)度無衡量指標(biāo)等問題,因此本文采用其改進(jìn)衍生的WGAN-GP模型來訓(xùn)練生成,對(duì)該模型生成網(wǎng)絡(luò)與判別網(wǎng)絡(luò)均選用深度卷積網(wǎng)絡(luò),充分學(xué)習(xí)惡意代碼圖像特征。

其中生成網(wǎng)絡(luò)由輸入層、隱含層和輸出層組成,模型結(jié)構(gòu)如圖4所示。該網(wǎng)絡(luò)以符合正太分布、維度為100的隨機(jī)噪聲為輸入,通過全連接和reshape等操作后送入隱含層;考慮惡意代碼圖像為灰度形式,且經(jīng)處理后尺寸較小,故為避免因卷積架構(gòu)過大而導(dǎo)致擬合困難、生成質(zhì)量差等問題,在隱含層僅設(shè)置4個(gè)轉(zhuǎn)置卷積層,使隨機(jī)噪聲經(jīng)過轉(zhuǎn)置卷積層進(jìn)行空間上采樣,實(shí)現(xiàn)輸入數(shù)據(jù)通道數(shù)減半而圖像尺寸加倍,又為兼顧惡意代碼特征基本覆蓋和降低計(jì)算難度,將每層卷積核大小設(shè)為5*5,步幅為2,同時(shí)為解決梯度消失問題,并加快模型收斂,在隱含層(除最后一層轉(zhuǎn)置卷積層)中均使用ReLU作為激活函數(shù),并加入Batch Normalization層進(jìn)行批標(biāo)準(zhǔn)化處理;最后由于惡意代碼數(shù)據(jù)經(jīng)處理后取值范圍在[-1,1],故輸出層采用Tanh激活函數(shù)進(jìn)行激活返回。

圖4 生成模型網(wǎng)絡(luò)結(jié)構(gòu)

判別網(wǎng)絡(luò)同樣由輸入層、隱含層和輸出層組成,如圖5所示。與生成網(wǎng)絡(luò)輸入不同,判別網(wǎng)絡(luò)的輸入來源包括兩部分:其一是真實(shí)惡意代碼圖像樣本,其二則是由生成器生成的假樣本,尺寸均為64*64*1;而為充分提取惡意代碼圖像中的復(fù)雜特征,故采用4個(gè)卷積層構(gòu)建隱含層,又考慮對(duì)惡意代碼數(shù)據(jù)的利用率及計(jì)算頻次故將卷積核選取與生成網(wǎng)絡(luò)相同的5*5大小,步幅均為2,又為在卷積降維操作中避免惡意代碼數(shù)據(jù)信息丟失而使用Leaky RELU激活函數(shù)激活,并在除第一層卷積層外其它隱含層中添加Layer Normalization進(jìn)行處理;最后為達(dá)擬合真實(shí)與生成惡意代碼數(shù)據(jù)分布之間距離的目的,在輸出層不使用sigmoid函數(shù)激活,而通過全連接層直接將結(jié)果返回。

圖5 判別模型網(wǎng)絡(luò)結(jié)構(gòu)

并使用wassertein距離取代傳統(tǒng)GAN中JS散度衡量生成數(shù)據(jù)分布和真實(shí)數(shù)據(jù)分布之間的距離,解決傳統(tǒng)GAN因無重疊概率分布情況下概率無法衡量問題,使訓(xùn)練過程更加穩(wěn)定;還通過在目標(biāo)函數(shù)中增加懲罰梯度來實(shí)現(xiàn)對(duì)Lipschitz系數(shù)的限制,由此避免參數(shù)極端和梯度消失或爆炸問題。使判別器優(yōu)化目標(biāo)由真實(shí)惡意代碼數(shù)據(jù)和生成偽惡意代碼數(shù)據(jù)的原始誤差式(1)以及懲罰梯度項(xiàng)損失式(2)兩部分組成,最終損失函數(shù)如式(3)所示

(1)

(2)

L(D)=Lorigin_loss+Lgp

(3)

而生成器采用式(4)作為損失函數(shù)

(4)

2.2.2 模型訓(xùn)練

在對(duì)惡意代碼數(shù)據(jù)集經(jīng)過圖像處理之后,開始模型訓(xùn)練。為保證訓(xùn)練過程中判別器性能優(yōu)于當(dāng)前生成器生成能力,能夠指導(dǎo)生成器朝更好的方向?qū)W習(xí),故本文借鑒大多實(shí)驗(yàn)中采用的訓(xùn)練次數(shù)比,設(shè)置每更新5次判別網(wǎng)絡(luò)后更新1次生成網(wǎng)絡(luò);將學(xué)習(xí)率初始值設(shè)為較小的0.0002,且為避免學(xué)習(xí)率過大無法收斂,過小訓(xùn)練太慢等問題采用指數(shù)衰減學(xué)習(xí)率,適時(shí)調(diào)整學(xué)習(xí)率配合訓(xùn)練。具體訓(xùn)練過程如下:

(1)隨機(jī)生成符合正態(tài)分布的噪聲z,并由生成器得到生成惡意代碼圖像Pg;

//訓(xùn)練判別器

(3)將真實(shí)惡意代碼圖像和生成惡意代碼圖像輸入判別器分別計(jì)算誤差,并如式(1)所示求得原始誤差損失Lorigin_loss,再由懲罰項(xiàng)采集樣本按式(2)計(jì)算懲罰梯度損失Lgp;

(4)計(jì)算得式(3)所示判別器誤差L(D);

(5)固定生成器參數(shù),依據(jù)式(3)所示誤差公式,采用Adam優(yōu)化器更新判別器參數(shù);

(6)判別器每更新5次,執(zhí)行以下步驟;

//訓(xùn)練生成器

(7)執(zhí)行步驟(1),并從生成的惡意代碼樣本Pg中采樣送入判別器;

(8)依據(jù)式(4)計(jì)算生成器對(duì)應(yīng)誤差損失L(G);

(9)固定判別器參數(shù),采用Adam優(yōu)化器更新生成器參數(shù)。

不斷迭代兩個(gè)過程,當(dāng)判別器和生成器均收斂,達(dá)到納什平衡時(shí)結(jié)束訓(xùn)練。訓(xùn)練完成后,只需要將訓(xùn)練完善的生成器提取出來就可以作為惡意代碼數(shù)據(jù)集擴(kuò)增的工具,通過給予其大量的隨機(jī)噪聲就能夠獲取足夠多的惡意代碼數(shù)據(jù)樣本,從而解決數(shù)據(jù)集數(shù)量缺乏及不均衡問題。

2.3 數(shù)據(jù)質(zhì)量評(píng)估

鑒于本研究最終為了生成與真實(shí)數(shù)據(jù)分布相似的新數(shù)據(jù),因此對(duì)其生成質(zhì)量和相似度的衡量指標(biāo)也成為值得研究的問題。本文將從兩方面對(duì)生成數(shù)據(jù)進(jìn)行評(píng)價(jià):其一、采用圖像生成數(shù)據(jù)評(píng)價(jià)指標(biāo),由理論公式計(jì)算相應(yīng)分?jǐn)?shù)來評(píng)估生成質(zhì)量與相似度;其二、將生成數(shù)據(jù)添加至原始數(shù)據(jù)用于分類檢測(cè),通過比較分類檢測(cè)準(zhǔn)確度衡量生成有效性。以下分別對(duì)兩個(gè)方面進(jìn)行闡釋。

(1)本文采用生成對(duì)抗網(wǎng)絡(luò)將惡意代碼數(shù)據(jù)以惡意代碼圖像形式生成新的圖像樣本,則可以采用圖像評(píng)估的指標(biāo)評(píng)價(jià)生成樣本質(zhì)量以及與原始樣本的相似度,故選擇灰度圖像評(píng)價(jià)常用指標(biāo)之一——結(jié)構(gòu)相似性(SSIM)來驗(yàn)證生成數(shù)據(jù)質(zhì)量。

結(jié)構(gòu)相似性(SSIM)是一種符合人類直覺的圖像質(zhì)量評(píng)價(jià)標(biāo)準(zhǔn),從圖像亮度、對(duì)比度以及結(jié)構(gòu)三方面進(jìn)行比較計(jì)算。該指標(biāo)數(shù)值范圍在[0,1],數(shù)值越高說明生成圖像質(zhì)量越好,與原始數(shù)據(jù)結(jié)構(gòu)越相似。具體計(jì)算如式(5)所示

(5)

其中,x為原始惡意代碼圖像,y為本文模型生成結(jié)果,μx和μy分別代表x,y的平均值,σx和σy分別代表x,y的標(biāo)準(zhǔn)差,σxy代表x,y的協(xié)方差,c1、c2均為常數(shù)。

(2)對(duì)于數(shù)據(jù)增強(qiáng)研究的重要目的之一是生成數(shù)據(jù)能夠有效應(yīng)用,通常會(huì)將生成數(shù)據(jù)樣本進(jìn)行分類檢測(cè)實(shí)驗(yàn)驗(yàn)證,透過分類檢測(cè)準(zhǔn)確率來反映增強(qiáng)數(shù)據(jù)在實(shí)踐中的意義。因此,分類準(zhǔn)確率也成為最終評(píng)價(jià)度量的標(biāo)準(zhǔn)之一。本文將采用決策樹、KNN以及隨機(jī)森林3種分類算法進(jìn)行分類準(zhǔn)確率驗(yàn)證,分析比較增強(qiáng)效果。

3 實(shí) 驗(yàn)

3.1 實(shí)驗(yàn)數(shù)據(jù)集

目前對(duì)于惡意代碼數(shù)據(jù)集,開源的Kaggle平臺(tái)成為重要的獲取途徑之一,由其提供的數(shù)據(jù)集內(nèi)容全面且信服力高。本實(shí)驗(yàn)選取由微軟在Kaggle平臺(tái)上發(fā)起的惡意代碼分類比賽所提供的數(shù)據(jù)集BIG2015[18],其主要包含表1所示的4部分文件。

表1 數(shù)據(jù)集所包含文件

訓(xùn)練和測(cè)試樣本庫中所使用的9類惡意代碼家族為:Ramnit、Lollipop、Kelihos_ver3、Vundo、Simda、Tracur、Kelihos_ver1、Obfuscator.ACY、Gatak。在訓(xùn)練集中每個(gè)惡意代碼文件都有一個(gè)唯一標(biāo)識(shí)該文件的20字符哈希值ID和一個(gè)Class(類別),其中Class標(biāo)記為1-9分別對(duì)應(yīng)上述9種類別,且每個(gè)惡意代碼均對(duì)應(yīng)一個(gè)十六進(jìn)制表示的.bytes文件和一個(gè)利用IDA反匯編工具生成的.asm文件。各類別數(shù)據(jù)數(shù)量情況見表2。

表2 數(shù)據(jù)集9類家族介紹

3.2 實(shí)驗(yàn)環(huán)境

本文中的實(shí)驗(yàn)環(huán)境主要包括實(shí)驗(yàn)平臺(tái)和環(huán)境配置,具體信息見表3。

表3 實(shí)驗(yàn)平臺(tái)及配置

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

本文對(duì)所提生成對(duì)抗網(wǎng)絡(luò)模型依據(jù)上述進(jìn)行實(shí)驗(yàn),并采用2.3章節(jié)的評(píng)價(jià)指標(biāo)進(jìn)行客觀分析,驗(yàn)證有效性。

3.3.1 模型有效性驗(yàn)證-生成數(shù)據(jù)與原始數(shù)據(jù)結(jié)構(gòu)相似性對(duì)比

為顯示本文所用方法的有效性及優(yōu)勢(shì),本節(jié)中將使用已在圖像生成領(lǐng)域應(yīng)用廣泛且生成、判別網(wǎng)絡(luò)架構(gòu)與本文模型相似的深度卷積生成對(duì)抗網(wǎng)絡(luò)(DCGAN),同樣訓(xùn)練生成一定規(guī)模的各類別惡意代碼數(shù)據(jù)樣本[19],并計(jì)算對(duì)應(yīng)SSIM值與本文方法作比較。結(jié)果見表4。

表4 各類別SSIM值

由表4可得以下折線圖6,更加直觀比較兩種模型生成各類別數(shù)據(jù)與原始數(shù)據(jù)結(jié)構(gòu)相似性的實(shí)驗(yàn)效果。

圖6 各類數(shù)據(jù)SSIM值

其中橫軸表示惡意代碼數(shù)據(jù)類別,縱軸為各類別與真實(shí)數(shù)據(jù)之間的SSIM值。由圖表可知:兩種模型在大多數(shù)類別惡意代碼數(shù)據(jù)生成中都有較好表現(xiàn),與原始數(shù)據(jù)的結(jié)構(gòu)相似性值都較高,這表明采用生成對(duì)抗網(wǎng)絡(luò)學(xué)習(xí)生成惡意代碼的方法切實(shí)可行。而與本文模型相比DCGAN模型所得曲線波動(dòng)較大,不夠平穩(wěn),對(duì)于個(gè)別類型惡意代碼生成效果較差,雖有部分?jǐn)?shù)值高于本文模型,但二者數(shù)值也相差甚微。由此體現(xiàn)本文模型性能更加穩(wěn)定,能夠更好處理各類別惡意代碼數(shù)據(jù)特點(diǎn)。所以總體來說,本文所用模型效果優(yōu)于DCGAN模型,是一種相對(duì)較好的惡意代碼數(shù)據(jù)生成模型。

3.3.2 模型有效性驗(yàn)證-生成數(shù)據(jù)在分類中的應(yīng)用對(duì)比

為從分類結(jié)果角度進(jìn)一步驗(yàn)證本文數(shù)據(jù)增強(qiáng)方法的有效性,本節(jié)中以提取的灰度圖像矩陣為特征,采用決策樹、KNN以及隨機(jī)森林等傳統(tǒng)機(jī)器學(xué)習(xí)分類方法,分別在小規(guī)模均衡原始數(shù)據(jù)集與生成數(shù)據(jù)集、小規(guī)模不均衡原始數(shù)據(jù)集與增強(qiáng)數(shù)據(jù)集以及大規(guī)模原始數(shù)據(jù)集與增強(qiáng)數(shù)據(jù)集中進(jìn)行分類驗(yàn)證和分析。并且為避免按一定比例劃分?jǐn)?shù)據(jù)集而受不同數(shù)據(jù)分布影響導(dǎo)致分類結(jié)果存在不確定性問題,提高最終結(jié)果穩(wěn)定性和說服力,以下分類結(jié)果均是采用十折交叉驗(yàn)證方法計(jì)算而來。

首先對(duì)小規(guī)模均衡原始數(shù)據(jù)集和生成數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)比較,即選取各類均衡且數(shù)量相同的原始數(shù)據(jù)和生成數(shù)據(jù),采用3種機(jī)器學(xué)習(xí)分類算法進(jìn)行分類。分類結(jié)果見表5。

表5 各分類算法實(shí)驗(yàn)結(jié)果(識(shí)別率/%)

由表5中數(shù)據(jù)可得:通過提取灰度圖像矩陣后對(duì)惡意代碼數(shù)據(jù)進(jìn)行分類,在兩個(gè)數(shù)據(jù)集中均能取得一定的識(shí)別率,故選用的分類特征具備有效性,且采用隨機(jī)森林方法的表現(xiàn)相較于其它兩種機(jī)器學(xué)習(xí)方法最優(yōu)。此外,生成數(shù)據(jù)集采用3種機(jī)器學(xué)習(xí)分類方法取得的總體分類準(zhǔn)確率在原始數(shù)據(jù)結(jié)果基準(zhǔn)范圍之內(nèi),且略高于其結(jié)果,這表明由生成對(duì)抗網(wǎng)絡(luò)生成的新樣本有效學(xué)習(xí)到了各類別數(shù)據(jù)特征,且不僅能夠具有原始數(shù)據(jù)基本結(jié)構(gòu),還使得分類特征更加鮮明突出,具備較強(qiáng)的區(qū)分性。從而說明生成數(shù)據(jù)真實(shí)有效,可以用于原始數(shù)據(jù)增強(qiáng)。

以分類效果較優(yōu)的隨機(jī)森林分類器為例,表6詳細(xì)記錄了其對(duì)各類別數(shù)據(jù)的分類結(jié)果。

由表6可知,原始數(shù)據(jù)集均衡情況下對(duì)各類別的分類結(jié)果也較為均衡,生成數(shù)據(jù)集在各類別分類精確度、召回率和F1值上的表現(xiàn)都符合原數(shù)據(jù)集的分布情況,結(jié)果表明生成的各類數(shù)據(jù)特征與原數(shù)據(jù)特征分布都較為相似,可以很好的將各類區(qū)分開來。

表6 隨機(jī)森林對(duì)各類別數(shù)據(jù)分類結(jié)果/%

上述分類驗(yàn)證所選用數(shù)據(jù)集通過選取使各類別數(shù)量相同,旨在驗(yàn)證各類生成數(shù)據(jù)能夠具備原始數(shù)據(jù)特征。下面從數(shù)據(jù)不均衡角度出發(fā),驗(yàn)證本文生成樣本能夠有效緩解該問題。以下實(shí)驗(yàn)對(duì)小規(guī)模不均衡原始數(shù)據(jù)集和增強(qiáng)數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),即選取10%原始不均衡數(shù)據(jù)集以及添加本文方法新生成數(shù)據(jù)后的較均衡數(shù)據(jù)集,采用上述特征提取方法提取相同特征后分別在分類器中進(jìn)行實(shí)驗(yàn)。表7展示了兩個(gè)數(shù)據(jù)集各類別惡意代碼樣本的數(shù)據(jù)量。

表7 惡意代碼訓(xùn)練集數(shù)據(jù)量

由表7可以發(fā)現(xiàn)原始數(shù)據(jù)集存在嚴(yán)重的數(shù)據(jù)不平衡現(xiàn)象,有些類別數(shù)據(jù)數(shù)量特別少如第五類和第七類惡意代碼數(shù)據(jù),而在使用本文方法生成數(shù)據(jù)一定的擴(kuò)充下,各類別數(shù)據(jù)相對(duì)均衡。而采用不同分類器的具體分類結(jié)果見表8。

表8 各分類算法實(shí)驗(yàn)結(jié)果(識(shí)別率/%)

由表8可得:3種分類方法中隨機(jī)森林表現(xiàn)最好,而當(dāng)加入生成數(shù)據(jù)增大訓(xùn)練數(shù)量后,對(duì)3種分類方法的總體識(shí)別率均有不同程度的提升,結(jié)果表明采用本文增強(qiáng)數(shù)據(jù)集方法對(duì)于分類器性能的改善有一定的積極作用。

同樣以隨機(jī)森林為例,表9展示了各類別數(shù)據(jù)增強(qiáng)前后的分類結(jié)果,由此可以看出在原始數(shù)據(jù)集中數(shù)量較少的類別識(shí)別率都較小,受不均衡影響較為嚴(yán)重,而對(duì)其進(jìn)行增強(qiáng)后各類別的識(shí)別率都有改變,其中在數(shù)據(jù)量較少的第四類和第五類等惡意代碼數(shù)據(jù)上表現(xiàn)顯著。從而可以驗(yàn)證本文方法生成數(shù)據(jù)具備有效性,能夠在一定程度上緩解數(shù)據(jù)量少和不均衡等問題,用于輔助分類器訓(xùn)練。

表9 隨機(jī)森林對(duì)各類別數(shù)據(jù)分類結(jié)果/%

最后對(duì)大規(guī)模不均衡原始數(shù)據(jù)集和增強(qiáng)后較均衡數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),即采用原始數(shù)據(jù)集中全部訓(xùn)練數(shù)據(jù)和添加生成數(shù)據(jù)后的較均衡數(shù)據(jù)集,利用3種分類方法分類。兩個(gè)數(shù)據(jù)集各類別惡意代碼樣本的數(shù)據(jù)量和具體分類結(jié)果分別見表10、表11。

表10 惡意代碼訓(xùn)練集數(shù)據(jù)量

表11 各分類算法實(shí)驗(yàn)結(jié)果(識(shí)別率/%)

由表11可發(fā)現(xiàn):當(dāng)數(shù)據(jù)量顯著增多后,采用決策樹、KNN和隨機(jī)森林的分類準(zhǔn)確率也都明顯提升,說明數(shù)據(jù)量對(duì)識(shí)別率存在較大影響,而在有針對(duì)性的添加生成數(shù)據(jù),擴(kuò)增數(shù)據(jù)集后,各方法又有一定提升,整體結(jié)果表明該生成數(shù)據(jù)能夠用于分類器的訓(xùn)練,且有一定的積極作用。而對(duì)各類別具體分類結(jié)果見表12,可以發(fā)現(xiàn)雖然原始數(shù)據(jù)各類的識(shí)別精確度已具有較好結(jié)果,但通過本文方法增強(qiáng),對(duì)于原始數(shù)據(jù)量少的4、5、6、7類數(shù)據(jù)的識(shí)別率還是有明顯提升,一定程度上緩解了數(shù)據(jù)不均衡而帶來的損失。

表12 隨機(jī)森林對(duì)各類別數(shù)據(jù)分類結(jié)果/%

綜合分析上述三方面實(shí)驗(yàn)結(jié)果可得:①由表5、表8和表11中原始數(shù)據(jù)集結(jié)果可知數(shù)據(jù)集數(shù)量對(duì)惡意代碼分類影響較大,數(shù)據(jù)量越多分類識(shí)別率越高,從一方面驗(yàn)證數(shù)據(jù)的重要性,凸顯本研究的意義;②由表8、表11各自對(duì)比結(jié)果可知,采用本文數(shù)據(jù)增強(qiáng)對(duì)提升分類器性能有積極作用;③通過表9、表12中各類別數(shù)據(jù)分類結(jié)果展示可知,不均衡數(shù)據(jù)也是影響分類性能的重要因素,而使用本文增強(qiáng)方法能夠有效緩解該問題??傊?,本文方法所生成數(shù)據(jù)能夠從數(shù)據(jù)量和均衡性兩方面較好解決性能提升限制問題,具有可行性。

上述實(shí)驗(yàn)已經(jīng)驗(yàn)證了本文增強(qiáng)方法的有效性,本小節(jié)最后進(jìn)一步與其它分類方法在該數(shù)據(jù)集上所得結(jié)果作比較,見表13。本文利用在大規(guī)模原始數(shù)據(jù)集中增強(qiáng)后,以隨機(jī)森林作為分類器所得結(jié)果與相關(guān)研究進(jìn)行比較。本文方法所得結(jié)果比文獻(xiàn)[6]所達(dá)結(jié)果略低,主要原因在于文獻(xiàn)[6]采用卷積神經(jīng)網(wǎng)絡(luò)模型對(duì)轉(zhuǎn)換后的惡意代碼圖像進(jìn)行特征提取和分類,其層層變換與提取對(duì)識(shí)別結(jié)果有一定的提高;而相較于文獻(xiàn)[5]和文獻(xiàn)[3]結(jié)果均有所提高。由此可知通過生成對(duì)抗網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)增強(qiáng)對(duì)于分類識(shí)別具有積極的作用。

表13 相關(guān)研究比較

3.3.3 小結(jié)

綜上所述,本節(jié)不僅從圖像角度選取SSIM值作為評(píng)價(jià)指標(biāo)衡量了本文方法生成圖像的質(zhì)量以及與原始數(shù)據(jù)的相似性,體現(xiàn)本文方法相較于DCGAN生成數(shù)據(jù)的優(yōu)勢(shì),對(duì)擴(kuò)充較高質(zhì)量惡意代碼數(shù)據(jù)具有一定的可行性;還通過多種分類器模型識(shí)別率的比較,表明本文方法擴(kuò)增的數(shù)據(jù)樣本有利于提高分類器性能,能夠緩解原數(shù)據(jù)集各類別數(shù)據(jù)量不均衡等問題,具備有效性。

4 結(jié)束語

惡意代碼數(shù)據(jù)集的采集獲取是惡意代碼分類檢測(cè)任務(wù)中的關(guān)鍵一環(huán),本文將生成對(duì)抗網(wǎng)絡(luò)應(yīng)用于網(wǎng)絡(luò)惡意代碼數(shù)據(jù)的生成,很好地解決了現(xiàn)存數(shù)據(jù)集難獲取、不均衡等問題,為此環(huán)節(jié)提供了保障。本文創(chuàng)新性地將惡意代碼可視化技術(shù)融入其中,結(jié)合生成對(duì)抗網(wǎng)絡(luò)在圖像領(lǐng)域的優(yōu)良應(yīng)用,實(shí)現(xiàn)了惡意代碼數(shù)據(jù)集擴(kuò)增。從整體來說,本文方法在數(shù)據(jù)集擴(kuò)增實(shí)驗(yàn)中表現(xiàn)良好,能夠達(dá)到預(yù)期期望。實(shí)驗(yàn)比較結(jié)果表明,惡意代碼生成數(shù)據(jù)具備有效性,符合用于惡意代碼檢測(cè)任務(wù)訓(xùn)練的目標(biāo)。本文下一步計(jì)劃深入探究惡意代碼可視化表示方法,使其更多包含、更好表現(xiàn)惡意代碼數(shù)據(jù)特性,從保持惡意代碼攻擊性的角度探究生成更具關(guān)聯(lián)性新樣本的方法,并評(píng)估其質(zhì)量和有效性。

猜你喜歡
原始數(shù)據(jù)分類樣本
GOLDEN OPPORTUNITY FOR CHINA-INDONESIA COOPERATION
分類算一算
用樣本估計(jì)總體復(fù)習(xí)點(diǎn)撥
受特定變化趨勢(shì)限制的傳感器數(shù)據(jù)處理方法研究
分類討論求坐標(biāo)
推動(dòng)醫(yī)改的“直銷樣本”
數(shù)據(jù)分析中的分類討論
教你一招:數(shù)的分類
全新Mentor DRS360 平臺(tái)借助集中式原始數(shù)據(jù)融合及直接實(shí)時(shí)傳感技術(shù)實(shí)現(xiàn)5 級(jí)自動(dòng)駕駛
隨機(jī)微分方程的樣本Lyapunov二次型估計(jì)