吳亞楠, 王斌
(南方電網(wǎng)數(shù)字電網(wǎng)研究院有限公司, 廣東, 廣州 510000)
現(xiàn)今時(shí)代,互聯(lián)網(wǎng)為社會(huì)帶來了極大的影響,推動(dòng)社會(huì)進(jìn)入了高速發(fā)展階段。同時(shí),互聯(lián)網(wǎng)的出現(xiàn),也為當(dāng)今社會(huì)帶來了更多的便捷。由于互聯(lián)網(wǎng)自身存在的特性,其產(chǎn)品與技術(shù)迭代速度極快,導(dǎo)致互聯(lián)網(wǎng)用戶數(shù)量呈現(xiàn)爆發(fā)式激增。在用戶應(yīng)用互聯(lián)網(wǎng)的過程中,產(chǎn)生了海量的數(shù)據(jù)信息,例如股票交易、通信傳輸、消費(fèi)購(gòu)物等。隨著網(wǎng)絡(luò)規(guī)模的不斷擴(kuò)張,網(wǎng)絡(luò)攻擊手段也在不斷更新,在海量數(shù)據(jù)信息產(chǎn)生的過程中,數(shù)據(jù)信息安全問題也逐漸顯現(xiàn)。
近幾年,全球網(wǎng)絡(luò)安全事件逐年遞增。從2016年開始,網(wǎng)絡(luò)信息泄露事件呈倍數(shù)增加,不但雅虎、順豐這種公共網(wǎng)絡(luò)受到了黑客攻擊,連政府機(jī)要部門、科研機(jī)構(gòu)、高等院校等私有網(wǎng)絡(luò)也受到了威脅,造成了數(shù)十億用戶信息的泄露,用戶信息面臨著極大的危險(xiǎn),更有甚者遭到了網(wǎng)絡(luò)詐騙,損失了大量的財(cái)產(chǎn)資源。在如此嚴(yán)峻的網(wǎng)絡(luò)安全背景下,傳統(tǒng)網(wǎng)絡(luò)安全防御手段已經(jīng)無法滿足社會(huì)各個(gè)領(lǐng)域的需求,網(wǎng)絡(luò)安全入侵檢測(cè)系統(tǒng)應(yīng)運(yùn)而生,其能夠自動(dòng)地將網(wǎng)絡(luò)入侵威脅檢測(cè)出來,并做出相應(yīng)的防御或者破解操作,以此來保障網(wǎng)絡(luò)用戶信息的安全[1]。
就現(xiàn)有研究成果來看,現(xiàn)有網(wǎng)絡(luò)安全入侵檢測(cè)系統(tǒng)存在著誤報(bào)率高、檢測(cè)率低的缺陷,無法滿足現(xiàn)今網(wǎng)絡(luò)安全的需求,故提出基于信息熵的網(wǎng)絡(luò)安全入侵檢測(cè)系統(tǒng)設(shè)計(jì)研究。信息熵是一種對(duì)信息量的描述,能夠度量信息的分散與集中程度。通過信息熵能夠更好分析網(wǎng)絡(luò)信息在各個(gè)測(cè)度上的變化,從而提升網(wǎng)絡(luò)安全入侵檢測(cè)性能,為網(wǎng)絡(luò)安全提供更加有效地保障。
對(duì)于網(wǎng)絡(luò)安全入侵檢測(cè)來說,單純組合算法效果非常有限,故設(shè)計(jì)科學(xué)的、合理的架構(gòu),將多種算法有效地融合在一起,才能夠起到更好的網(wǎng)絡(luò)安全入侵檢測(cè)效果[2]。依據(jù)網(wǎng)絡(luò)安全入侵特點(diǎn),基于信息熵構(gòu)建網(wǎng)絡(luò)安全入侵檢測(cè)系統(tǒng)架構(gòu),如圖1所示。
圖1 網(wǎng)絡(luò)安全入侵檢測(cè)系統(tǒng)架構(gòu)
如圖1所示,網(wǎng)絡(luò)安全入侵檢測(cè)系統(tǒng)架構(gòu)由網(wǎng)絡(luò)信息采集模塊、網(wǎng)絡(luò)信息特征提取模塊、聚類降低維度模塊及網(wǎng)絡(luò)安全入侵檢測(cè)模塊組成。采集網(wǎng)絡(luò)信息,通過2v-gram技術(shù)提取網(wǎng)絡(luò)信息特征向量,根據(jù)信息熵聚類降維算法將高維數(shù)據(jù)轉(zhuǎn)換成低維數(shù)據(jù),通過SVM分類器設(shè)定入侵設(shè)局閾值,得到網(wǎng)絡(luò)安全入侵檢測(cè)結(jié)果。以圖1構(gòu)建的網(wǎng)絡(luò)安全入侵檢測(cè)系統(tǒng)架構(gòu)為基礎(chǔ),設(shè)計(jì)系統(tǒng)各個(gè)功能模塊,具體如下所示:
該模塊采用Jpcap網(wǎng)絡(luò)抓包中的Winpcap庫(kù)來獲取網(wǎng)絡(luò)信息數(shù)據(jù)包[3]。Winpcap庫(kù)由網(wǎng)絡(luò)、內(nèi)核與用戶層構(gòu)成,在采集網(wǎng)絡(luò)信息后,依據(jù)ACSⅡ表將數(shù)據(jù)包轉(zhuǎn)換為十進(jìn)制形式,如圖2所示。
圖2 網(wǎng)絡(luò)數(shù)據(jù)包結(jié)構(gòu)圖
圖2的網(wǎng)絡(luò)數(shù)據(jù)包主要包含兩部分,分別為首部與數(shù)據(jù)。其中,首部中存在20個(gè)字節(jié)是固定的,而數(shù)據(jù)部分則是所需的網(wǎng)絡(luò)信息。將網(wǎng)絡(luò)信息按照ACSⅡ表進(jìn)行轉(zhuǎn)換,方便后續(xù)模塊的使用與處理[4]。
網(wǎng)絡(luò)信息采集模塊獲取的網(wǎng)絡(luò)信息屬于高維數(shù)據(jù),并且包含大量的冗余數(shù)據(jù),為了簡(jiǎn)化網(wǎng)絡(luò)安全入侵檢測(cè)過程,提取網(wǎng)絡(luò)信息特征[5]。
此研究采用n-gram語言模型的2v-gram提取數(shù)據(jù)包中的有效信息,從而獲取有效網(wǎng)絡(luò)信息的出現(xiàn)頻率矩陣。n-gram語言模型出現(xiàn)頻率主要是通過滑動(dòng)窗口(長(zhǎng)度為n)來測(cè)量獲得的。窗口滑動(dòng)步長(zhǎng)為1字節(jié),在數(shù)據(jù)包上進(jìn)行順序滑動(dòng),同時(shí)計(jì)算256n個(gè)有效網(wǎng)絡(luò)信息的出現(xiàn)頻率。通過上述描述可知,n越大,網(wǎng)絡(luò)信息特征的結(jié)構(gòu)信息量越大[6]。為了解決上述網(wǎng)絡(luò)信息特征結(jié)構(gòu)信息量大的問題,測(cè)量有效信息中彼此分離v個(gè)位置的字節(jié)對(duì)出現(xiàn)頻率,從而更加有效地提取網(wǎng)絡(luò)信息特征。滑動(dòng)窗口大小設(shè)置為6,字節(jié)對(duì)間距v設(shè)置為4,首尾字節(jié)共同組成2v-gram字節(jié)對(duì),記為{G,g},并將其轉(zhuǎn)換為十進(jìn)制形式,記為{71,103},以此為基礎(chǔ),構(gòu)造網(wǎng)絡(luò)信息出現(xiàn)矩陣,計(jì)算網(wǎng)絡(luò)信息出現(xiàn)頻率矩陣[7]。
假設(shè)網(wǎng)絡(luò)有效信息為B=[b1,b2,…,bl],n-gram語言模型為β=[β1,β2,…,βn],需要注意的是n (1) 式中,l-n+1表示窗口在網(wǎng)絡(luò)有效信息集合上滑動(dòng)的總次數(shù)[8]。 依據(jù)式(1)結(jié)果計(jì)算2v-gram字節(jié)對(duì)出現(xiàn)頻率,表達(dá)式為 (2) 若字節(jié)對(duì)間距v>0,式(2)計(jì)算結(jié)果可以看作為從β1開始,到βv+2結(jié)束的(v+2)-gram分布的邊際概率[9]。 (2) 檢測(cè)率數(shù)據(jù)表 依據(jù)上述流程可知,網(wǎng)絡(luò)信息特征提取程序如圖3所示。 (a) 2v-gram出現(xiàn)矩陣 以上一模塊獲取的2v-gram出現(xiàn)頻率矩陣為基礎(chǔ),基于信息熵聚類算法對(duì)網(wǎng)絡(luò)信息進(jìn)行降低維度處理。 基于信息熵聚類降低緯度處理網(wǎng)絡(luò)信息,能夠通過有限步驟實(shí)現(xiàn)局部最優(yōu)聚類結(jié)果。另外,互信息損失不會(huì)受到簇重新分配的影響。在迭代過程中,每一次迭代過程均降低目標(biāo)函數(shù)值,促使算法能夠在有限迭代次數(shù)下獲取局部最小值。目標(biāo)函數(shù)可以看作為簇內(nèi)平均JS散度,算法將其最大化,故獲得的簇是高度分離的。 上一模塊采用2v-gram技術(shù)提取了2562個(gè)網(wǎng)絡(luò)信息特征,由于維數(shù)影響,很難構(gòu)造準(zhǔn)確的入侵檢測(cè)分類器,故基于信息熵對(duì)網(wǎng)絡(luò)信息特征進(jìn)行聚類降低緯度處理,具體過程如下所示: 假設(shè)聚類數(shù)量為k,隨機(jī)將網(wǎng)絡(luò)信息特征劃分為k個(gè)簇,采用迭代方式使特征從k個(gè)簇中的一個(gè)移動(dòng)至另一個(gè),直至聚類處理信息損失小于閾值τ為止[10]。信息熵聚類算法具備著提升聚類內(nèi)部JS散度的特性,經(jīng)過信息熵聚類算法后,網(wǎng)絡(luò)信息特征空間維數(shù)從1減少至k。 原始網(wǎng)絡(luò)信息特征空間中,向量xi的第j個(gè)特征反映的是文檔di中詞簇wj的出現(xiàn)頻率,記為f(wj/di),則k維特征空間中,文檔di表示方式為 (3) 式中,f(wh/di)表示的是文檔di中詞簇wh的出現(xiàn)頻率。 設(shè)定信息熵聚類算法目標(biāo)函數(shù)為 =I(C;w)-I(C;wC) (4) 式中,πj等于p(wj),KL表示的是散度距離度量,I(C;w)-I(C;wC)表示的是互信息損失。 簇類后驗(yàn)概率計(jì)算公式為 (5) 將式(5)計(jì)算結(jié)果代入算法目標(biāo)函數(shù)中,重復(fù)進(jìn)行迭代計(jì)算操作,直至目標(biāo)函數(shù)數(shù)值小于互信息損失閾值為止,至此完成了網(wǎng)絡(luò)信息特征的聚類降維處理,為后續(xù)網(wǎng)絡(luò)安全的入侵檢測(cè)提供更精確、更簡(jiǎn)單的數(shù)據(jù)支撐。 該模塊主要是依據(jù)上一模塊獲得的網(wǎng)絡(luò)信息特征構(gòu)造單類SVM入侵檢測(cè)分類器,依據(jù)組合規(guī)則融合單類SVM入侵檢測(cè)分類器,執(zhí)行組合入侵檢測(cè)分類器即可獲得網(wǎng)絡(luò)安全入侵檢測(cè)結(jié)果[11]。 單類SVM入侵檢測(cè)分類器在原始特征空間中分離出所需信息,采用高斯函數(shù)映射構(gòu)造一個(gè)超平面,滿足式(6): (6) 式中,W表示分離超平面的正交向量,ρ表示邊界,h表示訓(xùn)練模式總數(shù),C表示原始網(wǎng)絡(luò)信息特征空間中未被分離部分,ξi表示懲罰被拒絕模式的松弛變量,φ(xi)表示第i個(gè)訓(xùn)練模式。 通過求解式(9)即可獲得分離超平面,則單類SVM入侵檢測(cè)分類器決策函數(shù)為 (7) 式中,I表示指示函數(shù),ai表示計(jì)算系數(shù),由式(6)提供。 若fsvc(z)=1,則表示模式z為目標(biāo)類;若fsvc(z)=0,則表示模式z為入侵類[12]。 (8) 則依據(jù)式(8)計(jì)算結(jié)果制定網(wǎng)絡(luò)安全入侵檢測(cè)判定標(biāo)準(zhǔn)為:若yavg(x)<θ,則網(wǎng)絡(luò)信息x為入侵類;若yavg(x)≥θ,則網(wǎng)絡(luò)信息x為目標(biāo)類,其中θ指的是預(yù)定義閾值。 網(wǎng)絡(luò)安全入侵檢測(cè)流程如圖4所示。 如圖4所示,利用獲取到的網(wǎng)絡(luò)信息特征構(gòu)造超平面,設(shè)計(jì)單類SVM入侵檢測(cè)分類器決策函數(shù),為計(jì)算入侵類的概率分布,將不同單類SVM入侵檢測(cè)分類器進(jìn)行融合,得到檢測(cè)分類器yavg(x),設(shè)定網(wǎng)絡(luò)安全入侵閾值θ,若yavg(x)<θ,則表明該網(wǎng)絡(luò)信息為入侵信息,反之則為目標(biāo)信息。 圖4 網(wǎng)絡(luò)安全入侵檢測(cè)流程圖 通過上述功能模塊設(shè)計(jì),實(shí)現(xiàn)了網(wǎng)絡(luò)安全入侵檢測(cè)系統(tǒng)的運(yùn)行,為網(wǎng)絡(luò)、用戶安全提供了更加有力的保障,也為入侵檢測(cè)研究提供一定的參考。 為驗(yàn)證設(shè)計(jì)系統(tǒng)的網(wǎng)絡(luò)安全入侵檢測(cè)性能,采用Linux系統(tǒng)C語言編程軟件與MySQL數(shù)據(jù)庫(kù)進(jìn)行測(cè)試,具體測(cè)試過程如下所示: 測(cè)試環(huán)境是保障測(cè)試順利進(jìn)行的前提與基礎(chǔ),因此依據(jù)測(cè)試需求搭建測(cè)試環(huán)境。其中,測(cè)試硬件環(huán)境如圖5所示。 圖5 測(cè)試硬件環(huán)境 從圖5可以看出,測(cè)試硬件環(huán)境主要由服務(wù)器、計(jì)算機(jī)、交換機(jī)以及數(shù)據(jù)庫(kù)構(gòu)成。服務(wù)器A與服務(wù)器B是硬件環(huán)境中的關(guān)鍵部件,其參數(shù)配置情況如表1所示。 表1 服務(wù)器參數(shù)配置表 測(cè)試數(shù)據(jù)采用美國(guó)麻省理工學(xué)院實(shí)驗(yàn)室DARPA數(shù)據(jù)集,其包含實(shí)際攻擊程序,并提供了大量的評(píng)估數(shù)據(jù)。此測(cè)試在DARPA數(shù)據(jù)集中提取10種網(wǎng)絡(luò)安全入侵程序,具體如表2所示。 表2 網(wǎng)絡(luò)安全入侵程序表 依據(jù)上述搭建的測(cè)試環(huán)境,準(zhǔn)備入侵程序來進(jìn)行網(wǎng)絡(luò)安全入侵檢測(cè)測(cè)試,通過誤報(bào)率與檢測(cè)率反映系統(tǒng)入侵檢測(cè)性能,具體測(cè)試結(jié)果分析過程如下。 通過測(cè)試獲得測(cè)試結(jié)果如表3所示。 表3 測(cè)試結(jié)果表 每種入侵程序測(cè)試進(jìn)行100次,根據(jù)實(shí)驗(yàn)數(shù)據(jù)計(jì)算系統(tǒng)誤報(bào)率以及檢測(cè)率。如表3(1)所示,設(shè)計(jì)系統(tǒng)誤報(bào)率范圍為10.10%~20.10%,遠(yuǎn)遠(yuǎn)低于現(xiàn)有系統(tǒng);如表3(2)所示,設(shè)計(jì)系統(tǒng)檢測(cè)率范圍為75.46%~82.15%,遠(yuǎn)遠(yuǎn)高于現(xiàn)有系統(tǒng)。 通過上述測(cè)試結(jié)果可知,與現(xiàn)有系統(tǒng)平均數(shù)值相比較,本文所設(shè)計(jì)系統(tǒng)誤報(bào)率下降了10.88%,檢測(cè)率上升了28.07%,充分表明本文所設(shè)計(jì)系統(tǒng)網(wǎng)絡(luò)安全入侵檢測(cè)效果更好,能夠?yàn)榫W(wǎng)絡(luò)安全提供更加有效的保障。 本文研究引入信息熵聚類算法,設(shè)計(jì)了新的網(wǎng)絡(luò)安全入侵檢測(cè)系統(tǒng),實(shí)驗(yàn)驗(yàn)證得出該系統(tǒng)極大地降低了誤報(bào)率,提升了檢測(cè)率,為網(wǎng)絡(luò)安全提供性能更好的系統(tǒng)支撐,也為入侵檢測(cè)研究課題提供了一定的參考資料。1.3 聚類降低維度模塊
1.4 網(wǎng)絡(luò)安全入侵檢測(cè)模塊
2 系統(tǒng)性能測(cè)試
2.1 測(cè)試環(huán)境搭建
2.2 測(cè)試數(shù)據(jù)準(zhǔn)備
2.3 測(cè)試結(jié)果分析
3 總結(jié)