楊碎明,曹雅蓉
(1.西安交通工程學(xué)院中興通信學(xué)院,陜西西安 710300;2.鳳翔縣職業(yè)教育中心,陜西鳳翔 721400)
互聯(lián)網(wǎng)不斷發(fā)展給人們的生產(chǎn)與生活提供便利的同時(shí)也增加了網(wǎng)絡(luò)安全隱患。網(wǎng)絡(luò)攻擊是當(dāng)前互聯(lián)網(wǎng)所主要面臨的安全問(wèn)題,其主要是通過(guò)入侵個(gè)人賬號(hào)等方法達(dá)到隱私信息盜取及傳播等多種目的。因此,對(duì)網(wǎng)絡(luò)流量數(shù)據(jù)進(jìn)行分析,判定服務(wù)器是否被入侵已經(jīng)成為了網(wǎng)絡(luò)安全監(jiān)測(cè)的重要手段。現(xiàn)階段,對(duì)異常流量進(jìn)行特征選擇方法的研究較多,例如任春雷等人提出了一種基于改進(jìn)特征選擇法的光纖網(wǎng)絡(luò)流量異常監(jiān)測(cè)方法[1]。該方法首先通過(guò)分光方式分析研究網(wǎng)絡(luò)流量,獲得網(wǎng)絡(luò)流量的時(shí)間序列,并對(duì)各個(gè)時(shí)間序列之間關(guān)系進(jìn)行描述,隨后采用特征選擇方法獲取異常流量,并且使用聚類(lèi)算法對(duì)提取到的異常流量進(jìn)行處理以達(dá)到過(guò)濾異常流量數(shù)據(jù)的目的。該方法能夠有效監(jiān)測(cè)流量的異常變化,但是復(fù)雜程度較高、效率低下;陳露露等人提出了一種基于ME-PGNMF 的異常流量檢測(cè)方法[2],該方法將網(wǎng)絡(luò)流量數(shù)據(jù)映射為多維特征熵矩陣,并采用梯度投影分解法分解特征熵矩陣,將正常流量和異常流量的子空間分離,最后使用多元控制方法檢測(cè)出異常流量。該方法在低速分布式拒絕攻擊方面的檢測(cè)效果較好,且對(duì)蠕蟲(chóng)的攻擊較為敏感,但不適用于精準(zhǔn)度要求高的應(yīng)用中。
因此,本文提出基于集成分類(lèi)器的網(wǎng)絡(luò)異常流量特征選擇模型設(shè)計(jì)方法。集成分類(lèi)器通過(guò)將多個(gè)分類(lèi)器的結(jié)果組合對(duì)同一問(wèn)題進(jìn)行處理,實(shí)現(xiàn)從弱到強(qiáng)的轉(zhuǎn)化,能夠使特征選擇效果得到提升。
網(wǎng)絡(luò)流量是通過(guò)NetFlow采集獲得的,其中包括源IP、源端口、目的IP、目的端口、字節(jié)數(shù)和分組數(shù)等。將流量測(cè)量數(shù)據(jù)作為一種離散信源[3],將網(wǎng)絡(luò)流量的特征屬性視為一組隨機(jī)事件,以此獲取其信息熵。信息熵能夠理解為同一屬性的數(shù)據(jù)分散和集中程度[4]。數(shù)據(jù)越集中,則其熵值越小。
假設(shè)存在m個(gè)一維特征集合mDi={dij}(i=1,…m;j=1,…,yi),其中i為特征參數(shù),dij表示i的第j個(gè)值流量的大小。用Y={yi}表示特征的統(tǒng)計(jì)集,yi表示統(tǒng)計(jì)過(guò)程中不重復(fù)的特征數(shù)量。則i的特征熵為:
公式(1)中,Si=dij為統(tǒng)計(jì)時(shí)間內(nèi)i的總分組數(shù)。
令m=5,Di(i=1,…,5)表示協(xié)議類(lèi)型、目的IP、目的端口、源IP、源端口5 個(gè)常用流量統(tǒng)計(jì)特征。通過(guò)公式(1)可以計(jì)算出源IP和目的IP的地址熵以及源端口和目的端口的地址熵和協(xié)議類(lèi)型熵。在此基礎(chǔ)上統(tǒng)計(jì)出統(tǒng)計(jì)時(shí)間內(nèi)流量特征參數(shù)的分布情況,然后采用一次指數(shù)平滑法[5]預(yù)測(cè)一定時(shí)間段內(nèi)正常流量的特征參數(shù),表示為:
公式(2)中,yt、yt-1分別表示t時(shí)刻和t-1 時(shí)刻正常流量的預(yù)測(cè)值,a 表示平滑系數(shù),xt-1表示t-1 歷史數(shù)據(jù)的觀測(cè)值。令Hti表示t時(shí)間段內(nèi)i的特征熵表示t時(shí)間段內(nèi)i的特征熵預(yù)測(cè)值,則通過(guò)計(jì)算可獲得如下:
公式(4)中,一個(gè)觀測(cè)周期是由k個(gè)統(tǒng)計(jì)間隔組成的。表示初始平滑值,可用前一周期的后幾個(gè)觀測(cè)值的平均值來(lái)代替。a的取值是由時(shí)間序列變化特征決定的[6]。正常流量的時(shí)間序列波動(dòng)較小,因此a的值應(yīng)小一些。假設(shè)σij為時(shí)刻t內(nèi)i的特征熵標(biāo)準(zhǔn)差;Tij表示t時(shí)刻i的特征熵取值區(qū)間,則:
公式(5)中,i=1,…,4。因此,在t時(shí)刻內(nèi)i的熵值正常取值范圍為,當(dāng)時(shí),則表示網(wǎng)絡(luò)流量出現(xiàn)異常。
假設(shè)網(wǎng)絡(luò)中流量的儲(chǔ)存間隔為固定的[7],則每隔一段時(shí)間將上文獲得的五元組進(jìn)行分享,并且將S1…St作為觀測(cè)值,得到的各間隔內(nèi)的流量特征集合。將函數(shù)F( )作為異常流量監(jiān)測(cè)器,流量S={Si-k,…,St}作為輸入項(xiàng),則輸出的非負(fù)值為t為固定時(shí)間間隔內(nèi)的異常情況。將含有異常流量的集合記為s,通過(guò)函數(shù)F( )計(jì)算獲得的函數(shù)值則為異常值Fs=F(s)。若FA為流量是否異常的判定條件,則當(dāng)Fs>FA時(shí),即為異常流量。
獲得異常流量集后,通過(guò)集成分類(lèi)器對(duì)其進(jìn)行特征選擇。本文在構(gòu)建集成分類(lèi)器過(guò)程中主要從兩個(gè)方面出發(fā),一是集成分類(lèi)器的生成方法,二是集成分類(lèi)方法。分類(lèi)器生成的過(guò)程如下:
(1)通過(guò)對(duì)異常流量集中的數(shù)據(jù)進(jìn)行重新采樣,獲得多元化的訓(xùn)練集,隨后采用分類(lèi)學(xué)習(xí)方法生成存含有差異的基分類(lèi)器,并對(duì)基分類(lèi)器進(jìn)行集成處理。
(2)分類(lèi)器模型的參數(shù)選擇,在使用集成分類(lèi)器進(jìn)行分類(lèi)學(xué)習(xí)時(shí),參數(shù)的選擇會(huì)直接決定分類(lèi)器的效果。
(3)構(gòu)建不同類(lèi)型的集成分類(lèi)器,其中包含同構(gòu)集成和異構(gòu)集成[8]。同構(gòu)集成指的是對(duì)使用相同方法構(gòu)建的分類(lèi)器進(jìn)行集成的分類(lèi)器。異構(gòu)集成指的是對(duì)采用不同分類(lèi)方法構(gòu)建的分類(lèi)器進(jìn)行集成的分類(lèi)器。
本文采用的集成分類(lèi)方法為SVM(Support Vector Machine)算法,SVM算法是以結(jié)構(gòu)風(fēng)險(xiǎn)最小化為理論依據(jù),通過(guò)適度調(diào)節(jié)模型復(fù)雜度和學(xué)習(xí)能力之間的關(guān)系,使分類(lèi)能力到最優(yōu)化。SVM 方法主要需要考慮以下幾種情況:線性可分情況、線性不可分情況和非線性情況[9]。
線性可分情況的分類(lèi)器的決策邊界可通過(guò)下式表達(dá):
公式(6)中,W、b分別表示適度調(diào)節(jié)模型與學(xué)習(xí)函數(shù)。其平面訓(xùn)練集如圖1所示,圖1中H、H1、H2為決策邊界。
圖1 線性可分SVM的決策邊界
對(duì)公式(8)進(jìn)行求偏導(dǎo)后,使用二次規(guī)劃技術(shù)λi對(duì)進(jìn)行求解[11],求出分類(lèi)函數(shù):
線性不可分情況的數(shù)據(jù)集和線性可分?jǐn)?shù)據(jù)集相似如圖2所示,二者不同之處在于圖2中右上方的分類(lèi)圓中混有方形,導(dǎo)致原本的線性可分問(wèn)題轉(zhuǎn)變成了求解不可分問(wèn)題。
圖2 線性不可分的SVM決策邊界
因此,本文主要使用軟邊緣對(duì)其進(jìn)行求解,將圖2中的方形數(shù)據(jù)作為離散數(shù)據(jù),將其忽略后即可構(gòu)建最優(yōu)的分割平面。將正直松弛項(xiàng)ξ引入約束條件中,可得:
則線性不可分的約束拉格日朗函數(shù)λi可以表示為:
SVM 應(yīng)用于非線性情況上時(shí),需要將數(shù)據(jù)的原有坐標(biāo)空間X映射至高維空間φ(x)中,使其映射后的坐標(biāo)空間為線性可分,設(shè)φ(x)為能夠?qū)ζ溥M(jìn)行變換的合適函數(shù)數(shù)據(jù)集,則通過(guò)建立一個(gè)線性決策邊界,即可實(shí)現(xiàn)按類(lèi)別劃分樣本。
線性決策邊界的形式可以表示為:
其優(yōu)化問(wèn)題與線性可分情況相同,受限于:
拉格朗日的乘子可以表示為:
最終可獲得決策函數(shù)為:
由于空間向量φ(x)φ(z)的計(jì)算較為困難,因此本文使用核函數(shù)對(duì)其進(jìn)行計(jì)算,避免可能存在的維災(zāi)難問(wèn)題[12],核函數(shù)的數(shù)學(xué)表達(dá)式為:
通過(guò)核函數(shù)計(jì)算獲得的決策函數(shù)為:
集成分類(lèi)器構(gòu)建完成后,通過(guò)兩階段特征選擇方法對(duì)異常流量數(shù)據(jù)進(jìn)行兩次篩選,從原始數(shù)據(jù)集中選出符合要求的子集。傳統(tǒng)的Filter特征選擇方法的處理速度較快,但是準(zhǔn)確度較低,Wrapper方法的精準(zhǔn)度較高,但處理速度較慢,因此本文通過(guò)結(jié)合這兩種方法的優(yōu)勢(shì)進(jìn)行異常流量的特征選擇。
兩階段特征選擇的具體過(guò)程如下:選擇ilter 方法對(duì)異常流量訓(xùn)練樣本進(jìn)行特征選擇,獲得訓(xùn)練子集,隨后使用Wrapper 方法對(duì)獲得的訓(xùn)練子集進(jìn)行再一次選擇,輸出最終結(jié)果。
為驗(yàn)證本文模型設(shè)計(jì)方法的有效性,進(jìn)行仿真實(shí)驗(yàn)。本文以Matlab 2015b 為實(shí)驗(yàn)平臺(tái),實(shí)驗(yàn)數(shù)據(jù)集中包含4940 個(gè)訓(xùn)練數(shù)據(jù)和3110個(gè)測(cè)試數(shù)據(jù),共有41種特征,數(shù)據(jù)類(lèi)型如表1所示。
表1 數(shù)據(jù)類(lèi)型統(tǒng)計(jì)表
采用3種常用指標(biāo)進(jìn)行不同方法的性能評(píng)估,分別為檢測(cè)率、誤報(bào)率、約登指數(shù)和陽(yáng)性似然比,同時(shí)使用時(shí)間效率來(lái)檢測(cè)運(yùn)行速度。對(duì)指標(biāo)進(jìn)行描述如下:
I表示正常行為,I表示異常行為,A和A分別表示被選擇出和未被選擇出的異常特征。檢測(cè)率用Rd表示,指的是選擇出的異常流量特征和全部異常流量特征的比率。誤報(bào)率用Rf+來(lái)表示,指的是未選擇出的異常流量特征和全部異常流量特征的比率。陽(yáng)性釋然比用P來(lái)表示,指的是檢測(cè)率和誤報(bào)率的比率。約登指數(shù)用Q來(lái)表示,指的是檢測(cè)率與誤報(bào)率之差。陽(yáng)性似然比的結(jié)果越趨近于正無(wú)窮證明特征選擇的效果越好。約登指數(shù)的取值范圍在-1~1之間,其數(shù)值越大表示特征選擇的效果越好,當(dāng)該值為0 時(shí),表示預(yù)測(cè)值近似于隨機(jī)值,當(dāng)該值為-1 時(shí)則表示隨機(jī)值要高于預(yù)測(cè)值。4種指標(biāo)的數(shù)學(xué)表達(dá)式為:
將本文模型設(shè)計(jì)方法和改進(jìn)特征選擇方法、基于MEPGNMF 方法進(jìn)行對(duì)比分析實(shí)驗(yàn)。表2為不同閾值下,三種方法的運(yùn)行時(shí)間效率對(duì)比。
表2 兩種方法的運(yùn)行時(shí)間效率對(duì)比
從表2中可以看出,在不同閾值的條件下,本文方法的運(yùn)行時(shí)間均優(yōu)于傳統(tǒng)方法。
圖3、圖4、圖5、圖6分別為三種方法的檢測(cè)率誤報(bào)率、陽(yáng)性似然比、約登指數(shù)對(duì)比圖。
從圖3中可以看出,本文設(shè)計(jì)方法在不同閾值下均能獲得較好的結(jié)果,實(shí)驗(yàn)效果幾乎不受閾值影響,而其余兩種的準(zhǔn)確率完全取決于閾值,當(dāng)閾值選取合適時(shí),才能有較好表現(xiàn)。從圖4中可以看出,本文設(shè)計(jì)方法的誤報(bào)率更小,選擇效果更好。從圖5、圖6中可以看出,本文設(shè)計(jì)方法的陽(yáng)性似然比、約登指數(shù)均優(yōu)于其余兩種方法,說(shuō)明本文所提出的基于集成分類(lèi)器的網(wǎng)絡(luò)異常流量特征選擇模型設(shè)計(jì)方法的準(zhǔn)確率與效率較優(yōu)。
圖3 檢測(cè)率對(duì)比圖
圖4 誤報(bào)率對(duì)比圖
圖5 陽(yáng)性似然比對(duì)比圖
圖6 約登指數(shù)對(duì)比圖
對(duì)網(wǎng)絡(luò)異常流量特征進(jìn)行選擇,能夠更好地監(jiān)測(cè)網(wǎng)絡(luò)情況,解決網(wǎng)絡(luò)安全問(wèn)題,因此本文設(shè)計(jì)了一種基于集成分類(lèi)器的網(wǎng)絡(luò)異常流量特征選擇模型,通過(guò)仿真實(shí)驗(yàn)證明本文提出的模型設(shè)計(jì)方法的各項(xiàng)指標(biāo)均優(yōu)于傳統(tǒng)方法,且特征選擇的效率更高,更具實(shí)際應(yīng)用價(jià)值。
對(duì)下一步工作進(jìn)行的總結(jié)如下:
(1)本文采用的SVM 算法中的參數(shù)需要手動(dòng)調(diào)整,下一步需要對(duì)特征參數(shù)和算法相關(guān)性進(jìn)行分析,實(shí)現(xiàn)參數(shù)自適應(yīng)調(diào)整。
(2)考慮到高速網(wǎng)絡(luò)對(duì)異常流量的處理要求,下一步需要應(yīng)結(jié)合流量采樣技術(shù)和硬件處理平臺(tái),深入研究高速網(wǎng)絡(luò)條件下,異常流量特征選擇模型的改進(jìn)方法。