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