基于數(shù)據(jù)挖掘的入侵檢測(cè)系統(tǒng)的改進(jìn)與實(shí)現(xiàn)
從Apriori算法執(zhí)行過(guò)程可以了解到Apriori算法的缺點(diǎn):一方面,在每一次產(chǎn)生候選項(xiàng)集時(shí)循環(huán)產(chǎn)生的組合過(guò)多,沒(méi)有具體考慮不符合閾值的組合;另一方面,對(duì)每個(gè)項(xiàng)集計(jì)算支持度時(shí)要對(duì)整個(gè)數(shù)據(jù)庫(kù)掃描一遍,對(duì)于分析網(wǎng)絡(luò)數(shù)據(jù)包這樣大型的數(shù)據(jù)庫(kù)會(huì)增加I/O開(kāi)銷。這種開(kāi)銷是隨著數(shù)據(jù)庫(kù)的記錄的增加呈幾何級(jí)數(shù)的增長(zhǎng)?,F(xiàn)階段人們開(kāi)始探索一種能減少系統(tǒng)I/O開(kāi)銷的更為快捷的算法,相繼提出了許多改進(jìn)的算法。主要有Park等人提出的基于哈希技術(shù)的DHP算法,Savasere等人提出的基于劃分技術(shù)的Partition算法,Toivonen提出的抽樣算法,Sampling、Zaki等人提出的基于等價(jià)類和圖論的MaxCique系列算法,S.Agarwal等人提出的采用有序樹(shù)數(shù)據(jù)結(jié)構(gòu)的TreeP-rojection算法以及Orlando等人提出的Apriori增強(qiáng)版的DCP算法等。而對(duì)于挖掘數(shù)據(jù)包是網(wǎng)絡(luò)數(shù)據(jù)包時(shí),數(shù)據(jù)源的特征屬性較多而且數(shù)據(jù)包的記錄數(shù)較大,這就需要必須選擇合理的算法才能發(fā)現(xiàn)能描述用戶特征的規(guī)則。
1 引用作用度的Apriori_lift算法
1.1 作用度
作用度是采用相關(guān)分析描述規(guī)則內(nèi)在價(jià)值的度量,它描述的是項(xiàng)集X對(duì)Y的影響力的大小。作用度越高表示X的出現(xiàn)對(duì)Y出現(xiàn)的可能性影響越大,作用度度量的是X與Y之間蘊(yùn)涵的實(shí)際強(qiáng)度。
作用度表示為:
1.2 Aprior=>lift算法的描述
第一步:大項(xiàng)集的生成;
第二步:采用作用度找出強(qiáng)關(guān)聯(lián)規(guī)則。
使用第一步找到的所有頻繁項(xiàng)集產(chǎn)生期望的規(guī)則。為了獲取強(qiáng)有效關(guān)聯(lián)規(guī)則,在使用信任度的基礎(chǔ)上增加作用度計(jì)算來(lái)度量規(guī)則的有效性。具體描述過(guò)程如下:
(1)對(duì)于每個(gè)頻繁K(K≥2)項(xiàng)集L,產(chǎn)生L的所有非空子集S;
(2)對(duì)于項(xiàng)集L的每個(gè)非空子集S,規(guī)則:
如果lift[S=>(L-S)]>1,則規(guī)則“S=>(L-S)”是強(qiáng)有效關(guān)聯(lián)規(guī)則,輸出。
2 算法性能比較
在局域網(wǎng)環(huán)境中(如圖1所示)捕獲網(wǎng)絡(luò)數(shù)據(jù)包2 000個(gè),分別采用Apriori,Apriori_lift算法挖掘,其挖掘過(guò)程及結(jié)果如下:
表3是實(shí)驗(yàn)采用的兩個(gè)數(shù)據(jù)集Tcppro,Udppro。
表4是二種算法在不同支持度(Supp)信任度(Conf)下的挖掘結(jié)果統(tǒng)計(jì)。
由表4可知,在相同的作用度與支持度的情況下,Apriori,Apriori_lift算法挖掘得到的規(guī)則逐漸遞減;在不同的作用度與支持度情況下,參數(shù)值越低挖掘出的規(guī)則越多,這主要體現(xiàn)在Apriori算法的挖掘上,而對(duì)于Apriori_lift算法當(dāng)參數(shù)值達(dá)到一定閾值時(shí),改變參數(shù)值對(duì)其挖掘結(jié)果影響不大,改善了挖掘規(guī)則遺漏的情況。
由表4可以看出,Apriori算法和Apriori_lift算法的運(yùn)行時(shí)間隨挖掘規(guī)則變化的比較情況。Apriori算法隨著挖掘結(jié)果中規(guī)則數(shù)的增長(zhǎng),時(shí)間上有數(shù)量級(jí)的提高,而Apriori_lift隨著時(shí)間的增長(zhǎng),其挖掘出的規(guī)則數(shù)量增幅不大。而Apriori_lift存在額外的作用度比較的開(kāi)銷,在高支持度時(shí),由于要處理的頻繁項(xiàng)目及模式數(shù)目都較少,此時(shí)從挖掘結(jié)果上看Apriori_lift表現(xiàn)了比Apriori更好的性能。
[!--empirenews.page--]3 挖掘結(jié)果分析
以Apriori_lift算法挖掘數(shù)據(jù)集udppro為例,挖掘過(guò)程如下:
過(guò)程一:挖掘數(shù)據(jù)源的生成。
Udppro數(shù)據(jù)集經(jīng)過(guò)數(shù)據(jù)預(yù)處理后生成了挖掘數(shù)據(jù)源Udpsource.txt,共計(jì)7 585條描述網(wǎng)絡(luò)連接的記錄,其記錄格式如下:
pro:UDP sip:192.168.0.1
sport:67 dip:255.255.255.255 dport:68 lenth:315ttl:128
過(guò)程二:算法挖掘
(1)find association rules with the apriori algorithm (2)reading f:\mining\udpsource.txt…[163 item(s),7585 transaction(s)]done[0.13s].
(3)sorting and recoding items…[21 item(s)]done[0.01s].
(4)creating transaction tree…done[0.04s].
(5)checking subsets of size 1 2 3 4 5 done[0.00s].
(6)writing f:\mining\apriori.txt…[540 rule(s)]done[0.37s].
過(guò)程三:挖掘結(jié)果分析
挖掘出540條規(guī)則,經(jīng)過(guò)規(guī)則合并以及多屬性并存的原則過(guò)濾之后篩選出17條規(guī)則如下:
Apriori_lift挖掘結(jié)果
(1)lenth:58 sport:137 dip:202.198.178.255 ttl:128 dport:137 pro:UDP
(2)sip:192.168.0.22 dport:161 ttl:128pro:UDP dip:202.198.181.65
(3)dport:138 sport:138 dip:202.198.178.255 ttl:128 pro:UDP
(4)dip:202.198.181.65 ttl:127 sip:202.198.178.131 dport:161 pro:UDP
(5)sport:4126 sip:192.168.0.22 dip:202.198.181.65dport:161 ttl:128
(6)sport:2039 ttl:127 sip:202.198.178.131 dip:202.198.181.65 dport:161 ttl:127
(7)lenth:58 sport:137 dip:202.198.178.255 dport:137
(8)sip:192.168.0.22 dip:202.198.181.65 dport:161ttl:128
(9)sport:138 dip:202.198.178.255 dport:138 ttl:128 pro:UDP
(10)sip:202.198.178.131 sport:4126 dip:202.198.181.65ttl:127 dport:161 pro:UDP
(11)sip:202.198.178.131 sport:2039 dip:202.198.181.65dport:161 ttl:127 pro:UDP
(12)sport:137 dip:202.198.178.255 dport:137 lenth:58ttl:128
(13)sip:192.168.0.22 dip:202.198.181.65 dport:161 ttl:128 pro:UDP
(14)sport:138 dip:202.198.178.255 dport:138 lenth:58ttl:128
(15)sip:202.198.178.131 dip:202.198.181.65 dport;161ttl:127 pro:UDP
(16)sport:4126 sip:192.168.0.22 dip:202.198.181.65dport:161 ttl:128 pro:UDP
(17)sip:202.198.1 78.65 sport:2039 dip:202.198.178.131dport:161 ttl:127 pro:UDP
對(duì)于以上挖掘結(jié)果歸類如下:
規(guī)則歸類:
類一:規(guī)則1,3,7,9,12,14。
類別特征:dip:202.198.178.255 sport:137/138dport:137/138(sport=dport)
pro:udp ttl:127/128 lenth:58
類二:規(guī)則4,6,10,11,15,17。
類別特征:sip/dip:202.198.178.131 sport:2300/4126 dip/sip:202.198.181.65
dport:161 ttl:128/127 pro:udp
類三:規(guī)則2,5,8,13,16。
類別特征:sip/dip:192.168.0.22 sport:4126 dip/sip:202.198.181.65 dport:161
ttl:128/127 pro:udp
根據(jù)圖1網(wǎng)絡(luò)實(shí)驗(yàn)環(huán)境可知202.198.178.131是IP192.168.0.22的網(wǎng)關(guān),故規(guī)則類二與類三可以合并為一類規(guī)則。
過(guò)程四:挖掘結(jié)果說(shuō)明
規(guī)則類一說(shuō)明:137,138是UDP端口,當(dāng)通過(guò)網(wǎng)上鄰居傳輸文件時(shí)用這兩個(gè)端口,137端口是NetBIOS名稱UDP。138端口是NetBIOS數(shù)據(jù)報(bào)UDP
規(guī)則類二說(shuō)明:子網(wǎng)主機(jī)192.168.0.22通過(guò)網(wǎng)關(guān)202.198.178.131與外部網(wǎng)主機(jī)202.198.181.65進(jìn)行SNMP通信。
4 結(jié) 語(yǔ)
對(duì)基于支持度一信任度挖掘的關(guān)聯(lián)規(guī)則有效性進(jìn)行了分析,指出在挖掘過(guò)程中僅考慮支持度和信任度的不足.產(chǎn)生的關(guān)聯(lián)規(guī)則不一定是有效有趣的,甚至可能是欺騙性的,具有誤導(dǎo)作用。因此引入相關(guān)性分析來(lái)衡量規(guī)則,大大增強(qiáng)了規(guī)則的有效性。