蘭景宏,劉勝利,2,吳雙,王東霞,2
(1.中國(guó)人民解放軍信息工程大學(xué)數(shù)學(xué)工程與先進(jìn)計(jì)算國(guó)家重點(diǎn)實(shí)驗(yàn)室,450001,鄭州;2.北京系統(tǒng)工程研究所信息保障技術(shù)重點(diǎn)實(shí)驗(yàn)室,100083,北京)
?
用于木馬流量檢測(cè)的集成分類(lèi)模型
蘭景宏1,劉勝利1,2,吳雙1,王東霞1,2
(1.中國(guó)人民解放軍信息工程大學(xué)數(shù)學(xué)工程與先進(jìn)計(jì)算國(guó)家重點(diǎn)實(shí)驗(yàn)室,450001,鄭州;2.北京系統(tǒng)工程研究所信息保障技術(shù)重點(diǎn)實(shí)驗(yàn)室,100083,北京)
針對(duì)傳統(tǒng)集成學(xué)習(xí)方法運(yùn)用到木馬流量檢測(cè)中存在對(duì)訓(xùn)練樣本要求較高、分類(lèi)精度難以提升、泛化能力差等問(wèn)題,提出了一種木馬流量檢測(cè)集成分類(lèi)模型。對(duì)木馬通信和正常通信反映在流量統(tǒng)計(jì)特征上的差別進(jìn)行區(qū)分,提取行為統(tǒng)計(jì)特征構(gòu)建訓(xùn)練集。通過(guò)引入均值化的方法對(duì)旋轉(zhuǎn)森林算法中的主成分變換進(jìn)行改進(jìn),并采用改進(jìn)后的旋轉(zhuǎn)森林算法對(duì)原始訓(xùn)練樣本進(jìn)行旋轉(zhuǎn)處理,選取樸素貝葉斯、C4.5決策樹(shù)和支持向量機(jī)3種差異性較大的分類(lèi)算法構(gòu)建基分類(lèi)器,采用基于實(shí)例動(dòng)態(tài)選擇的加權(quán)投票策略實(shí)現(xiàn)集成并產(chǎn)生木馬流量檢測(cè)規(guī)則。實(shí)驗(yàn)結(jié)果表明:該模型充分利用了不同訓(xùn)練集之間的差異性以及異構(gòu)分類(lèi)器之間的互補(bǔ)性,在誤報(bào)率不超過(guò)4.21%時(shí)檢測(cè)率達(dá)到了96.30%,提高了木馬流量檢測(cè)的準(zhǔn)確度和泛化能力。
木馬流量;集成學(xué)習(xí);旋轉(zhuǎn)森林;異構(gòu)分類(lèi)器;加權(quán)投票
隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,網(wǎng)絡(luò)安全問(wèn)題日趨嚴(yán)重。作為黑客進(jìn)行遠(yuǎn)程控制和信息竊取的主要手段,木馬攻擊給網(wǎng)絡(luò)安全造成了嚴(yán)重的威脅[1-2]。與其他惡意代碼相比,木馬的運(yùn)行不會(huì)對(duì)主機(jī)造成明顯的破壞,其主要的特點(diǎn)是隱蔽性。早期人們通常采用特征匹配的方法對(duì)木馬通信流量進(jìn)行檢測(cè),但是隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,木馬新變種不斷涌現(xiàn)?;谔卣髌ヅ涞臋z測(cè)方法雖然具有很高的準(zhǔn)確性,但是不能識(shí)別未知木馬,需要不停地更新特征庫(kù),具有一定的滯后性[3]?;谕ㄐ判袨榉治龅臋z測(cè)方法,利用通信流量的行為統(tǒng)計(jì)特征構(gòu)建異常檢測(cè)模型,無(wú)需特征庫(kù),能夠識(shí)別變種木馬,具有較好的通用性和應(yīng)用前景。隨著數(shù)據(jù)挖掘技術(shù)的迅速發(fā)展,數(shù)據(jù)分類(lèi)技術(shù)從網(wǎng)絡(luò)通信數(shù)據(jù)中自動(dòng)提取行為特征和計(jì)算異常行為模式,極大地降低了開(kāi)發(fā)成本?;谟斜O(jiān)督學(xué)習(xí)的分類(lèi)算法具有準(zhǔn)確性高、模型可讀性強(qiáng)的優(yōu)點(diǎn),在木馬通信流量的檢測(cè)中得到了廣泛應(yīng)用[4-6]。這類(lèi)檢測(cè)方法利用標(biāo)記過(guò)的樣本訓(xùn)練分類(lèi)器并產(chǎn)生檢測(cè)規(guī)則,其中常用的分類(lèi)算法包括樸素貝葉斯(naive Bayes, NB)、決策樹(shù)、神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)(support vector machine, SVM)、隱馬爾可夫模型等。
隨著新型互聯(lián)網(wǎng)應(yīng)用的不斷涌現(xiàn),網(wǎng)絡(luò)流量日趨復(fù)雜。流量的多樣性和動(dòng)態(tài)變化對(duì)木馬流量的檢測(cè)提出了嚴(yán)峻的挑戰(zhàn)。由于過(guò)于依賴(lài)某種既定的數(shù)學(xué)模型且對(duì)待分類(lèi)數(shù)據(jù)的空間分布要求較高,單一的分類(lèi)算法已經(jīng)不能滿(mǎn)足木馬檢測(cè)的實(shí)際需求,而集成學(xué)習(xí)綜合考慮多個(gè)分類(lèi)器對(duì)同一檢測(cè)對(duì)象的分類(lèi)結(jié)果,能得到更加準(zhǔn)確和全面的判斷,已經(jīng)成為目前研究的熱點(diǎn)。
基分類(lèi)器的精度以及基分類(lèi)器之間的差異性是影響集成效果的兩個(gè)重要因素,一個(gè)良好的集成分類(lèi)器必須由精度較高的基分類(lèi)器組成,同時(shí)基分類(lèi)器之間差異性較大[7]。文獻(xiàn)[8]進(jìn)一步指出,在保證不降低基分類(lèi)器精度的前提下,提高基分類(lèi)器之間的差異性能有效提高集成的精度。一些傳統(tǒng)的集成學(xué)習(xí)方法忽略了基分類(lèi)器差異度和精度之間的關(guān)系,集成精度的提高缺乏理論和方法上的指導(dǎo)[9-11],導(dǎo)致運(yùn)用到木馬流量的檢測(cè)中存在對(duì)訓(xùn)練樣本要求較高、集成精度難以提升、泛化能力差等問(wèn)題。針對(duì)木馬通信行為檢測(cè)中的流量分類(lèi)問(wèn)題,本文提出了一種基于改進(jìn)旋轉(zhuǎn)森林算法的木馬流量集成分類(lèi)模型。
網(wǎng)絡(luò)上不同的通信行為一般具有不同的流量統(tǒng)計(jì)特征,這些統(tǒng)計(jì)特征反映了通信的本質(zhì)特性?;诟倪M(jìn)旋轉(zhuǎn)森林算法的木馬流量集成分類(lèi)模型,從本質(zhì)上說(shuō)是利用機(jī)器學(xué)習(xí)的理論和方法對(duì)木馬通信和正常通信反映在流量統(tǒng)計(jì)特征上的差別進(jìn)行區(qū)分。為了保證檢測(cè)模型的可靠性,需要提取有效區(qū)分木馬通信和正常通信的行為統(tǒng)計(jì)特征。由于本文的研究重點(diǎn)是分類(lèi)模型的改進(jìn)而不是通信行為特征的提取,因此借鑒了文獻(xiàn)[5-6]的研究成果并采用文獻(xiàn)[5]中給出的方法對(duì)網(wǎng)絡(luò)流量進(jìn)行預(yù)處理,提取一次完整的通信過(guò)程中產(chǎn)生的多條數(shù)據(jù)流并利用基于時(shí)間戳的聚類(lèi)算法生成數(shù)據(jù)流簇,在數(shù)據(jù)流簇的基礎(chǔ)上提取木馬在請(qǐng)求連接階段和交互操作階段的行為統(tǒng)計(jì)特征。請(qǐng)求連接階段的檢測(cè)特征為平均數(shù)據(jù)包長(zhǎng)度、平均數(shù)據(jù)包包頭長(zhǎng)度、源端口有序度、數(shù)據(jù)流簇中數(shù)據(jù)流最小差異度。交互操作階段的檢測(cè)特征為平均流長(zhǎng)度、下載小包數(shù)量、上傳大包數(shù)量、數(shù)據(jù)流持續(xù)時(shí)間方差、數(shù)據(jù)流簇持續(xù)時(shí)間/最長(zhǎng)數(shù)據(jù)流持續(xù)時(shí)間、源端口有序度、下行小包數(shù)量/小包總數(shù)量、最長(zhǎng)數(shù)據(jù)流持續(xù)時(shí)間、上行大包數(shù)量/大包總數(shù)量、主連接數(shù)據(jù)包時(shí)間間隔方差、數(shù)據(jù)量上傳下載比、數(shù)據(jù)包數(shù)量上傳下載比。需要說(shuō)明的是:本文把小于100 B的數(shù)據(jù)包稱(chēng)為小包,否則為大包;主連接是數(shù)據(jù)流簇中持續(xù)時(shí)間最長(zhǎng)的數(shù)據(jù)流,主要用于傳輸木馬控制命令和一些心跳信息。
為了實(shí)現(xiàn)對(duì)木馬通信流量快速準(zhǔn)確地檢測(cè),首先需要對(duì)采集的網(wǎng)絡(luò)流量進(jìn)行處理,提取行為統(tǒng)計(jì)特征構(gòu)建訓(xùn)練集,然后訓(xùn)練分類(lèi)器并產(chǎn)生檢測(cè)規(guī)則。在木馬通信流量的檢測(cè)中,所采用的分類(lèi)算法是影響檢測(cè)精度的重要因素。本文提出的木馬流量檢測(cè)集成分類(lèi)模型的總體框架如圖1所示。
圖1 木馬流量檢測(cè)的集成分類(lèi)模型
異構(gòu)分類(lèi)器集成學(xué)習(xí)包括3個(gè)模塊:①訓(xùn)練流量預(yù)處理模塊從網(wǎng)絡(luò)出口處捕獲進(jìn)出局域網(wǎng)的通信流量,進(jìn)行白名單過(guò)濾后對(duì)通信流量進(jìn)行行為特征提取和計(jì)算,標(biāo)記后生成訓(xùn)練集;②基分類(lèi)器構(gòu)建模塊采用改進(jìn)的旋轉(zhuǎn)森林算法對(duì)訓(xùn)練樣本進(jìn)行處理,采用C4.5、SVM和NB 3種分類(lèi)算法生成多個(gè)基分類(lèi)器;③動(dòng)態(tài)加權(quán)投票集成模塊采用基于實(shí)例動(dòng)態(tài)選擇的加權(quán)投票策略實(shí)現(xiàn)集成并形成檢測(cè)規(guī)則。
木馬流量檢測(cè)包括2個(gè)模塊:①檢測(cè)流量預(yù)處理模塊為對(duì)待檢測(cè)的通信流量進(jìn)行行特征提取和計(jì)算,根據(jù)基于實(shí)例動(dòng)態(tài)選擇的加權(quán)投票策略統(tǒng)計(jì)每個(gè)基分類(lèi)器投票的權(quán)重;②木馬流量檢測(cè)模塊利用生成的檢測(cè)規(guī)則對(duì)待檢測(cè)的通信流量進(jìn)行分類(lèi)檢測(cè),分類(lèi)結(jié)果包括木馬流量和正常流量?jī)煞N,木馬流量的類(lèi)別為1,正常流量的類(lèi)別為0,根據(jù)檢測(cè)結(jié)果生成詳細(xì)的報(bào)警信息。
旋轉(zhuǎn)森林算法[12]最初由Rodriguez等提出,其核心思想是利用主成分分析法(principal component analysis, PCA)對(duì)原始樣本數(shù)據(jù)進(jìn)行旋轉(zhuǎn)處理,從而生成有差異的訓(xùn)練集。這種旋轉(zhuǎn)處理的好處在于保證基分類(lèi)器分類(lèi)精度的同時(shí)增加了基分類(lèi)器之間的差異性,因而提高了集成的分類(lèi)精度。
2.1 旋轉(zhuǎn)森林算法的改進(jìn)
傳統(tǒng)的旋轉(zhuǎn)森林算法使用PCA變換對(duì)原始樣本數(shù)據(jù)進(jìn)行變換處理,PCA變換一般以樣本的協(xié)方差矩陣為基礎(chǔ)進(jìn)行分析,適用于原始特征之間呈線(xiàn)性關(guān)系的情形,其計(jì)算過(guò)程容易受特征的量綱和數(shù)量級(jí)的影響。為此,本文引入均值化的方法對(duì)旋轉(zhuǎn)森林算法中的PCA變換進(jìn)行改進(jìn)[13]。
假設(shè)有n個(gè)訓(xùn)練樣本,每個(gè)樣本有m個(gè)特征屬性,原始樣本數(shù)據(jù)可表示為矩陣X=(xij)n×m,均值化是把矩陣X中每個(gè)數(shù)據(jù)點(diǎn)除以對(duì)應(yīng)列的平均值,均值化后的訓(xùn)練集表示為矩陣Y=(yij)n×m,即有
(1)
下面計(jì)算矩陣Y的協(xié)方差矩陣U=(uij)m×m。因?yàn)閅的每一列的平均值都是1,故而有
(2)
式中:sij(i,j=1,2,…,m)是矩陣X的協(xié)方差矩陣中的元素;rij為矩陣X的相關(guān)系數(shù)。下面求均值化后的矩陣Y中各個(gè)特征(即矩陣的列)的相關(guān)系數(shù)
(3)
均值化后特征之間的相關(guān)系數(shù)保持不變,表明均值化后保留了原始矩陣數(shù)據(jù)里的信息,不會(huì)影響訓(xùn)練樣本的質(zhì)量和分類(lèi)器的精度。使用旋轉(zhuǎn)森林對(duì)原始樣本數(shù)據(jù)進(jìn)行處理時(shí),用均值化后的矩陣Y代替矩陣X進(jìn)行PCA變換。
2.2 基分類(lèi)器構(gòu)建
構(gòu)建分類(lèi)器需要選擇合適的分類(lèi)算法,在機(jī)器學(xué)習(xí)領(lǐng)域分類(lèi)算法種類(lèi)繁多且有不同的適用范圍,但是大多數(shù)都是內(nèi)存駐留算法。本文選取以下幾個(gè)評(píng)估指標(biāo)作為基分類(lèi)器構(gòu)建算法的選擇標(biāo)準(zhǔn)[14]:①預(yù)測(cè)的準(zhǔn)確率為模型準(zhǔn)確地預(yù)測(cè)未知的或未出現(xiàn)過(guò)的數(shù)據(jù)類(lèi)別的能力;②分類(lèi)速度為構(gòu)建和使用分類(lèi)模型的時(shí)間開(kāi)銷(xiāo);③魯棒性為分類(lèi)模型的抗噪聲能力和對(duì)殘缺數(shù)據(jù)的預(yù)測(cè)能力;④可伸縮性為在較大數(shù)據(jù)量的情形下有效生成模型的能力;⑤可解釋性為分類(lèi)模型產(chǎn)生的規(guī)則提供的洞悉和理解的層次。
文獻(xiàn)[15]指出,沒(méi)有哪一種單一的分類(lèi)算法能在所有的網(wǎng)絡(luò)環(huán)境中都能取得比其他分類(lèi)算法更好的分類(lèi)效果。為了充分利用不同分類(lèi)算法之間的差異性和互補(bǔ)性,本文選取了C4.5決策樹(shù)、NB和SVM 3種具有代表性和較大差異性的分類(lèi)算法用于基分類(lèi)器的構(gòu)建。樸素貝葉斯算法設(shè)計(jì)簡(jiǎn)單、運(yùn)行速度快、抗噪性能好,被廣泛應(yīng)用于文本分類(lèi)領(lǐng)域,雖然樸素貝葉斯算法對(duì)屬性之間的獨(dú)立性要求較高,但是訓(xùn)練樣本經(jīng)過(guò)PCA變換后屬性之間的關(guān)聯(lián)性減弱。旋轉(zhuǎn)森林算法最初是針對(duì)決策樹(shù)算法設(shè)計(jì)的,決策樹(shù)算法在構(gòu)建分類(lèi)器時(shí)采用信息增益率選擇向下的分支屬性,在分類(lèi)精度和效率方面具有較好的折中,但是在實(shí)際運(yùn)用中容易產(chǎn)生過(guò)擬合現(xiàn)象且對(duì)連續(xù)屬性處理陡峭。SVM算法[16]建立在統(tǒng)計(jì)學(xué)習(xí)理論和結(jié)構(gòu)風(fēng)險(xiǎn)最小原理的基礎(chǔ)上,兼顧訓(xùn)練誤差和泛化能力,能夠有效處理非線(xiàn)性數(shù)據(jù),在樣本有限的情況下仍能取得較好的泛化性能,具有良好的穩(wěn)定性和可伸縮性。
為方便性起見(jiàn),人為設(shè)定每種分類(lèi)算法生成的基分類(lèi)器個(gè)數(shù)相同。基于改進(jìn)旋轉(zhuǎn)森林算法的基分類(lèi)器構(gòu)建過(guò)程如下。
輸入 原始訓(xùn)練集X=(xij)n×m,行為統(tǒng)計(jì)特征F=(f1,f2,…,fm),基分類(lèi)器個(gè)數(shù)l,特征集合劃分?jǐn)?shù)K。
輸出 基分類(lèi)器集合G={g1,g2,…,gl}。
構(gòu)建步驟為:
(1)按照上一小節(jié)給出的均值化方法對(duì)矩陣X進(jìn)行處理,生成數(shù)據(jù)矩陣Y;
(2)fori=1 tol;
(3)把F隨機(jī)劃分為K個(gè)子集(每次劃分均不同),每個(gè)子集中包含的特征數(shù)為M=m/K,如果不能整除則把余下幾個(gè)特征加入最后一個(gè)子集;
(4)fork=1 toK;
(5)對(duì)于第k個(gè)子集Fik,從Y中取出與Fik對(duì)應(yīng)的樣本數(shù)據(jù)Yik(即列),隨機(jī)選取Yik中75%的數(shù)據(jù),
(7)end;
(8)合并Ai1,Ai2,…,AiK生成第i個(gè)基分類(lèi)器對(duì)應(yīng)的旋轉(zhuǎn)矩陣
(10)在C4.5、SVM和NB算法中選擇一種分類(lèi)算法在訓(xùn)練集Yi上生成一個(gè)基分類(lèi)器;
(11)end。
2.3 動(dòng)態(tài)加權(quán)投票集成
基分類(lèi)器生成后,多數(shù)投票法是一種簡(jiǎn)單高效的集成方式,投票判決時(shí)每個(gè)分類(lèi)器賦予的權(quán)值正比于它在訓(xùn)練集上的分類(lèi)正確率。由于網(wǎng)絡(luò)流量的動(dòng)態(tài)變化,待檢測(cè)流量的統(tǒng)計(jì)特征的分布是變化的,因此每個(gè)基分類(lèi)器對(duì)網(wǎng)絡(luò)流量的檢測(cè)能力也是變化的,一種更為合理的加權(quán)方法應(yīng)該考慮當(dāng)前待檢測(cè)流量的統(tǒng)計(jì)特征的分布與訓(xùn)練集之間的關(guān)系。
本文提出一種基于實(shí)例動(dòng)態(tài)選擇的加權(quán)投票策略實(shí)現(xiàn)集成。首先對(duì)訓(xùn)練樣本集進(jìn)行處理,使用k均值算法把訓(xùn)練樣本聚類(lèi)成L個(gè)簇,計(jì)算每個(gè)簇的中心;然后統(tǒng)計(jì)每一個(gè)基分類(lèi)器對(duì)L個(gè)簇內(nèi)所有樣本分類(lèi)的結(jié)果,計(jì)算分類(lèi)正確率。
待分類(lèi)實(shí)例E的分類(lèi)過(guò)程如下。
步驟1 計(jì)算待分類(lèi)實(shí)例E與L個(gè)簇中心的距離,選擇距離最近的L1個(gè)簇;
步驟2 分別統(tǒng)計(jì)每個(gè)基分類(lèi)器對(duì)L1個(gè)簇內(nèi)所有樣本的分類(lèi)正確率βk(k=1,2,…,l),歸一化后即為投票權(quán)重
步驟3 每個(gè)基分類(lèi)器獨(dú)立地給出E的分類(lèi)結(jié)果,結(jié)合所賦予的投票權(quán)重實(shí)現(xiàn)集成分類(lèi)。分類(lèi)閾值可以根據(jù)實(shí)際的網(wǎng)絡(luò)環(huán)境設(shè)定,使得檢測(cè)的誤報(bào)率和漏報(bào)率達(dá)到較好的折中。一般把分類(lèi)結(jié)果大于0.5的數(shù)據(jù)流簇判定為木馬通信流量。
本文采用異構(gòu)歐氏距離來(lái)計(jì)算待分類(lèi)實(shí)例與聚類(lèi)簇中心的距離。待分類(lèi)實(shí)例E=(e1,e2,…,em)與某個(gè)聚類(lèi)簇的中心C=(c1,c2,…,cm)之間距離為
式中
3.1 實(shí)驗(yàn)環(huán)境與數(shù)據(jù)
為了驗(yàn)證本文提出的檢測(cè)模型的有效性,基于本模型構(gòu)建了木馬流量檢測(cè)系統(tǒng),在某實(shí)驗(yàn)室局域網(wǎng)出口處進(jìn)行實(shí)際測(cè)試,檢測(cè)系統(tǒng)環(huán)境部署如圖2所示。通過(guò)交換機(jī)的鏡像端口捕獲進(jìn)出局域網(wǎng)的網(wǎng)絡(luò)流量進(jìn)行檢測(cè),采用Alexa網(wǎng)站提供的訪問(wèn)量排名前1 000的域名對(duì)應(yīng)的IP地址生成白名單對(duì)網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行過(guò)濾,減輕后臺(tái)檢測(cè)程序處理的壓力。
實(shí)驗(yàn)測(cè)試主機(jī)60臺(tái),平均帶寬約為5 Mb/s,其中10臺(tái)主機(jī)植入木馬(控制端在局域網(wǎng)外)。為保證實(shí)驗(yàn)結(jié)果的說(shuō)服力和方便性,本文使用的木馬樣本全部來(lái)自互聯(lián)網(wǎng),包括灰鴿子、pcshare、Bifrost、Gh0st等國(guó)內(nèi)外常見(jiàn)木馬,隨機(jī)進(jìn)行各種操作生成木馬流量,正常流量由實(shí)驗(yàn)室互聯(lián)網(wǎng)出口流量生成,兩者混合生成訓(xùn)練樣本,其中正常數(shù)據(jù)流簇與木馬數(shù)據(jù)流簇的比例為8∶1。
圖2 木馬流量檢測(cè)系統(tǒng)環(huán)境部署
3.2 實(shí)驗(yàn)評(píng)估指標(biāo)和對(duì)比模型
本文采用入侵檢測(cè)領(lǐng)域常用的檢測(cè)率和誤報(bào)率作為檢測(cè)能力的評(píng)估指標(biāo),各項(xiàng)檢測(cè)指標(biāo)為:
數(shù)據(jù)流簇檢測(cè)率(detectionrate)設(shè)為
D=tt/nt
數(shù)據(jù)流簇誤報(bào)率(falsepositiverate)設(shè)為
F=ft/nn
式中:nt表示測(cè)試中所有的木馬通信數(shù)據(jù)流簇的個(gè)數(shù);nn表示所有的正常通信數(shù)據(jù)流簇的個(gè)數(shù);tt表示被正確識(shí)別的木馬通信數(shù)據(jù)流簇的個(gè)數(shù);ft表示正常通信數(shù)據(jù)流簇中被識(shí)別為木馬數(shù)據(jù)流簇的個(gè)數(shù)。
用于實(shí)驗(yàn)對(duì)比測(cè)試的集成方法包括Bagging[10]、Adaboost[11]、Rotboost[12]。3種集成方法選用相應(yīng)文獻(xiàn)中給出的最優(yōu)參數(shù),即迭代次數(shù)均為3,Rotboost和本文方法進(jìn)行旋轉(zhuǎn)變換時(shí)特征子集的大小固定為4。
3.3 實(shí)驗(yàn)結(jié)果分析
進(jìn)行實(shí)驗(yàn)測(cè)試時(shí),采集全網(wǎng)流量進(jìn)行檢測(cè)。為了測(cè)試檢測(cè)模型的檢測(cè)精度尤其是泛化能力,測(cè)試集中采集的部分木馬流量未參與訓(xùn)練。本文采用ROC曲線(xiàn)(receiveroperatingcharacteristiccurve,ROC)來(lái)評(píng)估集成學(xué)習(xí)方法的性能。ROC曲線(xiàn)在入侵檢測(cè)領(lǐng)域應(yīng)用廣泛,它體現(xiàn)了檢測(cè)率和誤報(bào)率之間的平衡,低于ROC曲線(xiàn)的區(qū)域(theareaunderROCcurve,AUC)的面積是評(píng)價(jià)集成學(xué)習(xí)方法的重
要指標(biāo),它的取值范圍是[0,1],AUC的面積越大,表示該集成學(xué)習(xí)方法的性能越好。
獲取訓(xùn)練集后,分別采用Bagging、Adaboost、Rotboost和本文提出的集成學(xué)習(xí)方法構(gòu)建檢測(cè)分類(lèi)模型,采用NaiveBayes、C4.5和SVM異構(gòu)集成的方式,每種不同類(lèi)型的基分類(lèi)器均為6個(gè)。測(cè)試時(shí)通過(guò)調(diào)整檢測(cè)的分類(lèi)閾值獲得每種集成學(xué)習(xí)方法的ROC曲線(xiàn),如圖3所示。
圖3 4種集成學(xué)習(xí)方法ROC曲線(xiàn)對(duì)比
由圖3可知,本文提出的木馬流量檢測(cè)模型與傳統(tǒng)的幾種集成學(xué)習(xí)方法相比具有更好的檢測(cè)精度和泛化性能,當(dāng)誤報(bào)率為1%左右時(shí),本文模型已經(jīng)達(dá)到93%左右的檢測(cè)率,體現(xiàn)了較好的分類(lèi)性能。對(duì)異構(gòu)集成和同構(gòu)集成的檢測(cè)效果進(jìn)行了對(duì)比測(cè)試,表1給出了分類(lèi)閾值為0.5時(shí)4種集成學(xué)習(xí)方法分別采用單一分類(lèi)算法集成和多種分類(lèi)算法集成的方式構(gòu)建的檢測(cè)模型的檢測(cè)率和誤報(bào)率的對(duì)比。由實(shí)驗(yàn)結(jié)果可知,對(duì)于每一種集成學(xué)習(xí)方法,異構(gòu)集成的方式均能取得比同構(gòu)集成更好的檢測(cè)效果。
針對(duì)傳統(tǒng)的集成學(xué)習(xí)方法運(yùn)用到木馬流量的檢測(cè)中存在對(duì)訓(xùn)練樣本要求過(guò)高、集成精度難以提升、泛化能力差的問(wèn)題,提出一種基于改進(jìn)旋轉(zhuǎn)森林算法的木馬流量集成分類(lèi)模型。首先利用改進(jìn)的旋轉(zhuǎn)森林算法對(duì)原始樣本數(shù)據(jù)進(jìn)行處理,
生成有差異性
的訓(xùn)練集,在保證基分類(lèi)器精度的同時(shí)增大了基分類(lèi)器之間的差異性;然后選取具有代表性和較大差異性的3種分類(lèi)算法構(gòu)建基分類(lèi)器;最后采用一種基于實(shí)例動(dòng)態(tài)選擇的加權(quán)投票策略方法實(shí)現(xiàn)集成。實(shí)驗(yàn)結(jié)果表明,與傳統(tǒng)的一些集成學(xué)習(xí)方法相比,本文提出的分類(lèi)模型具有更高的檢測(cè)精度和泛化性能,提高了基于通信行為分析的木馬檢測(cè)方法的實(shí)用性。下一步將從木馬通信行為特征提取和提高分類(lèi)模型的自適應(yīng)能力兩方面開(kāi)展研究,進(jìn)一步提高木馬流量檢測(cè)的準(zhǔn)確度和可信度。
[1] 國(guó)家互聯(lián)網(wǎng)應(yīng)急中心. 網(wǎng)絡(luò)安全信息與動(dòng)態(tài)周報(bào) [EB/OL]. (2014-11-06) [2014-11-18]. http:∥www.cert.org.cn/publish/main/uplood/File/2014CNCERT 44.pdf.
[2] 國(guó)家互聯(lián)網(wǎng)應(yīng)急中心. 2013年我國(guó)互聯(lián)網(wǎng)網(wǎng)絡(luò)安全態(tài)勢(shì)綜述 [EB/OL]. (2014-03-28) [2014-11-20]. http:∥www.cert.org.cn/publish/main/upload/File/CNC ERT%202013.pdf.
[3] ROESCH M. Snort-lightweight intrusion detection for networks [C]∥Proceedings of the LISA 13th Systems Administration Conference. Berkeley, CA, USA: USENIX, 1999: 229-238.
[4] TEGELER F, FU X, VIGNA G, et al. Botfinder: finding bots in network traffic without deep packet inspection [C]∥Proceedings of the 8th International Conference on Emerging Networking Experiments and Technologies. New York, USA: ACM, 2012: 349-360.
[5] 胥攀, 劉勝利, 蘭景宏, 等. 基于多數(shù)據(jù)流分析的木馬檢測(cè)方法 [J]. 計(jì)算機(jī)應(yīng)用研究, 2015, 32(3): 890-894. XU Pan, LIU Shengli, LAN Jinghong, et al. Trojan detection method based on analysis of multiple data flow [J]. Application Research of Computers, 2015, 32(3): 890-894.
[6] 李世淙, 云曉春, 張永錚. 一種基于分層聚類(lèi)方法的木馬通信行為檢測(cè)模型 [J]. 計(jì)算機(jī)研究與發(fā)展, 2012, 49(S2): 9-16. LI Shicong, YUN Xiaochun, ZHANG Yongzheng. A model of Trojan communication behavior detection based on hierarchical clustering technique [J]. Journal of Computer Research and Development, 2012, 49(S2): 9-16.
[7] KOTSIANTIS S. Combining bagging, boosting, rotation forest and random subspace methods [J]. Artificial Intelligence Review, 2011, 35(3): 223-240.
[8] KROGH A, VEDELSBY J. Neural network ensembles, cross validation, and active learning [C]∥Proceedings of the Annual Conference on Neural Information Processing Systems. Cambridge, MA, USA: MIT Press, 1995: 231-238.
[9] BüHLMANN P. Handbook of Computational Statistics [M]. Berlin, Germany: Springer, 2012: 985-1022.
[10]GARCIA N. Supervised projection approach for boosting classifiers [J]. Pattern Recognition, 2009, 42(9): 1742-1760.
[11]ZHANG Chunxia, ZHANG Jiangshe. Rotboost: a technique for combining rotation forest and adaBoost [J]. Pattern Recognition Letters, 2008, 29(10): 1524-1536.
[12]RODRIGUEZ J J, KUNCHEVA L I, ALONSO C J. Rotation forest: a new classifier ensemble method [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2006, 28(10): 1619-1630.
[13]高艷, 于飛. 一種用于綜合評(píng)價(jià)的主成分分析改進(jìn)方法 [J]. 西安文理學(xué)院學(xué)報(bào): 自然科學(xué)版, 2011, 14(1): 105-108. GAO Yan, YU Fei. A modified principal component analysis algorithm for comprehensive evaluation [J]. Journal of Xi’an University of Arts and Science: Natural Science, 2011, 14(1): 105-108.
[14]HAN J, KAMBER M. 數(shù)據(jù)挖掘概念與技術(shù) [M]. 范明, 孟小峰, 譯. 2版. 北京: 機(jī)械工業(yè)出版社, 2007: 185-188.
[15]CALLADO A, KELNER J, SADOK D, et al. Better network traffic identification through the independent combination of techniques [J]. Journal of Network and Computer Applications, 2010, 33(4): 433-446.
[16]VAPNIK V. The nature of statistical learning theory [M]. Berlin, Germany: Springer Verlag, 2000: 9-11.
(編輯 武紅江)
Research on Ensemble Classification Model of Trojan Traffic Detection
LAN Jinghong1,LIU Shengli1,2,WU Shuang1,WANG Dongxia1,2
(1. State Key Laboratory of Mathematical Engineering and Advanced Computing, The PLA Information Engineering University, Zhengzhou 450001, China; 2. Science and Technology on Information Assurance Laboratory, Beijing Institute of System and Engineering, Beijing 100083, China)
An ensemble classification model for Trojan traffic detection is proposed to solve the problem that traditional ensemble learning methods overly depend on training samples, have low classification precision and poor generalization ability when they are applied to the detection of Trojan traffic. Traffic statistics features between Trojan communication and normal communication are distinguished and then extracted to build training sets. Equalization method is introduced to improve the principal component transform of rotation forest algorithm, and the updated rotation forest algorithm is used to rotate original training samples. Then, base classifiers are constructed by using three classification algorithms: Naive Bayes, C4.5 decision tree and Support Vector Machine. Integration is realized and the Trojan traffic detection rules are eventually established by using a weighted voting strategy based on the dynamic choice of instance. Experimental results show that the model makes full use of the diversity of different training sets and the complementarity of heterogeneous classifiers, and that a 96.30% detection rate is reached while the false positive rate is not higher than 4.21%, that is, both the accuracy and the generalization ability of Trojan traffic detection are improved.
Trojan traffic; ensemble learning; rotation forest; heterogeneous classifier; weighted voting
2014-12-23。 作者簡(jiǎn)介:蘭景宏(1990—),男,碩士生;劉勝利(通信作者),男,副教授。 基金項(xiàng)目:國(guó)家科技支撐計(jì)劃資助項(xiàng)目(2012BAH47B01);國(guó)家自然科學(xué)基金資助項(xiàng)目(61271252);信息保障技術(shù)重點(diǎn)實(shí)驗(yàn)室開(kāi)放基金資助項(xiàng)目(KJ-14-105);上海市科研計(jì)劃資助項(xiàng)目(13DZ1108800)。
10.7652/xjtuxb201508014
TP393
A
0253-987X(2015)08-0084-06