最近,一組研究人員在KiloGram上發(fā)表了他們的論文,KiloGram是一種用于管理文件中的大型n-gram的新算法,可以改善機(jī)器學(xué)習(xí)對(duì)惡意軟件的檢測能力。新算法比以前的方法快60倍,并且可以處理n = 1024或更高的n-gram。n的大值具有可解釋的惡意軟件分析和簽名生成的其他應(yīng)用程序。
在KDD 2019網(wǎng)絡(luò)安全學(xué)習(xí)和采礦研討會(huì)上發(fā)表的論文中,來自馬里蘭大學(xué)和網(wǎng)絡(luò)安全公司Endgame的研究人員描述了他們的算法,用于在大型文件數(shù)據(jù)集中查找最頻繁的n-gram。以前的方法在增加n的大小時(shí)會(huì)在內(nèi)存和運(yùn)行時(shí)中遇到“指數(shù)成本”,而在分析具有數(shù)十萬個(gè)文件的數(shù)據(jù)集時(shí),它們的n值將小于8。相比之下,KiloGram算法能夠從數(shù)百萬個(gè)文件中的5TB數(shù)據(jù)中提取n-gram,而僅使用9GB的RAM,并且“運(yùn)行時(shí)間不會(huì)隨n的增加而增加”。這允許算法為較大的n值提取n-gram,以測試這些n-gram是否為機(jī)器學(xué)習(xí)算法提供了更好的準(zhǔn)確性。
一個(gè)n-gram是n個(gè)項(xiàng)的唯一序列,并且該思想被用于許多機(jī)器學(xué)習(xí)任務(wù)中,尤其是自然語言處理(NLP)。在檢測到惡意軟件的情況下,n-gram是來自文件的字節(jié)序列,該文件將被分類為惡意軟件或良性文件。惡意軟件檢測的早期工作表明,較大的n-gram(例如n = 15或20)對(duì)于訓(xùn)練檢測系統(tǒng)是理想的,但是現(xiàn)代數(shù)據(jù)集的大小使得使用大于6的n值太昂貴。由于KiloGram算法可以處理那些較大的值,因此研究團(tuán)隊(duì)能夠測試較大值更好的想法。
該團(tuán)隊(duì)使用可執(zhí)行文件和Adobe PDF文檔的多個(gè)數(shù)據(jù)集,訓(xùn)練了Elastic-Net正則化邏輯回歸分類器來檢測惡意軟件;為了進(jìn)行回歸,輸入特征是使用KiloGram算法提取的n元語法。與文獻(xiàn)中的建議相反,研究人員發(fā)現(xiàn)“預(yù)測精度不會(huì)增加到n = 8以上”。較大的n-gram會(huì)產(chǎn)生精度降低的模型;但是,它們具有可解釋性的優(yōu)點(diǎn)。較小的n-gram產(chǎn)生“黑匣子”模型,而較大的n-gram特征集包含可能對(duì)分析人員有意義的字節(jié)序列。例如,它們可能代表代碼片段或文本字符串。
研究人員認(rèn)為,較大的n-gram在回歸模型中使用時(shí)不那么精確,因?yàn)樗鼈兏囟ㄓ谔囟ǖ膼阂廛浖簟?shí)際上,它們會(huì)導(dǎo)致過度擬合。但是,當(dāng)在諸如Yara之類的簽名模型中使用時(shí),它們的優(yōu)點(diǎn)是它們的假陽性率低。也就是說,盡管Yara模型可能會(huì)錯(cuò)誤地將更多文件標(biāo)記為良性文件,但如果它確實(shí)表明文件為惡意軟件,則很少有錯(cuò)。這使得KiloGram算法可用于構(gòu)建結(jié)合了機(jī)器學(xué)習(xí)模型和基于簽名的模型的分層系統(tǒng)。
-
算法
+關(guān)注
關(guān)注
23文章
4624瀏覽量
93112 -
網(wǎng)絡(luò)安全
+關(guān)注
關(guān)注
10文章
3181瀏覽量
59988 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8428瀏覽量
132841
發(fā)布評(píng)論請先 登錄
相關(guān)推薦
評(píng)論