王 霞,曹麗娜,楊鳳麗
(石家莊鐵道大學(xué)四方學(xué)院,河北 石家莊 051132)
網(wǎng)絡(luò)是信息交流平臺(tái),在給人們帶來(lái)方便時(shí)也伴隨著一些潛在的危機(jī),因網(wǎng)絡(luò)中每天都會(huì)產(chǎn)生大量數(shù)據(jù)信息,人們非常擔(dān)憂(yōu)網(wǎng)絡(luò)中數(shù)據(jù)信息的安全問(wèn)題,據(jù)相關(guān)資料表明,網(wǎng)絡(luò)入侵事件頻繁出現(xiàn),在2000年著名國(guó)際購(gòu)物網(wǎng)站慘遭黑客攻擊,導(dǎo)致經(jīng)濟(jì)損失高達(dá)12億美元。網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)一般以木馬病毒、DDoS攻擊等形式出現(xiàn),通過(guò)網(wǎng)絡(luò)植入客戶(hù)端,竊取機(jī)密數(shù)據(jù)[1]。因此,網(wǎng)絡(luò)安全問(wèn)題逐步得到人們的重點(diǎn)關(guān)注,一些網(wǎng)絡(luò)安全產(chǎn)品應(yīng)運(yùn)而生,比如網(wǎng)絡(luò)安全軟件、防火墻等。雖然這些產(chǎn)品在網(wǎng)絡(luò)安全方面起到一定保護(hù)效果,但是仍然存在防攻擊能力差的劣勢(shì),面對(duì)高級(jí)手段的不法黑客的攻擊也無(wú)法實(shí)現(xiàn)精準(zhǔn)防御,導(dǎo)致網(wǎng)絡(luò)安全性下降。網(wǎng)絡(luò)性能因網(wǎng)絡(luò)中存在異常數(shù)據(jù)導(dǎo)致其性能下降,網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)一方面因不法分子惡意攻擊代碼造成,另一方面因個(gè)人用戶(hù)操作不當(dāng),下載一些帶有病毒的軟件或插件導(dǎo)致網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)產(chǎn)生[2]。
關(guān)于網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘課題是當(dāng)前最熱門(mén)課題之一,入侵檢測(cè)技術(shù)可檢測(cè)網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)類(lèi)型,并依據(jù)類(lèi)型屬性進(jìn)行相應(yīng)的安全防御措施或殺毒[3]。該技術(shù)中誤用檢測(cè)是通過(guò)構(gòu)建入侵規(guī)則庫(kù)進(jìn)行網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)判斷,但該檢測(cè)技術(shù)存在局限性,對(duì)于不在入侵規(guī)則庫(kù)內(nèi)的新入侵?jǐn)?shù)據(jù)無(wú)法檢測(cè);而異常檢測(cè)將網(wǎng)絡(luò)采集數(shù)據(jù)作為正常行為庫(kù),對(duì)比網(wǎng)絡(luò)入侵行為與正常行為庫(kù)的差異實(shí)現(xiàn)檢測(cè)。通過(guò)將入侵檢測(cè)技術(shù)的優(yōu)勢(shì)融入侵檢測(cè)系統(tǒng)內(nèi),但僅僅依靠系統(tǒng)檢測(cè)是不行的,需要加入先進(jìn)算法提高檢測(cè)效率,在網(wǎng)絡(luò)安全中,網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘最為復(fù)雜,針對(duì)這一難題,我國(guó)相關(guān)學(xué)者在網(wǎng)絡(luò)安全課題中加強(qiáng)對(duì)網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘方法研究,但以往研究的網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘方法存在一定缺陷,如蔡柳萍等人研究稀疏表示和特征加權(quán)的挖掘方法[4],該方法通過(guò)進(jìn)行數(shù)據(jù)處理并利用數(shù)據(jù)加權(quán)實(shí)現(xiàn)數(shù)據(jù)挖掘,但是因該方法計(jì)算過(guò)程過(guò)于復(fù)雜,導(dǎo)致數(shù)據(jù)挖掘不佳,無(wú)法挖掘出網(wǎng)絡(luò)中隱蔽的異常數(shù)據(jù)的情況時(shí)有發(fā)生;楊衛(wèi)等人研究云計(jì)算平臺(tái)挖掘方法[5],該方法側(cè)重于軟件設(shè)計(jì),導(dǎo)致檢測(cè)成本上升。
數(shù)據(jù)挖掘技術(shù)可通過(guò)發(fā)掘數(shù)據(jù)內(nèi)隱含規(guī)律,找尋有價(jià)值數(shù)據(jù),Apriori算法作為一種數(shù)據(jù)挖掘技術(shù),其適應(yīng)性較廣,但該算法運(yùn)行時(shí)負(fù)載較大,冗余性高,可通過(guò)可拓理論改進(jìn)該算法,改進(jìn)Apriori算法計(jì)算效率較高,因此有效利用改進(jìn)Apriori算法,研究基于改進(jìn)Apriori算法的網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘仿真方法,提高網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘效率和網(wǎng)絡(luò)安全管理水平。
在Apriori算法內(nèi),數(shù)據(jù)集k+1項(xiàng)集需要通過(guò)k項(xiàng)集進(jìn)行搜索。設(shè)置L1、L2為頻繁項(xiàng)集,直至任一r值滿(mǎn)足Lr=?時(shí)結(jié)束。在第k次循環(huán)內(nèi),生成候選k項(xiàng)集合用Ck描述,通過(guò)對(duì)兩個(gè)Lk-1頻集經(jīng)過(guò)連接k-2生成Ck內(nèi)各項(xiàng)集。候選集通過(guò)Ck生成,其子集為L(zhǎng)k。Ck各元素在數(shù)據(jù)庫(kù)進(jìn)行搜索,但該算法負(fù)載較大。
Apriori算法基本思路:
Step 1:需找全部項(xiàng)集,項(xiàng)集發(fā)生的頻繁性與預(yù)定義最小支持度相同。
Step 2:強(qiáng)關(guān)聯(lián)規(guī)則通過(guò)項(xiàng)集生成,該規(guī)則一定符合最小可信度與支持度。
通過(guò)可拓理論改進(jìn)Apfiofi算法,將事物名稱(chēng)用N表示,其特征c的量值用v描述,物元為有序三元組用R=(N,c,v)表示。其中N,c,v為物元三要素,物元受三要素影響較大[6]。
在網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘中,關(guān)聯(lián)規(guī)則的定義為:對(duì)于1個(gè)征集X和一個(gè)概念描述Y,指定支持度閾值s0和置信度閾值c0,若s(XyY)Es0并且c(XyY)Ec0,則規(guī)則XyY成立。其內(nèi),s(XyY)=card(XHY)/card(N),c(XyY)=card(XHY)/card(X)。數(shù)據(jù)記錄對(duì)象集中事務(wù)數(shù)量用運(yùn)算符card(#)求解。支持度計(jì)數(shù)用card(XHY)描述。
當(dāng)s(XyY)Es0時(shí),大征集是征集X。征集X內(nèi)某一征集Xk,為降低冗余挖掘可拓關(guān)聯(lián)規(guī)則XkyY需滿(mǎn)足置信度大于置信度闞值條件,對(duì)Xk進(jìn)行刪除。
改進(jìn)Apriori算法的思路為:
1)大征集交運(yùn)算
將2個(gè)大征集分別用X1,X2描述,通過(guò)交互運(yùn)算得出征集X;
2)征集刪除運(yùn)算
對(duì)k元征集集合內(nèi)各征集Xk的全部k-1元子句進(jìn)行查看操作,當(dāng)Xk-1不是大征集時(shí)進(jìn)行刪除。
改進(jìn)Apriori算法流程如下:
關(guān)聯(lián)規(guī)則集用R描述,作為數(shù)據(jù)輸出;最小支持度閾值用s0描述,數(shù)據(jù)庫(kù)用D描述,最小置信度閾值用c0作為數(shù)據(jù)輸入。
Step 1:為求出元素集合A,通過(guò)掃描總體數(shù)據(jù)庫(kù),統(tǒng)計(jì)各條記錄內(nèi)的各元素得出[7-9]。
Step 2:為生成一元候選集H1,通過(guò)A內(nèi)各元素集合生成,將k表示為1個(gè)元計(jì)數(shù)單位設(shè)置為k=1。
Step 3:Y表示概念,求解Hk內(nèi)各征集XkyY的置信度c與支持度s,若Xk的支持度用sEs0描述,進(jìn)行判斷:
1)當(dāng)置信度閾值c0既定時(shí),若Xk的置信度用cEc0描述,得出輸出規(guī)則用XkyY描述。
2)若Xk的置信度用cFc0描述,在大征集Lk內(nèi)存進(jìn)Xk。
Step 4:當(dāng)Lk內(nèi)元素?cái)?shù)量小于2個(gè)時(shí),則結(jié)束;反之,當(dāng)Lk內(nèi)的各Xk,依據(jù)字典順序?qū)內(nèi)全部元素進(jìn)行排列。
Step 5:通過(guò)比較Lk內(nèi)征集Xki,xkj的元素,為生成k+l候選集,需要對(duì)Lk內(nèi)的全部征集進(jìn)行組合操作;若第k個(gè)元素不一樣,k-1個(gè)元素一樣時(shí),則Hk+1存全新k+1元征集。
Step 6:令k=k+1,返回到Step 3。
2.3.1 網(wǎng)絡(luò)入侵行為模式
設(shè)定一個(gè)閾值并通過(guò)正常行為模式和在含有網(wǎng)絡(luò)入侵的數(shù)據(jù)集中挖掘出的模式對(duì)比后得出閾值距離,進(jìn)行發(fā)生網(wǎng)絡(luò)入侵行為模式判定[10],采用MEOM(Heterogeneous Euclidean—overlap Metric)函數(shù)求解兩種模式距離,具體如公式(1)~公式(2)所示
(1)
(2)
向量X和向量Y的距離,如公式(3)所示
(3)
式中:屬性數(shù)量用n描述,向量屬性用b描述。用HOEM(X,Y)描述向量間距離,其值越小表示2個(gè)向量大致一樣。
因各屬性的重要性存在差異[11],需要對(duì)各屬性設(shè)置權(quán)值,重要性和權(quán)值成正比。在公式(2)內(nèi),若2個(gè)向量一致,其值是零,無(wú)法表示權(quán)值,因此需要對(duì)公式(2)進(jìn)行修改,修改后如公式(4)~公式(5)所示
(4)
(5)
向量X和向量Y的距離,如公式(6)所示
(6)
式中:各屬性的權(quán)值用?描述,用HOEM(X,Y)描述向量間距離,其值越小表示2個(gè)向量間距離越大。
若異常模式內(nèi)的一個(gè)向量用Y表示,閾值用δ描述,正常模式內(nèi)的一個(gè)向量用X表示,通過(guò)公式(4)~公式(6)求解HOEM(X,Y),當(dāng)該值小于δ時(shí),判定Y模式為入侵模式,其內(nèi)存在網(wǎng)絡(luò)入侵的數(shù)據(jù)[12]。
2.3.2 挖掘結(jié)果的分類(lèi)處理
在完成網(wǎng)絡(luò)入侵模式識(shí)別后,通過(guò)改進(jìn)的分類(lèi)規(guī)則生成(Ripper)算法對(duì)不同的網(wǎng)絡(luò)入侵的數(shù)據(jù)類(lèi)型進(jìn)行分類(lèi),并賦予不同標(biāo)簽。改進(jìn)的Ripper分類(lèi)算法,流程如圖1所示。
圖1 改進(jìn)的Ripper分類(lèi)算法流程
由圖1可知,該分類(lèi)算法的基本流程情況,其中在判斷POS主動(dòng)數(shù)據(jù)項(xiàng)為空時(shí),將訓(xùn)練數(shù)據(jù)分成縮減集與增長(zhǎng)集;在規(guī)則擴(kuò)展中,在置空規(guī)則后,添加合法條件,重復(fù)此次操作直至規(guī)則內(nèi)包含增長(zhǎng)數(shù)據(jù)集內(nèi)全部數(shù)據(jù)項(xiàng);在規(guī)則縮減中,為了實(shí)現(xiàn)函數(shù)值V最大,需要?jiǎng)h除最后條件,重復(fù)此次操作直至V最大,通過(guò)規(guī)則縮減可提高規(guī)則適應(yīng)性和精度。
為驗(yàn)證本文方法的有效性,在MATLAB_7.0軟件測(cè)試平臺(tái)上進(jìn)行仿真實(shí)驗(yàn)測(cè)試,選取某網(wǎng)絡(luò)中數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù)。
從實(shí)驗(yàn)數(shù)據(jù)中選取4種網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)的特征樣本,對(duì)比應(yīng)用Apriori算法和改進(jìn)Apriori算法對(duì)網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘的效果,算法運(yùn)行時(shí)間設(shè)置為30分鐘,可行性測(cè)試結(jié)果如圖2所示。
圖2 可行性測(cè)試結(jié)果
通過(guò)分析圖2可知,采用改進(jìn)Apriori算法進(jìn)行網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘的效果較好,比傳統(tǒng)Apriori算法所挖掘4種網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)的特征樣本數(shù)量分別約高出1700萬(wàn)條、1800萬(wàn)條、2000萬(wàn)條、2500萬(wàn)條,因此表明應(yīng)用改進(jìn)Apriori算法的本文方法的可行性較高。
統(tǒng)計(jì)采用Apriori算法和改進(jìn)Apriori算法在不同支持度的條件下以及不同數(shù)據(jù)規(guī)模條件下進(jìn)行挖掘的執(zhí)行效率,如圖3所示。
圖3 執(zhí)行效率對(duì)比
分析圖3可知,應(yīng)用兩種算法進(jìn)行數(shù)據(jù)挖掘的穩(wěn)定性均較優(yōu),在不同數(shù)據(jù)量耗時(shí)方面,本文方法應(yīng)用的改進(jìn)Apriori算法明顯優(yōu)于Apriori算法,平均耗時(shí)比Apriori算法的平均耗時(shí)節(jié)省19ms左右,在最小支持度不同條件下,應(yīng)用兩種算法進(jìn)行挖掘的耗時(shí)隨最小支持度的升高而降低,但本文方法應(yīng)用改進(jìn)Apriori算法進(jìn)行數(shù)據(jù)挖掘的耗時(shí)較少,由此說(shuō)明本文方法的入侵?jǐn)?shù)據(jù)挖掘執(zhí)行效率較高。
設(shè)定c0表示最小置信度閾值,s0表示最小支持度閾值。對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行7次數(shù)據(jù)挖掘,在第1次數(shù)據(jù)挖掘時(shí),設(shè)置c0=0.15、s0=0.25;第2次數(shù)據(jù)挖掘時(shí),設(shè)置c0=0.15和s0=0.50;第3次數(shù)據(jù)挖掘時(shí),設(shè)置c0=0.25和s0=0.25;第4次數(shù)據(jù)挖掘時(shí),設(shè)置c0=0.45和s0=0.50;第5次數(shù)據(jù)挖掘時(shí),c0=0.55和s0=0.70;第6次數(shù)據(jù)挖掘時(shí),設(shè)置c0=0.65和s0=0.70;第7次數(shù)據(jù)挖掘時(shí),設(shè)置最c0=0.85和s0=0.70;得出本文方法挖掘入侵?jǐn)?shù)據(jù)的關(guān)聯(lián)規(guī)則數(shù)量和運(yùn)行時(shí)間結(jié)果,如圖4所示。
圖4 不同置信度與支持度下關(guān)聯(lián)規(guī)則數(shù)量圖
分析圖4可知,當(dāng)最小置信度閾值c0設(shè)置在0.45~0.85,s0為0.50~0.70時(shí),數(shù)據(jù)挖掘的運(yùn)行時(shí)間短、關(guān)聯(lián)規(guī)則數(shù)量波動(dòng)較??;c0為0.15~0.25,s0為0.25~0.50時(shí),數(shù)據(jù)挖掘的運(yùn)行時(shí)間長(zhǎng)、關(guān)聯(lián)規(guī)則數(shù)量波動(dòng)較大。由此可知,運(yùn)行時(shí)間和關(guān)聯(lián)規(guī)則數(shù)量受c0、s0影響較大。
實(shí)驗(yàn)數(shù)據(jù)集內(nèi)網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)607條,網(wǎng)絡(luò)正常數(shù)據(jù)2337條。統(tǒng)計(jì)不同算法下網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)誤檢率和漏檢率,仿真試驗(yàn)結(jié)果見(jiàn)表1。
表1 網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)誤檢率和漏檢率
由表1可知,采用改進(jìn)Apriori算法下入侵檢測(cè)的漏檢率與誤檢率分別比傳統(tǒng)Apriori算法下的入侵檢測(cè)的漏檢率與誤檢率降低6.24%、6.14%,說(shuō)明應(yīng)用改進(jìn)Apriori算法的本文方法性能更優(yōu),可有效提高網(wǎng)絡(luò)數(shù)據(jù)安全性。
為提高網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘效率,本文提出基于改進(jìn)Apriori算法的網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘方法。構(gòu)建改進(jìn)Apriori算法的網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘模型,實(shí)現(xiàn)網(wǎng)絡(luò)入侵?jǐn)?shù)據(jù)挖掘。仿真實(shí)驗(yàn)結(jié)果表明,采用本文方法可行性強(qiáng),可解決網(wǎng)絡(luò)入侵檢測(cè)中的大量數(shù)據(jù)挖掘問(wèn)題,使挖掘效率提高。因本人時(shí)間與精力有限,研究仍處于起步階段,仍有許多不足,需要在以后社會(huì)實(shí)踐中逐步完善。本人以后研究方向如下:
1)將本文方法應(yīng)用在網(wǎng)絡(luò)流量數(shù)據(jù)異常檢測(cè)或系統(tǒng)開(kāi)發(fā)內(nèi),拓展本文方法應(yīng)用范圍,需要我們繼續(xù)研究進(jìn)一步提高算法的挖掘能力。
2)為了提高本文方法在網(wǎng)絡(luò)數(shù)據(jù)檢測(cè)中的性能,可以引入更多先進(jìn)技術(shù)和方法,并與之結(jié)合提高數(shù)據(jù)檢測(cè)精度和適應(yīng)性。