引言
惡意軟件分類(lèi)致力于研究如何識(shí)別惡意軟件以及區(qū)分不同的惡意軟件家族,作為網(wǎng)絡(luò)安全研究領(lǐng)域中的一個(gè)重要分支,,對(duì)于理解和防御不同類(lèi)型的惡意軟件以及溯源網(wǎng)絡(luò)攻擊具有重要意義,。惡意軟件分類(lèi)方法大致可以分為:基于靜態(tài)特征[1]和動(dòng)態(tài)特征[2]的傳統(tǒng)方法,以及引入機(jī)器學(xué)習(xí)[3]的新式方法,?;陟o態(tài)特征的方法[4-6]依賴(lài)于復(fù)雜的特征工程,難以應(yīng)對(duì)惡意軟件的快速演化,;基于動(dòng)態(tài)特征的方法[7-9]涉及耗時(shí)的行為特征監(jiān)控[10],,難以規(guī)模擴(kuò)展。近年來(lái),,利用機(jī)器學(xué)習(xí)直接從文件字節(jié)序列中提取特征并進(jìn)行惡意軟件分類(lèi)的方法受到了廣泛關(guān)注[11-12],。該方法的框架如圖1所示,其研究核心是設(shè)計(jì)一個(gè)分類(lèi)模型,,將輸入樣本x的字節(jié)序列映射到一個(gè)范圍為[0,1]的概率分布c=[c0,c1,…,cM]上,,其中∑cm=1。測(cè)試時(shí),,計(jì)算類(lèi)別m=argmax(c),,m=0表示良性軟件,m≥1表示相應(yīng)的惡意軟件家族,。如果M=1,,分類(lèi)模型實(shí)現(xiàn)面向良性軟件與惡意軟件的二分類(lèi);如果M≥2,,則分類(lèi)模型實(shí)現(xiàn)面向惡意軟件家族的多分類(lèi),,此時(shí)良性軟件被看作一類(lèi)特殊的家族。
圖1基于字節(jié)序列分析的惡意軟件分類(lèi)框架
通過(guò)機(jī)器學(xué)習(xí)模型自動(dòng)地從序列中提取和編碼特征的技術(shù)路線能更好地適應(yīng)當(dāng)今惡意軟件的動(dòng)態(tài)變化,,也能更好地實(shí)現(xiàn)各類(lèi)型和跨平臺(tái)的惡意軟件分類(lèi),。然而,當(dāng)面對(duì)大數(shù)據(jù)場(chǎng)景下的海量文件樣本時(shí),,該路線面臨因惡意軟件的字節(jié)序列較長(zhǎng),,直接輸入模型進(jìn)行訓(xùn)練,,導(dǎo)致時(shí)間和空間開(kāi)銷(xiāo)巨大的挑戰(zhàn)。從形式上看,,字節(jié)序列分類(lèi)任務(wù)類(lèi)似于時(shí)間序列分類(lèi)任務(wù),,借鑒其研究成果已被證明極具挑戰(zhàn)[12]。惡意軟件通常包含數(shù)十萬(wàn)到數(shù)百萬(wàn)長(zhǎng)度的字節(jié)序列,,以100萬(wàn)長(zhǎng)度的字節(jié)序列為例,,其相當(dāng)于T=1 000 000步長(zhǎng)的時(shí)間序列,而已知的最長(zhǎng)時(shí)間序列分類(lèi)任務(wù)步長(zhǎng)≤16 000[13],,這限制了現(xiàn)有時(shí)間序列分類(lèi)模型的直接應(yīng)用,。目前為止,能處理這種極端長(zhǎng)度字節(jié)序列分類(lèi)任務(wù)的實(shí)現(xiàn)是MalConv[11],,其通過(guò)簡(jiǎn)潔的模型設(shè)計(jì),,可以處理T=2 000 000步長(zhǎng)的字節(jié)序列。遺憾的是,,MalConv的訓(xùn)練開(kāi)銷(xiāo)極大,,例如在Ember[14]數(shù)據(jù)集60萬(wàn)樣本上訓(xùn)練該模型,128 GB顯存的DGX1需要消耗一個(gè)月的時(shí)間,。盡管MalConv2[12]通過(guò)優(yōu)化池化降低了訓(xùn)練的顯存開(kāi)銷(xiāo),但訓(xùn)練的時(shí)間開(kāi)銷(xiāo)依然很大,。本文針對(duì)上述如何提高字節(jié)序列分類(lèi)模型的訓(xùn)練效率展開(kāi)研究,。通過(guò)引入離散傅里葉變換[15]分析文件字節(jié)序列的頻率分量發(fā)現(xiàn),字節(jié)序列中的能量主要集中在低頻部分,。本文通過(guò)截取低頻分量來(lái)縮短輸入字節(jié)序列的長(zhǎng)度,,進(jìn)而提出基于字節(jié)序列頻域采樣的惡意軟件分類(lèi)方法。核心的設(shè)計(jì)思路為:設(shè)計(jì)頻域采樣策略,,保留字節(jié)序列中的主要低頻分量,,合成新的短信號(hào),從而實(shí)現(xiàn)訓(xùn)練效率的提高,。Windows和Android公開(kāi)惡意軟件數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,,與最先進(jìn)的基于原始字節(jié)序列的MalConv2[12]相比,本文提出的方法與其分類(lèi)效果相當(dāng),,且將模型的訓(xùn)練時(shí)間和GPU顯存占用分別降低了90%和50%以上,。綜上,本文的主要貢獻(xiàn)如下:(1)提出了一種基于字節(jié)序列頻域采樣的惡意軟件分類(lèi)方法,,通過(guò)設(shè)計(jì)頻域采樣策略,,減小輸入字節(jié)序列的長(zhǎng)度,實(shí)現(xiàn)模型訓(xùn)練效率的提高,。(2)在公開(kāi)數(shù)據(jù)集上進(jìn)行了驗(yàn)證,,結(jié)果表明,,提出的惡意軟件分類(lèi)方法與最先進(jìn)的基于原始字節(jié)序列的方法分類(lèi)效果相當(dāng),且能將模型的訓(xùn)練時(shí)間和GPU顯存占用大幅降低,。(3)分析了字節(jié)序列頻域采樣策略中采樣長(zhǎng)度的影響,,并對(duì)未來(lái)的研究方向進(jìn)行了討論。
本文詳細(xì)內(nèi)容請(qǐng)下載:
http://wldgj.com/resource/share/2000006296
作者信息:
蔣永康,,孫遜,,楊玉龍
(貴州航天計(jì)量測(cè)試技術(shù)研究所,貴州貴陽(yáng)550009)