王美榮
(安徽新華學(xué)院信息工程學(xué)院,安徽合肥230088)
公共服務(wù)、網(wǎng)上銀行以及專門用于防御的系統(tǒng)等往往是攻擊者的入侵目標(biāo)[1],準確地檢測惡意入侵尤為重要[2]。網(wǎng)絡(luò)入侵檢測系統(tǒng)是一種硬件/軟件,用于在入侵者嘗試入侵系統(tǒng)時發(fā)出警報。目前入侵檢測方法主要有誤用和異常檢測[3]。誤用檢測系統(tǒng)為了分析數(shù)據(jù)流中的簽名和信息,需要對數(shù)據(jù)包進行深度檢查。該方法雖然有效,但受到一些限制,例如惡意數(shù)據(jù)包的簽名可能過時或打開每個數(shù)據(jù)包會帶來龐大的計算開銷。數(shù)據(jù)挖掘的方法被廣泛用于入侵檢測[4-9],本文結(jié)合單分類支持向量機和軟間隔支持向量機的優(yōu)點,提出了一種基于增強支持向量機的分類方法。
本網(wǎng)絡(luò)入侵檢測系統(tǒng)結(jié)構(gòu)如圖1所示。系統(tǒng)主要由交換機、數(shù)據(jù)流分析模塊以及惡意數(shù)據(jù)流數(shù)據(jù)庫3個部分組成。交換機負責(zé)將互聯(lián)網(wǎng)的數(shù)據(jù)包通過外部接口路由到內(nèi)部的局域網(wǎng)。數(shù)據(jù)流分析模塊負責(zé)周期性地收集數(shù)據(jù)流信息,并對其進行分析以得到統(tǒng)計信息(如表1所示)。惡意數(shù)據(jù)流數(shù)據(jù)庫是用來儲存已經(jīng)經(jīng)過分類的數(shù)據(jù)流特征以及系統(tǒng)的相關(guān)參數(shù)。數(shù)據(jù)流分析模塊采用可配置的數(shù)據(jù)挖掘算法完成數(shù)據(jù)流的分類,本文選擇了支持向量機作為分類算法。該模塊加載利用支持向量機算法訓(xùn)練好的模型,結(jié)合數(shù)據(jù)流的統(tǒng)計信息,以此判斷數(shù)據(jù)流是否屬于惡意入侵數(shù)據(jù)流。結(jié)合分類結(jié)果,控制器可以決定如何處理數(shù)據(jù)流,例如,控制器可以立即阻止惡意數(shù)據(jù)流以防止可能的進一步感染,或?qū)⒘髁繌?fù)制到檢查器以進行分析。
圖1 系統(tǒng)架構(gòu)
表1 數(shù)據(jù)流統(tǒng)計信息
本系統(tǒng)工作原理如下:當(dāng)數(shù)據(jù)流經(jīng)過交換機時,如果交換機沒有任何關(guān)于數(shù)據(jù)流的路由規(guī)則,它會向控制器請求轉(zhuǎn)發(fā)規(guī)則。控制器獲取該數(shù)據(jù)流的相關(guān)信息并計算路由規(guī)則,然后將規(guī)則發(fā)送回交換機,交換機再轉(zhuǎn)發(fā)或管理相應(yīng)的數(shù)據(jù)包。數(shù)據(jù)流的特征元組定義為源IP地址、目的IP地址、源TCP/UDP端口、目的TCP/UDP端口、協(xié)議類型,其特征都從該數(shù)據(jù)流中第一個數(shù)據(jù)包的IP、TCP/UDP頭部進行抽取。交換機使用給定的規(guī)則檢測數(shù)據(jù)流,對于每一個數(shù)據(jù)流的第一個數(shù)據(jù)包,交換機都會抽取該數(shù)據(jù)流的特征。經(jīng)過一段時間之后,控制器會向交換機發(fā)送統(tǒng)計信息的請求,以便收集經(jīng)過交換機的數(shù)據(jù)流統(tǒng)計信息(數(shù)據(jù)包數(shù)量、字節(jié)數(shù)、數(shù)據(jù)流的長度)??刂破鲿罁?jù)交換機發(fā)送的統(tǒng)計信息計算字節(jié)速率、數(shù)據(jù)包速率以及數(shù)據(jù)包平均長度,然后將每個數(shù)據(jù)流分類為惡意入侵數(shù)據(jù)流或正常數(shù)據(jù)流。
與正常數(shù)據(jù)流相比,惡意入侵數(shù)據(jù)流的數(shù)量相對較少。單分類支持向量機中的單個分類器不一定能最大化原點和離群點之間的距離。針對此缺點,通過修改軟間隔支持向量機提出了一種能實現(xiàn)具有單分類支持向量機優(yōu)勢的增強支持向量機。增強支持向量機不僅比軟間隔支持向量機具有更高的檢測率和處理性能,而且具有單分類支持向量機無監(jiān)督學(xué)習(xí)的特征。將軟間隔支持向量機中的偏差項刪除,可以得到以下的問題:
其中,w是可調(diào)的權(quán)重向量,b是偏差項,ξik是誤差項,C是誤差項的權(quán)重,xi、yi分別是訓(xùn)練數(shù)據(jù)集的橫、縱坐標(biāo),‖w‖2=wTxi+b。在軟間隔支持向量機中,偏差項通常與原點和超平面之間的距離有關(guān)。隨著偏差項的減少,超平面會逼近單分類支持向量機分類器的原點。通過觀察軟間隔支持向量機和單分類支持向量機,可以得到以下的近似關(guān)系:
其中,l是數(shù)據(jù)集樣本數(shù)量,v是異常值的權(quán)重參數(shù),p是類似w的權(quán)重。在(2)式中,C用來調(diào)整訓(xùn)練誤差以在原點和超平面之間獲得最大距離。在單分類支持向量機中,為了使原點和超平面之間的距離最大化,參數(shù)‖w‖必須減小并且參數(shù)ρ必須增大與離群點有關(guān),因此也必須減少。因此,可以通過控制軟間隔支持向量機的參數(shù)C來將每個項近似為相似的值。在(3)式中,ρ是用于使原點和超平面之間的邊緣最大化的參數(shù),我們不需要最大化ρ值,因為異常數(shù)據(jù)可以通過靠近原點的超平面進行分類,可以把ρ值看作是一個很小的數(shù)字,最終得到一個增強支持向量機如下:
使用圖1所示的架構(gòu)來評估本文算法的性能。為了調(diào)整和測試流量分析器,通過模擬網(wǎng)絡(luò)的行為來生成數(shù)據(jù)流,以此作為實驗的數(shù)據(jù)集。數(shù)據(jù)流中既包含惡意軟件產(chǎn)生的惡意入侵數(shù)據(jù)流,也有正常數(shù)據(jù)流。
實驗數(shù)據(jù)集中的惡意入侵數(shù)據(jù)流是由表2列出的惡意軟件所產(chǎn)生。
表2 產(chǎn)生惡意數(shù)據(jù)流的軟件
正常數(shù)據(jù)流是實驗室網(wǎng)絡(luò)捕獲的所有數(shù)據(jù)流。為了確保所捕獲的數(shù)據(jù)流中不含有惡意數(shù)據(jù)流,在交換機上進行了相關(guān)配置,以便在特定物理端口上轉(zhuǎn)發(fā)所有流量。將這個端口連接到一臺配置了虛擬交換機的電腦上,該交換機將來自網(wǎng)卡的流量轉(zhuǎn)發(fā)到與路由器相連的網(wǎng)卡;然后,將流量復(fù)制到與探測器相連的本地端口。
性能分析的第一步是找出影響分類結(jié)果的相關(guān)屬性,即統(tǒng)計信息?,F(xiàn)有的研究已經(jīng)提出了不同的特征排序和選擇技術(shù),本文使用信息增益(Information Gain,IG)作為選擇屬性的指標(biāo)。信息增益的計算公式如下所示:
I G=H(Y ) -H( Y X ) =H(X ) -H( X Y),(5)其中,H( Y )是指屬性Y的信息熵,H( Y X)是在X條件下Y的熵。觀察X后獲得的關(guān)于Y的信息等于觀察Y后獲得的關(guān)于X的信息,即H( Y X)=H( X Y)。通過信息增益,可以獲得每個屬性所蘊含的信息,在對這些屬性進行排序后就可以得知屬性的重要性。各種屬性的信息增益均值如表3所示。本文系統(tǒng)所使用的屬性(統(tǒng)計信息)以粗體顯示,它們具有較高的平均值,因此選擇這些屬性(統(tǒng)計信息)進行入侵檢測能提高算法的準確性和效率。
表3 各種統(tǒng)計信息的信息增益
采用真陽性(將數(shù)據(jù)流分類給正確的類別)和假陽性(將數(shù)據(jù)流分類到錯誤的類別)兩個指標(biāo)將分類結(jié)果與實際情況進行比較,以評估分類器的性能。從數(shù)據(jù)集中提取不同百分比(33%和50%)作為訓(xùn)練樣本來進行支持向量機訓(xùn)練。將本文提出的入侵檢測系統(tǒng)與基于單分類支持向量機的系統(tǒng)、基于貝葉斯的系統(tǒng)進行比較,結(jié)果如表4所示。從表4可知,增強支持向量機分類器都可以獲得超過98%的真陽性。
數(shù)據(jù)挖掘方法在解決網(wǎng)絡(luò)安全問題(包括網(wǎng)絡(luò)入侵檢測)方面凸顯了其重要性。為了準確高效地區(qū)分惡意入侵數(shù)據(jù)流和正常數(shù)據(jù)流,本文提出了一種基于增強支持向量機的入侵檢測系統(tǒng)。本系統(tǒng)交換機負責(zé)收集從網(wǎng)絡(luò)流中推斷信息所需的特征,控制器包含一個可配置的機器學(xué)習(xí)模塊,從交換機提取的功能開始,通過計算完成所需功能的數(shù)量,并確定數(shù)據(jù)流是否受到惡意軟件的影響。本文提出的方案旨在阻止網(wǎng)絡(luò)內(nèi)部的惡意數(shù)據(jù)流泛濫,該系統(tǒng)將數(shù)據(jù)平面與控制平面分離,具有高擴展性。使用真實的數(shù)據(jù)流驗證了本文系統(tǒng)是有效性。實驗性能評估顯示,本文的系統(tǒng)與單分類支持向量機以及貝葉斯方法相比具有一定的優(yōu)越性。