張雅茹
(連云港開(kāi)放大學(xué) 繼續(xù)教育學(xué)院,江蘇 連云港 222000)
大數(shù)據(jù)時(shí)代,海量數(shù)據(jù)中隱藏著的大量攻擊性異常行為數(shù)據(jù)對(duì)網(wǎng)絡(luò)安全造成重大隱患,而入侵檢測(cè)技術(shù)能夠?yàn)閿?shù)據(jù)安全提供保障[1]。針對(duì)現(xiàn)有網(wǎng)絡(luò)異常行為檢測(cè)技術(shù)中因數(shù)據(jù)不平衡而導(dǎo)致召回率低的問(wèn)題,楊宏宇等人提出一種基于逆向習(xí)得推理的異常行為檢測(cè)模型,實(shí)驗(yàn)結(jié)果表明,該模型在數(shù)據(jù)不平衡時(shí)仍具有較高的召回率和檢測(cè)精度[2]。針對(duì)現(xiàn)有網(wǎng)絡(luò)流量異常檢測(cè)技術(shù)對(duì)網(wǎng)絡(luò)環(huán)境動(dòng)態(tài)變化適應(yīng)性差的問(wèn)題,蔣華團(tuán)隊(duì)提出一種自適應(yīng)閾值的網(wǎng)絡(luò)流量異常檢測(cè)方法,研究結(jié)果表明,該檢測(cè)方法對(duì)網(wǎng)絡(luò)異常流量具有較高的檢測(cè)精度[3]。在關(guān)于網(wǎng)絡(luò)異常檢測(cè)技術(shù)的研究中,較少有學(xué)者用二分K-means 算法解決正常行為特征行為模型效率低的問(wèn)題,基于此,研究提出以改進(jìn)后的二分K-means 算法來(lái)構(gòu)建正常行為特征訓(xùn)練集模型,并在此基礎(chǔ)上設(shè)計(jì)出網(wǎng)絡(luò)異常檢測(cè)算法ITCM-KNN,期望實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)異常行為數(shù)據(jù)的高效檢測(cè)。
網(wǎng)絡(luò)異常檢測(cè)技術(shù)是根據(jù)正常的網(wǎng)絡(luò)數(shù)據(jù)集建立模型,然后將待檢測(cè)的數(shù)據(jù)與模型進(jìn)行比對(duì)來(lái)判斷數(shù)據(jù)是否異常,異常檢測(cè)能夠檢測(cè)出未知的異常行為數(shù)據(jù),甚至察覺(jué)到潛在的網(wǎng)絡(luò)攻擊行為,因此常被用于進(jìn)行網(wǎng)絡(luò)安全監(jiān)測(cè)[4-5]。大數(shù)據(jù)時(shí)代下,隨著網(wǎng)絡(luò)數(shù)據(jù)不斷更迭,傳統(tǒng)異常檢測(cè)方法效率低下、誤報(bào)率較高,難以有效區(qū)分攻擊類(lèi)型和正常類(lèi)型,基于此,研究提出基于改進(jìn)二分K-means 算法的網(wǎng)絡(luò)異常檢測(cè)模型。首先利用二分K-means 聚類(lèi)算法來(lái)對(duì)海量數(shù)據(jù)進(jìn)行挖掘分析從而構(gòu)建出正常網(wǎng)絡(luò)行為模型,其次結(jié)合正常網(wǎng)絡(luò)行為模型設(shè)計(jì)出檢測(cè)算法ITCM-KNN,該模型如圖1 所示。

圖1 基于改進(jìn)二分K-means 算法的網(wǎng)絡(luò)異常檢測(cè)算法模型示意圖
聚類(lèi)分析是在未給定訓(xùn)練目標(biāo)的情況下按照“簇內(nèi)樣本相似度最大,簇間樣本差異度最大”的規(guī)則對(duì)所收集的數(shù)據(jù)對(duì)象進(jìn)行分類(lèi)[6-7]。K-means劃分聚類(lèi)算法因其簡(jiǎn)潔、高效而被廣泛應(yīng)用,該算法的核心是依據(jù)特定的距離函數(shù)在已知的數(shù)據(jù)集合上將數(shù)據(jù)對(duì)象反復(fù)分配至k(需要的聚類(lèi)數(shù)目)個(gè)聚類(lèi)中[8]。根據(jù)歐幾里得距離公式計(jì)算出數(shù)據(jù)樣本點(diǎn)和聚類(lèi)中心的距離如式(1)所示:

式(1)中,m 表示待聚類(lèi)的個(gè)體特征變量,Xik、Xjk分別為第i 個(gè)、第j 個(gè)樣本的第k 個(gè)指標(biāo)的取值。Dist(Xi,Xj)表示樣本點(diǎn)Xi、Xj之間的距離,距離越小表明兩個(gè)樣本點(diǎn)的性質(zhì)越相近。在構(gòu)建正常行為特征訓(xùn)練集模型時(shí),Xij、Xjk分別代表兩個(gè)不同時(shí)刻的基于流量數(shù)據(jù)屬性的度量值數(shù)據(jù)集合。在異常檢測(cè)階段,Xij、Xjk分別代表不同時(shí)刻所得的H(SIP)、H(InDeg)、H(DPort)、OWCD 四維結(jié)構(gòu)數(shù)據(jù)屬性的度量值。假定總數(shù)據(jù)集D 通過(guò)聚類(lèi)得到K個(gè)簇即D=(D1,D2,D3,…,Dk),異常檢測(cè)是以每個(gè)新類(lèi)中各維數(shù)據(jù)的均值作為新類(lèi)的中心值,新類(lèi)Di的中心值Xi0如式(2)所示:

式(2)中,r 代表在某個(gè)新類(lèi)中的數(shù)據(jù)個(gè)數(shù),Xt1、Xt2、Xt3、Xt4分別表示四維結(jié)構(gòu)的離散樣本點(diǎn)。由于K-means 算法是一種用于優(yōu)化非凸代價(jià)函數(shù)的貪婪下降求解算法,易陷入局部最優(yōu)解,且聚類(lèi)結(jié)果受制于聚類(lèi)中心的初始化選擇,因此研究引入二分K-means 算法解決上述問(wèn)題。該算法的核心是利用K-means 算法將所有樣本數(shù)據(jù)分為兩個(gè)聚類(lèi),然后從兩個(gè)聚類(lèi)中選擇樣本數(shù)據(jù)數(shù)量最多的聚類(lèi),并對(duì)該聚類(lèi)進(jìn)行迭代劃分操作直至獲得K個(gè)簇類(lèi)算法。K-means 算法中的畸變函數(shù)即誤差平方和是聚類(lèi)的評(píng)價(jià)函數(shù),如式(3)所示:

直推信度機(jī)是以隨機(jī)性思想理論為基礎(chǔ)建立的一種置信度機(jī)制,常用于衡量樣本的類(lèi)別歸屬問(wèn)題[9]。K-近鄰分類(lèi)算法通過(guò)直接從訓(xùn)練集中搜尋出距待分類(lèi)的樣本對(duì)象最近的k 個(gè)點(diǎn)來(lái)對(duì)樣本進(jìn)行歸類(lèi),但是若樣本分布不平衡,待分類(lèi)的樣本便可能分配到非目標(biāo)類(lèi)中,利用TCM 的檢測(cè)函數(shù)能夠避免KNN 算法將待分類(lèi)的樣本歸類(lèi)于非目標(biāo)類(lèi)中[10]。研究結(jié)合TCM、KNN 設(shè)計(jì)出TCM-KNN算法,該算法基于現(xiàn)有的樣本區(qū)域計(jì)算出待分類(lèi)樣本各點(diǎn)之間的空間距離,然后利用置信度外推機(jī)制得到檢測(cè)函數(shù)P,并根據(jù)P 值評(píng)估樣本分屬于某一類(lèi)中的可靠度。待分類(lèi)的樣本i 對(duì)于類(lèi)別y 的P 值如式(4)所示:

式(4)中,“#”為集合的“勢(shì)”,表示有限集合所包含的元素個(gè)數(shù),αj為集合中任一樣本的奇異值,αi為待分類(lèi)樣本的奇異值,n 表示集合的個(gè)數(shù)。研究將TCM-KNN算法結(jié)合聚類(lèi)分析構(gòu)建網(wǎng)絡(luò)異常檢測(cè)算法ITCM-KNN。ITCM-KNN算法是根據(jù)聚類(lèi)后的正常數(shù)據(jù)集而構(gòu)建的異常檢測(cè)算法,假設(shè)改進(jìn)的二分k-means 算法將正常數(shù)據(jù)集合分類(lèi)為f 個(gè)聚類(lèi),ITCM-KNN 算法首先需計(jì)算出待測(cè)樣本相對(duì)于f 個(gè)聚類(lèi)中心的歐氏距離,并將待測(cè)樣本加入到距離最短的聚類(lèi)中。然后選擇最接近待檢測(cè)樣本點(diǎn)的聚類(lèi)作為正常特征行為訓(xùn)練集。最后根據(jù)公式(4)得到待測(cè)樣本歸屬于正常特征行為訓(xùn)練集的概率P 值,若P 值小于預(yù)定的閾值τ=0.05,則置信度為1-τ 即作為判定異常的指標(biāo)。
研究選用1999DARPA 數(shù)據(jù)集對(duì)異常檢測(cè)算法進(jìn)行評(píng)估,使用Wireshark 抓包工具捕捉分析網(wǎng)絡(luò)中的數(shù)據(jù)包。對(duì)構(gòu)建正常行為模型的改進(jìn)二分K-means算法設(shè)置參數(shù):聚類(lèi)個(gè)數(shù)z=5;對(duì)網(wǎng)絡(luò)異常檢測(cè)算法ITCM-KNN設(shè)置最近鄰目數(shù)k=8,置信度1-τ=95%,并且實(shí)驗(yàn)引入傳統(tǒng)檢測(cè)算法Cluster 作為基準(zhǔn)算法與研究所提出的算法進(jìn)行對(duì)照實(shí)驗(yàn)。為檢驗(yàn)ITCM-KNN算法的優(yōu)越性和有效性,研究在數(shù)據(jù)集上仿真算法Cluster、KNN、ITCM-KNN 對(duì)K-means 的聚類(lèi)能力,以每一次迭代后的最優(yōu)適應(yīng)度值作為指標(biāo),如圖2 所示為根據(jù)每次迭代結(jié)果所繪制的迭代收斂圖。

圖2 不同算法在數(shù)據(jù)集上的收斂圖
由圖2 仿真曲線(xiàn)可知,相較KNN、Cluster 算法,ITCM-KNN 算法適應(yīng)度曲線(xiàn)較為平滑且收斂速度最為迅速,在迭代次數(shù)20 次內(nèi)就以較快的速度接近全局最優(yōu)解,在[20,40]的迭代區(qū)間內(nèi)實(shí)現(xiàn)最優(yōu)解。由此說(shuō)明,ITCM-KNN 算法對(duì)比KNN、Cluster 算法對(duì)全局和局部的搜索能力提升顯著,聚類(lèi)效果更優(yōu)異。
實(shí)驗(yàn)以檢測(cè)率、誤報(bào)率作為衡量算法對(duì)網(wǎng)絡(luò)異常進(jìn)行檢測(cè)的指標(biāo),如圖3 所示為Cluster、KNN、ITCM-KNN 算法誤報(bào)率-檢測(cè)率實(shí)驗(yàn)關(guān)系對(duì)比圖。

圖3 算法誤報(bào)率-檢測(cè)率檢測(cè)對(duì)比圖
由圖3 可知,隨著檢測(cè)率的提升,三種算法的誤報(bào)率均相應(yīng)增加,其中ITCM-KNN 算法相較KNN、Cluster 算法在較高的檢測(cè)率下誤報(bào)率最低且曲線(xiàn)走勢(shì)平滑,由此說(shuō)明ITCM-KNN 算法能較好平衡檢測(cè)率和誤報(bào)率兩者指標(biāo)的關(guān)系。如圖4所示為三種算法在網(wǎng)絡(luò)異常檢測(cè)中檢測(cè)率、誤報(bào)率的具體表現(xiàn)。

圖4 算法網(wǎng)絡(luò)異常檢測(cè)效果對(duì)比圖
由圖4 可知,ITCM-KNN 算法在檢測(cè)率指標(biāo)中相較Cluster、KNN 算法提升顯著,其檢測(cè)率較Cluster 算法平均提高8.37%,較KNN 算法平均提高2.78%。ITCM-KNN 算法在數(shù)據(jù)含量超過(guò)1/2 后與KNN 算法曲線(xiàn)拉大差距,說(shuō)明ITCM-KNN 算法能夠快速準(zhǔn)確地確定聚類(lèi)中心,跳出局部最優(yōu)值而確定全局最優(yōu)值,從而提升對(duì)數(shù)據(jù)集的檢測(cè)率。從誤報(bào)率指標(biāo)結(jié)果圖可知,ITCM-KNN 算法相較其它兩種算法誤報(bào)率最低,隨著數(shù)據(jù)含量增大誤報(bào)率下降明顯,其中相較Cluster 算法誤報(bào)率平均下降2.14%,較KNN 算法平均下降1.03%。
在大數(shù)據(jù)時(shí)代,網(wǎng)絡(luò)數(shù)據(jù)呈現(xiàn)出指數(shù)級(jí)增長(zhǎng)的趨勢(shì),而在這些數(shù)據(jù)中,大量網(wǎng)絡(luò)異常數(shù)據(jù)所代表的網(wǎng)絡(luò)性攻擊行為對(duì)網(wǎng)絡(luò)安全造成巨大挑戰(zhàn),傳統(tǒng)網(wǎng)絡(luò)異常檢測(cè)技術(shù)難以對(duì)海量數(shù)據(jù)進(jìn)行有效挖掘分析。研究提出以改進(jìn)二分K-means 聚類(lèi)算法構(gòu)建正常行為特征訓(xùn)練集模型,在此基礎(chǔ)上將直推信度機(jī)制、K-近鄰算法結(jié)合所建立的正常行為特征模型設(shè)計(jì)出異常檢測(cè)算法ITCM-KNN,隨后以仿真的形式對(duì)該算法進(jìn)行了驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,ITCM-KNN 算法的檢測(cè)率相較Cluster 算法平均提高8.37%,誤報(bào)率平均下降2.14%,檢測(cè)率相較KNN 算法平均提高2.78%,誤報(bào)率平均下降1.03%。由此說(shuō)明研究所提出的ITCM-KNN 算法能夠在保持較高檢測(cè)率的同時(shí)降低誤報(bào)率,改善了傳統(tǒng)檢測(cè)技術(shù)難以處理海量數(shù)據(jù)的困境。由于研究對(duì)該算法進(jìn)行驗(yàn)證所采用的是模擬實(shí)驗(yàn)數(shù)據(jù)集,因此未來(lái)可將ITCM-KNN 算法應(yīng)用于真實(shí)網(wǎng)絡(luò)環(huán)境中檢測(cè),以便更有效說(shuō)明該算法的適應(yīng)性與可行性。