李燕萍
摘 要:盡管Linux在設(shè)計(jì)之初就具有顯著的優(yōu)越性,但在1996年卻出現(xiàn)了Linux病毒?;谌娴乇O(jiān)測(cè)該病毒的目的,文章綜合了機(jī)器學(xué)習(xí)的基本理論知識(shí),進(jìn)而探索出一種高效的檢測(cè)方法。此方案綜合了ELF文件特征,并將BP神經(jīng)網(wǎng)絡(luò)作為基分類(lèi)器,通過(guò)AdaBoost實(shí)現(xiàn)對(duì)所有的基分類(lèi)器的訓(xùn)練。
關(guān)鍵詞:Linux;基分類(lèi)器;病毒檢測(cè);AdaBoost
中圖分類(lèi)號(hào):TP181? ?文獻(xiàn)標(biāo)識(shí)碼:A? ?收稿日期:2018-09-27
文章編號(hào):2095-624X(2018)31-0022-01
一、基于AdaBoost的Linux病毒檢測(cè)方案
本研究綜合采用了集成學(xué)習(xí)的基本原理,對(duì)各分類(lèi)器所帶來(lái)的檢測(cè)結(jié)果加以整合,進(jìn)而提升檢測(cè)精度。最終,所得的Linux病毒檢測(cè)系統(tǒng)其基本檢測(cè)流程如下:首先選取待測(cè)文件,從中獲取各樣本特征。其次所有基分類(lèi)器都各自展開(kāi)樣本檢測(cè)工作,獲得各自的結(jié)果。最后將各基分類(lèi)器所得的結(jié)果加以整合,進(jìn)而得出最終的檢測(cè)結(jié)果。
事實(shí)上,本文所設(shè)計(jì)的檢測(cè)方案是基于傳統(tǒng)方案加以改進(jìn)所得,二者的區(qū)別在于改進(jìn)后的方案增強(qiáng)了分類(lèi)器的差異性,這也隨之帶來(lái)了一些問(wèn)題。此外還需要通過(guò)科學(xué)的手段對(duì)基分類(lèi)器加以訓(xùn)練,提升整合能力。
二、AdaBoost算法及其改進(jìn)
1.原AdaBoost算法
基于Adaboost算法,對(duì)同一個(gè)訓(xùn)練集而言,可以對(duì)具有差異化的基分類(lèi)器展開(kāi)訓(xùn)練,而后將各分類(lèi)器進(jìn)行整合,最終形成強(qiáng)分類(lèi)器。最初,訓(xùn)練樣本對(duì)應(yīng)了相應(yīng)的初始權(quán)值,隨著某一基分類(lèi)器的訓(xùn)練結(jié)束,將會(huì)以所得的分類(lèi)結(jié)果為依據(jù),進(jìn)而對(duì)樣本權(quán)值做調(diào)整,因此在后續(xù)的訓(xùn)練中可以增強(qiáng)基分類(lèi)器對(duì)該類(lèi)樣本的洞察能力。在獲得各分類(lèi)器的判決結(jié)果后,對(duì)其進(jìn)行加權(quán)處理方可得到最終的強(qiáng)分類(lèi)器。
2.改進(jìn)算法分析
基于傳統(tǒng)的AdaBoost算法,本文做了如下改進(jìn):一是對(duì)權(quán)重計(jì)算方案做了相應(yīng)調(diào)整,將病毒納入基分類(lèi)器的權(quán)重分配之中。二是對(duì)基分類(lèi)器的整合方式做了相應(yīng)優(yōu)化,由曾經(jīng)傳統(tǒng)的權(quán)重投票方式優(yōu)化為基于DS證據(jù)理論的整合方式。三是改進(jìn)了合成規(guī)則。對(duì)于檢測(cè)系統(tǒng)而言,若其含有T個(gè)基分類(lèi)器,此時(shí)可以引入Dempster正交合成規(guī)則,進(jìn)而對(duì)命題所對(duì)應(yīng)的基本概率函數(shù)加以整合,而后可以得出系統(tǒng)對(duì)某一命題所對(duì)應(yīng)的具體信任度分配情況,如下所示:
M(A)=m1(A)⊕m2(A)⊕...⊕mT(A)
對(duì)于某一命題N而言,可以通過(guò)上述方法獲悉系統(tǒng)對(duì)其的信任度,如果所得的值超過(guò)預(yù)先設(shè)定的閃值,那么將會(huì)認(rèn)定該待測(cè)文件屬于病毒,否則將會(huì)認(rèn)定為正常文件。
顯然,引入DS證據(jù)理論后,此時(shí)檢測(cè)系統(tǒng)將突破傳統(tǒng)“是”與“否”的簡(jiǎn)單形式,通過(guò)可量化的值加以輸出。在某些檢測(cè)敏感度較高的場(chǎng)合,可以將閃值做相應(yīng)下調(diào),此時(shí)將會(huì)有更多的可疑文件被系統(tǒng)認(rèn)定為病毒,高度的靈活性在提升判定能力的同時(shí)還可以適用于各類(lèi)場(chǎng)景中。
由上述內(nèi)容可知,對(duì)AdaBoost算法加以改進(jìn)后,在進(jìn)行基分類(lèi)器的權(quán)重計(jì)算環(huán)節(jié)中,綜合考慮了病毒(即正樣本)對(duì)識(shí)別能力的影響,因此該算法對(duì)病毒檢測(cè)而言具有高度可行性。當(dāng)出現(xiàn)分類(lèi)錯(cuò)誤率相同的情況時(shí),對(duì)于識(shí)別能力更強(qiáng)的基分類(lèi)器而言可以對(duì)權(quán)重做以調(diào)整,獲得更大的值,進(jìn)而提升整個(gè)系統(tǒng)的識(shí)別能力?;贏daBoost算法,綜合了DS理論,可以顯著增強(qiáng)各基分類(lèi)器所帶來(lái)的整合水平,提升最終的準(zhǔn)確率。
三、實(shí)驗(yàn)結(jié)果與分析
假定系統(tǒng)只有一個(gè)基分類(lèi)器,此時(shí)可以等效于系統(tǒng)沒(méi)有進(jìn)行集成學(xué)習(xí),所帶來(lái)的正確率保持在85%以上水平,因此有理由說(shuō)明ELF文件特性以及BP神經(jīng)網(wǎng)絡(luò)分類(lèi)算法具有較強(qiáng)的可行性,它對(duì)Linux病毒檢測(cè)而言效果顯著。
如果基分類(lèi)器數(shù)量在2至16個(gè)范圍內(nèi),此時(shí)正確率將進(jìn)一步提升,這受惠于集成學(xué)習(xí)的優(yōu)越性。
如果基分類(lèi)器的數(shù)量在16至32個(gè)范圍內(nèi),此時(shí)準(zhǔn)確率并未呈現(xiàn)明顯上升的特征,這表明基分類(lèi)器的數(shù)量在達(dá)到某一限定范圍后,對(duì)效果的提升并不明顯,因此無(wú)需為了提升檢測(cè)效果而大量使用基分類(lèi)器。
本文圍繞Linux病毒檢測(cè)方案展開(kāi)研究,將ELF文件作為樣本特性,并將BP神經(jīng)網(wǎng)絡(luò)作為基分類(lèi)器,在引入AdaBoost算法后可以實(shí)現(xiàn)基分類(lèi)器的訓(xùn)練目的,同時(shí)還引入了DS理論,很大程度上改善了整合效果。
參考文獻(xiàn):
[1]吳 戀,馬敏耀,黃一峰,等.基于AdaBoost算法的Linux病毒檢測(cè)研究[J].計(jì)算機(jī)工程,2018(8).
[2]楊 曄.基于行為的惡意代碼檢測(cè)方法研究[D].西安:西安電子科技大學(xué),2015.