何春華
摘要:為了更好的提高計(jì)算機(jī)網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)的質(zhì)量,我們可以融合多種模式的匹配算法,并通過對(duì)網(wǎng)絡(luò)入侵檢測(cè)模式進(jìn)行詳細(xì)分析,提出了融合多模式匹配算法的計(jì)算機(jī)網(wǎng)絡(luò)入侵檢測(cè)。本文主要研究了多種模式的常見匹配算法,根據(jù)常見算法對(duì)計(jì)算機(jī)檢測(cè)性能進(jìn)行了分析,并依據(jù)存在的不足對(duì)網(wǎng)絡(luò)入侵檢測(cè)提出了合理的改進(jìn)方案。
關(guān)鍵詞:網(wǎng)絡(luò)入侵檢測(cè);計(jì)算機(jī);多模式匹配算法
隨著我國科技技術(shù)的不斷改進(jìn),現(xiàn)如今網(wǎng)絡(luò)信息技術(shù)已經(jīng)取得了飛速發(fā)展。網(wǎng)絡(luò)信息化的管理也給廣大的網(wǎng)絡(luò)工作者帶來了新挑戰(zhàn)。尤其是當(dāng)今的電子商務(wù)技術(shù),例如:網(wǎng)上支付、網(wǎng)絡(luò)銀行等網(wǎng)上交易發(fā)展迅速。網(wǎng)絡(luò)技術(shù)的發(fā)展給社會(huì)帶來的不僅僅的快捷方便,隨之而來的還有網(wǎng)絡(luò)安全問題。因此,計(jì)算機(jī)網(wǎng)絡(luò)入侵系統(tǒng)必須要做到網(wǎng)絡(luò)環(huán)境的安全,除了要科學(xué)抵御網(wǎng)絡(luò)攻擊,還應(yīng)主動(dòng)對(duì)網(wǎng)絡(luò)不良信息進(jìn)行檢測(cè),最終徹底排除影響網(wǎng)絡(luò)安全的潛在因素。
1多模式匹配算法的計(jì)算機(jī)網(wǎng)絡(luò)入侵檢測(cè)概述
1.1多模式匹配算法定義。多模式匹配算法的定義主要解釋為:給定任意一個(gè)長度為L的模式串pat[1:f]和長度為c的text[1:c],其中1
1.2網(wǎng)絡(luò)入侵檢測(cè)定義。計(jì)算機(jī)中鞏固加強(qiáng)網(wǎng)絡(luò)安全,防范危害網(wǎng)絡(luò)安全因素的工作就是網(wǎng)絡(luò)入侵檢測(cè)。網(wǎng)絡(luò)入侵檢測(cè)主要采取排查過濾的方式主動(dòng)清除威脅網(wǎng)絡(luò)安全環(huán)境的因素,并提高網(wǎng)絡(luò)的穩(wěn)定性。它主要對(duì)所有經(jīng)過網(wǎng)絡(luò)的相關(guān)數(shù)據(jù)進(jìn)行匹配和檢測(cè),并分析這些網(wǎng)絡(luò)數(shù)據(jù)是否與規(guī)定模板相吻合,然后經(jīng)過一系列匹配工作刪選可能影響網(wǎng)絡(luò)安全的信息。因此,網(wǎng)絡(luò)信息安全除了由防火墻的攔截外,網(wǎng)絡(luò)入侵檢測(cè)可以稱得上是互聯(lián)網(wǎng)信息的第二道保護(hù)墻。
2常見的匹配算法
計(jì)算機(jī)網(wǎng)絡(luò)入侵檢測(cè)中,匹配信息數(shù)據(jù)的常用算法就是有限自動(dòng)機(jī)的多模式匹配算法,俗稱AC算法。該匹配算法主要在網(wǎng)絡(luò)數(shù)據(jù)預(yù)處理階段,以下具體解釋AC算法的結(jié)算思路:
①首先介紹AC自動(dòng)機(jī)算法的模型,主要包含三個(gè)函數(shù):輸出函數(shù)(output)、失效函數(shù)(failure)、轉(zhuǎn)向函數(shù)(goto)。本次研究主要利用這三種函數(shù)對(duì)網(wǎng)絡(luò)信息進(jìn)行匹配,從而尋找匹配文本的相對(duì)于位置和數(shù)據(jù)。本文利用這些函數(shù)對(duì)文本進(jìn)行匹配,然后尋求匹配文本的位置和所有項(xiàng)。
②Ac算法產(chǎn)生的思路:計(jì)算全部深度為1的失效函數(shù)值,然后逐步計(jì)算深度為2、3、4……的狀態(tài)等等,一直到得出全部失效函數(shù)值。
③AC算法的解決過程:首先將所有狀態(tài)的深度定義為s狀態(tài),所得失效函數(shù)值就表示為.f(s)=0;其次對(duì)所有1 3 ACBM算法的實(shí)現(xiàn) 3.1Aho-Corasick(AC)算法。AC算法的思路是:在對(duì)信息數(shù)據(jù)的預(yù)處理階段以及有限狀態(tài)的自動(dòng)機(jī)算法建立以上三個(gè)函數(shù),由此構(gòu)造一個(gè)樹型有限狀態(tài)自動(dòng)機(jī)AC算法。AC算法的預(yù)處理時(shí)間復(fù)雜度為o(m),但AC算法對(duì)文本竄匹配過程沒有跳躍情況,因此無法跳過沒用的比較。AC算法是的自動(dòng)機(jī)算法是以空間轉(zhuǎn)時(shí)間的算法,當(dāng)計(jì)算模式集中較大時(shí)會(huì)導(dǎo)致內(nèi)存膨脹問題的出現(xiàn),所以,AC算法存在的問題還不足以成為最佳算法。 3.2AC-BM算法。Aho-Corasick-Boyer-Moore即AC-BM算法,它是一種結(jié)合了AC算法的同時(shí)還匹配BM算法以及多模式特點(diǎn)的跳躍式算法。AC-BM算法的優(yōu)點(diǎn)就是能充分利用模式有大量相同前綴的情況下還能減少數(shù)據(jù)字符的比較,并加快檢測(cè)和匹配速度。在進(jìn)行計(jì)算過程中,AC-BM算法使用了BM算法的兩個(gè)優(yōu)點(diǎn),即:壞字符移動(dòng)規(guī)則以及好后綴移動(dòng)規(guī)則。這種多模式的匹配算法還應(yīng)注意在計(jì)算時(shí)每次移動(dòng)的距離要在范圍之內(nèi),避免漏點(diǎn)情況。利用AC-BM算法進(jìn)行入侵檢測(cè),使計(jì)算機(jī)數(shù)據(jù)存在很多相同前綴字符的字符串,因此,這種計(jì)算方式很有優(yōu)勢(shì)。 3.3AC-BM算法的改進(jìn)。改進(jìn)AC-BM匹配算法的實(shí)現(xiàn)過程具體如下: ①預(yù)處理階段:在AC-BM模式匹配算法的預(yù)處理階段時(shí),可以將計(jì)算模式集中成模式樹,其原理與AC算法大致相同。 ②改進(jìn)初始位置和匹配方向:AC-BM算法在匹配計(jì)算式,可以改進(jìn)模式樹的初始位置和匹配方向。具體使模式樹最短模式的右端與待測(cè)文本右端對(duì)齊,同時(shí)文本字符T[n=minlen]從左向右開始對(duì)齊。計(jì)算時(shí)如果發(fā)生失配情況,可以將模式樹文本右端向左移動(dòng)。 ③首字符位置失配時(shí)的跳躍規(guī)則改進(jìn):在進(jìn)行AC-BM模式匹配算法時(shí),如果出現(xiàn)首字符位置失配的情況,例如文本Text和模式樹對(duì)齊時(shí),Text第一個(gè)字符匹配不上模式樹中任意的第一個(gè)字符。另外,單模式匹配中BMH算法主要是以文本和模式對(duì)齊處的文本字符T[i]來計(jì)算偏移量,可以采用跳躍思維結(jié)合多模式匹配算法,然后將匹配的首字符和前一字符作為字串決定模式樹偏移量,具體為:P=T[I-1]T[i]。其中如果P再次出現(xiàn)時(shí),可以將模式樹向左移動(dòng),然后使P在模式集中對(duì)齊。 4網(wǎng)絡(luò)入侵檢測(cè)改進(jìn)方案 Snort是一款開源的網(wǎng)絡(luò)入侵防御系統(tǒng)(IPS),可以實(shí)時(shí)分析和記錄網(wǎng)絡(luò)數(shù)據(jù)包,也可以通過執(zhí)行協(xié)議分析、內(nèi)容搜索和匹配,從而發(fā)現(xiàn)各種網(wǎng)絡(luò)攻擊和可疑的探測(cè)。要想改進(jìn)網(wǎng)絡(luò)入侵檢測(cè),就利用Snort檢測(cè)引擎的匹配算法。因此,可以在初始規(guī)則連表上,對(duì)快速規(guī)則匹配的數(shù)據(jù)結(jié)構(gòu)進(jìn)行重新構(gòu)造。其具體構(gòu)造流程分為:構(gòu)造規(guī)則樹、進(jìn)行多模式匹配這兩個(gè)步驟。以上論述的AC-BM算法就是增加了多模式樹的數(shù)據(jù)結(jié)構(gòu),所以很大程度上提高了計(jì)算機(jī)的檢測(cè)效率。這種算法最大優(yōu)點(diǎn)就是能將所有內(nèi)容規(guī)則中的選項(xiàng)提取出來,然會(huì)對(duì)其它選項(xiàng)分開檢測(cè)。這種檢測(cè)方法不僅能將統(tǒng)一規(guī)則所檢測(cè)的數(shù)據(jù)能歸集成一種類型,還能限制檢測(cè)的規(guī)則數(shù),如此就可以考慮采用Snort限定檢測(cè)規(guī)則數(shù)的方式。使用Snort檢測(cè)引擎能大大減少檢測(cè)的規(guī)則樹,從而提高檢測(cè)效率。 另一方面,針對(duì)內(nèi)容檢測(cè)時(shí)必須注重規(guī)則數(shù)量和檢測(cè)速度。根據(jù)BM算法的原理,在檢測(cè)時(shí)模式樹的檢測(cè)推移速度取決于“壞字符”和“好后綴”的移動(dòng)長度。同時(shí),在模式樹中出現(xiàn)短模式會(huì)極大影響算法的實(shí)施。因此,必須先縮小檢測(cè)范圍,才能避免由于規(guī)則數(shù)量過多影響的內(nèi)容檢測(cè)工作。 總結(jié):本文主要研究了多模式匹配算法的計(jì)算機(jī)網(wǎng)絡(luò)入侵檢測(cè),同時(shí)研究了多種模式的匹配算法以及對(duì)網(wǎng)絡(luò)入侵檢測(cè)的改進(jìn)提出了相應(yīng)的對(duì)策。通過觀察對(duì)比AC算法以及AC-BM算法,可以發(fā)現(xiàn)在進(jìn)行計(jì)算機(jī)網(wǎng)絡(luò)入侵檢測(cè)時(shí),使用多種模式的匹配算法能更好的實(shí)現(xiàn)檢測(cè)目的,從而維護(hù)網(wǎng)絡(luò)環(huán)境安全。