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

?

基于生成對抗網(wǎng)絡(luò)的惡意樣本識別模型*

2020-07-19 14:29:10龔子超鄒福泰
通信技術(shù) 2020年6期
關(guān)鍵詞:灰度卷積神經(jīng)網(wǎng)絡(luò)

龔子超,鄒福泰

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

0 引言

目前,惡意軟件已經(jīng)成為網(wǎng)絡(luò)空間中最具威脅性的惡意行為。惡意軟件利用各種反分析技術(shù)與多態(tài)、混淆、加殼技術(shù),會使檢測手段的誤報(bào)率與漏報(bào)率上升[1]。傳統(tǒng)的惡意軟件技術(shù)主要利用特征工程的手段進(jìn)行特征提取與分類判別,會存在更新?lián)Q代速度跟不上惡意軟件出現(xiàn)速度的問題。

本文提出了基于二進(jìn)制文件圖像化的圖像分類技術(shù),在已有的惡意軟件數(shù)據(jù)集上表現(xiàn)優(yōu)異,但是對于加殼后的樣本會出現(xiàn)很高的誤差。在此基礎(chǔ)上,本文將加殼過程對其圖像化后的影響類比為生成對抗樣本的影響,并且利用生成對抗網(wǎng)絡(luò)對檢測網(wǎng)絡(luò)進(jìn)行增強(qiáng),一定程度上改善了準(zhǔn)確率。第1 章介紹研究背景;第2 章介紹深度學(xué)習(xí)和生成對抗網(wǎng)絡(luò)結(jié)構(gòu);第3 章給出模型的實(shí)驗(yàn)結(jié)果;第4 章總結(jié)并且給出下一步的研究方向。

1 研究背景

1.1 相關(guān)背景與研究意義

自從進(jìn)入互聯(lián)網(wǎng)時(shí)代以來,互聯(lián)網(wǎng)用戶急劇增加,具有危害性的惡意行為越來越多。這些惡意行為最主要的載體是惡意樣本。最早主流的檢測惡意樣本的系統(tǒng)(最主要的是病毒掃描程序)基于語法簽名比對來實(shí)現(xiàn)。如果在樣本中找到數(shù)據(jù)庫中存在的簽名,就把該程序宣布為惡意軟件。然而,這種方式存在一定缺陷:一是簽名數(shù)據(jù)庫的簽名沒有普適性,對于新的惡意代碼沒有識別能力;二是攻擊者可以通過多態(tài)等技術(shù)規(guī)避商業(yè)病毒掃描程序,因?yàn)檎Z法簽名無法了解指令的語義。因此,文獻(xiàn)[1]提出了一種基于語義的惡意代碼檢測技術(shù),通過對常見的代碼混淆技術(shù)的理解與分析,解釋了通過語義檢測的可行性。

越來越多的研究表明,靜態(tài)分析惡意代碼存在很大的局限性,而執(zhí)行樣本后其對行為動作能夠很大程度反映其是否是惡意代碼,因此動態(tài)分析成為惡意代碼檢測的新方向。文獻(xiàn)[1]中代碼執(zhí)行了惡意文件并生成了這些文件調(diào)用的應(yīng)用程序接口(Application Programming Interface,API),然后使用相似矩陣分析API 調(diào)用序列的相似性。文獻(xiàn)[2]提出了使用動態(tài)分析方法提取各種行為特征來對樣本進(jìn)行識別。這些方法的分類精度良好,但是計(jì)算復(fù)雜度高。在動態(tài)分析中,沙箱是分析者最有力的武器。通過沙箱建立虛擬環(huán)境,可以高效地批量分析惡意樣本的行為特征。

機(jī)器學(xué)習(xí)也是常用方法之一。機(jī)器學(xué)習(xí)中的支持向量機(jī)、隨機(jī)森林、樸素貝葉斯和決策樹等,是最常用于該領(lǐng)域的算法。這些分類算法需要大量樣本進(jìn)行訓(xùn)練來建立分類模型。

自從深度學(xué)習(xí)興起后,使用深度學(xué)習(xí)進(jìn)行惡意軟件檢測分類也成為熱點(diǎn)話題。最常見的方式是使用之前機(jī)器學(xué)習(xí)的經(jīng)驗(yàn),抽取樣本的各類特征,使用深度學(xué)習(xí)模型而非機(jī)器學(xué)習(xí)模型進(jìn)行訓(xùn)練,有時(shí)能得到更好的效果。文獻(xiàn)[3]將抽取的各類型靜態(tài)特征使用深度神經(jīng)網(wǎng)絡(luò)進(jìn)行分類,準(zhǔn)確率高于99.9%。文獻(xiàn)[4]則將動態(tài)分析后得到的特征使用循環(huán)神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行了訓(xùn)練。

1.2 惡意樣本圖像化技術(shù)

惡意樣本圖像化是一種將惡意樣本映射為圖像的編碼技術(shù),目標(biāo)是將樣本轉(zhuǎn)化為一張能表示其特征的圖像,從而將惡意樣本識別問題轉(zhuǎn)化為圖像的二分類問題。

對于二進(jìn)制樣本,將其文件內(nèi)容按字節(jié)讀取,每8 位存為一個(gè)向量,再轉(zhuǎn)化為[0,255]范圍內(nèi)的灰度整數(shù)。這樣的流程會產(chǎn)生與樣本對應(yīng)的灰度圖[5-6]。經(jīng)過這樣的流程處理,會發(fā)現(xiàn)惡意二進(jìn)制文件樣本產(chǎn)生的灰度圖與正常的二進(jìn)制文件樣本產(chǎn)生的灰度圖存在一定的肉眼上的區(qū)別,如圖1 所示。這樣的圖像差異會在深度網(wǎng)絡(luò)中呈現(xiàn)出較高的區(qū)分度。

圖1 不同樣本進(jìn)行灰度圖化的結(jié)果

但是,這樣的技術(shù)對于惡意軟件常用的混淆加密技術(shù)會有一定的出入。如圖2 所示,經(jīng)過加殼算法處理的樣本在人類視覺上已經(jīng)很難做以區(qū)分,實(shí)際上這些圖像輸入到之前訓(xùn)練好的網(wǎng)絡(luò)中的判別效果不甚理想,因此需要改進(jìn)圖像分類模型。

圖2 不同樣本加殼后進(jìn)行灰度圖化的結(jié)果

2 深度學(xué)習(xí)結(jié)構(gòu)

本文采取卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)[7]。卷積神經(jīng)網(wǎng)絡(luò)已經(jīng)被證明在圖像領(lǐng)域有著出色發(fā)揮[6],且可以同時(shí)處理整張圖片。

本文的分類模型運(yùn)行分為以下幾個(gè)步驟。

(1)所有的灰度圖都被調(diào)整為96×96×1 的形狀,使用最近鄰插值法。

(2)使用3 層深度學(xué)習(xí)網(wǎng)絡(luò)進(jìn)行判別任務(wù):每一層先經(jīng)過一次二維卷積層,使用非飽和函數(shù)LeakyReLU 作為激活函數(shù),之后引入批標(biāo)準(zhǔn)化層[8](Batch_Normalization)和Dropout 層來解決深度學(xué)習(xí)過程中的過擬合問題[9]。

(3)深度學(xué)習(xí)網(wǎng)絡(luò)輸出為布爾型變量,結(jié)果為1 代表著樣本檢測結(jié)果為惡意樣本,為0 則為良性樣本。經(jīng)過(2)中的處理,經(jīng)過兩個(gè)全連接層得到最后的結(jié)果。

而在加入生成對抗網(wǎng)絡(luò)[7,10]的模型中,判別器采用了上述結(jié)構(gòu)。在生成器這邊,輸入為100 維的隨機(jī)噪聲,經(jīng)過一層全連接后,再進(jìn)行上采樣、卷積、批規(guī)范化、激活函數(shù)2 次,然后進(jìn)行一次卷積,最后通過激活函數(shù)為tanh 的激活層輸出(-1,1)范圍內(nèi)的數(shù)據(jù),代表了生成的噪聲圖像的灰度。

訓(xùn)練過程中先訓(xùn)練判別器,一半使用真實(shí)圖片,另一半使用真實(shí)圖片與產(chǎn)生的噪聲進(jìn)行按位與后產(chǎn)生的圖像進(jìn)行訓(xùn)練。之后,再對整個(gè)進(jìn)行訓(xùn)練,輸入為隨機(jī)噪聲和真實(shí)圖片。

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

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

作為基準(zhǔn)的惡意軟件數(shù)據(jù)集從“VirusShare Malware Sharing Platform”處獲取。該平臺提供了最新的各種惡意樣本,包括windows 可執(zhí)行文件、JavaScript、Android 樣 本(APK)、Java 以 及PDF等,本文從中獲取到數(shù)十萬個(gè)樣本。良性樣本的獲取則是通過從各大軟件下載平臺上爬取的。為了保證用戶滿意度,這些文件都會經(jīng)過嚴(yán)格的檢測來確保良性,共爬取了近萬個(gè)良性樣本。為了使正負(fù)樣本均衡,本文從惡意樣本與良性樣本中各隨機(jī)抽取6 000 個(gè)作為訓(xùn)練用。

3.2 模型實(shí)現(xiàn)細(xì)節(jié)

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

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

表2 用于惡意樣本檢測的卷積網(wǎng)絡(luò)參數(shù)

表3 生成對抗網(wǎng)絡(luò)生成器的網(wǎng)絡(luò)參數(shù)

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

在單獨(dú)的判別器中,使用Logistic loss 作為損失函數(shù),定義如下:

同時(shí),在訓(xùn)練過程中使用準(zhǔn)確率(accuracy)、假陽率(False Positive Rate,F(xiàn)PR)、假陰率(False Negative Rate,F(xiàn)NR)評估模型的能力,詳細(xì)定義如下。

在二分類任務(wù)訓(xùn)練過程中,存在如下4 種情況:

(1)True Positive(TP):預(yù)測為正例,實(shí)際為正例的數(shù)量;

(2)False Positive(FP):預(yù)測為正例,實(shí)際為負(fù)例的數(shù)量;

(3)True Negative(TN):預(yù)測為負(fù)例,實(shí)際為負(fù)例的數(shù)量;

(4)False Negative(FN):預(yù)測為負(fù)例,實(shí)際為正例的數(shù)量。

于是,各指標(biāo)計(jì)算公式如下:

在加入了生成對抗網(wǎng)絡(luò)的網(wǎng)絡(luò)中,訓(xùn)練判別器時(shí)一半使用真實(shí)樣本,一半使用生成器生成的樣本作混淆,同時(shí)使用上述的Logistic loss 作為損失函數(shù)。記生成器為g(x),則該過程中判別器損失為:

在訓(xùn)練整個(gè)模型時(shí),此時(shí)訓(xùn)練器不再進(jìn)行訓(xùn)練,關(guān)注的點(diǎn)為生成器的訓(xùn)練。生成器的訓(xùn)練目標(biāo)為混淆判別器的判別結(jié)果,因此損失函數(shù)為:

由于目標(biāo)是改善其中判別器的精度,因此只有判別器的性能需要關(guān)注。此處的性能評估方法與上述模型一樣,不再贅述。

3.4 結(jié)果與分析

在卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練上,采取將數(shù)據(jù)集分為0.8:0.2 的比例分別作為訓(xùn)練集和測試集。訓(xùn)練過程中,損失函數(shù)與精確度的變化趨勢如圖3 所示。

圖3 卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練中參數(shù)變化

經(jīng)過訓(xùn)練后,該模型在測試集上的精確度為99.5%,損失函數(shù)穩(wěn)定在0.02 左右,F(xiàn)PR為1.07%,F(xiàn)NR為0.97%,證明該方法在惡意軟件識別上具有一定的可行性。

但是,如果將這個(gè)模型用于檢測經(jīng)過加殼的樣本,檢測的精確度只有72.7%,損失函數(shù)會在1~3不停波動,證明無法勝任對加殼樣本識別的任務(wù),需要發(fā)現(xiàn)新的手段或者對該模型進(jìn)行改進(jìn)。

而對生成對抗網(wǎng)絡(luò)的訓(xùn)練中,將未加殼樣本作為訓(xùn)練集,將加殼后的數(shù)據(jù)作為測試集,訓(xùn)練過程中各參數(shù)變化趨勢如圖4 所示。

圖4 生成對抗網(wǎng)絡(luò)訓(xùn)練中參數(shù)變化

經(jīng)過訓(xùn)練后,該模型在測試集上的精確度為90%左右,比起上述卷積神經(jīng)網(wǎng)絡(luò)在加殼樣本上的表現(xiàn)好。

通過對比可以發(fā)現(xiàn),生成對抗網(wǎng)絡(luò)雖然會在未加殼樣本上的表現(xiàn)有所下降,但是由于對抗樣本對生成器的加強(qiáng),會在加殼樣本上的表現(xiàn)優(yōu)于卷積神經(jīng)網(wǎng)絡(luò),說明該方法在加殼樣本識別方面具有一定的可行性。

4 結(jié)語

本文主要研究基于生成對抗網(wǎng)絡(luò)的惡意代碼識別模型在加殼惡意樣本識別中的應(yīng)用和效果,闡述惡意樣本圖像化在樣本識別中的優(yōu)劣勢,設(shè)計(jì)和訓(xùn)練了基于生成對抗網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)的惡意代碼識別模型。模型在搜集的數(shù)據(jù)集上的表現(xiàn)對比顯示,卷積神經(jīng)網(wǎng)絡(luò)在未加殼的樣本識別上表現(xiàn)優(yōu)異,但是在加殼后的樣本識別上表現(xiàn)不佳。在此基礎(chǔ)上,生成對抗網(wǎng)絡(luò)經(jīng)過訓(xùn)練可以使其鑒別器在加殼樣本上的表現(xiàn)獲得改善。

綜上所述,基于生成對抗網(wǎng)絡(luò)的惡意代碼識別模型將加殼惡意代碼識別問題類比于生成對抗樣本攻擊識別網(wǎng)絡(luò)的問題,一定程度地改善了識別模型的精確度。然而,該模型的魯棒性較差,普遍性也需要進(jìn)一步考證,因此提高模型的魯棒性和普適性是需要進(jìn)一步研究的方向。

猜你喜歡
灰度卷積神經(jīng)網(wǎng)絡(luò)
采用改進(jìn)導(dǎo)重法的拓?fù)浣Y(jié)構(gòu)灰度單元過濾技術(shù)
基于3D-Winograd的快速卷積算法設(shè)計(jì)及FPGA實(shí)現(xiàn)
基于灰度拉伸的圖像水位識別方法研究
神經(jīng)網(wǎng)絡(luò)抑制無線通信干擾探究
電子制作(2019年19期)2019-11-23 08:42:00
從濾波器理解卷積
電子制作(2019年11期)2019-07-04 00:34:38
基于傅里葉域卷積表示的目標(biāo)跟蹤算法
基于最大加權(quán)投影求解的彩色圖像灰度化對比度保留算法
基于灰度線性建模的亞像素圖像抖動量計(jì)算
基于神經(jīng)網(wǎng)絡(luò)的拉矯機(jī)控制模型建立
復(fù)數(shù)神經(jīng)網(wǎng)絡(luò)在基于WiFi的室內(nèi)LBS應(yīng)用
抚顺县| 达尔| 锡林郭勒盟| 环江| 新民市| 洪泽县| 德惠市| 临猗县| 和政县| 白朗县| 丰县| 泽普县| 成安县| 靖宇县| 惠东县| 家居| 黄山市| 清新县| 永登县| 河北区| 常宁市| 家居| 若羌县| 应用必备| 积石山| 甘肃省| 会东县| 靖西县| 洪江市| 马尔康县| 江西省| 玉田县| 镇坪县| 呼玛县| 班戈县| 福鼎市| 榆中县| 商都县| 上思县| 合江县| 临桂县|