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