專利名稱:基于自組織映射網(wǎng)絡(luò)的自適應(yīng)入侵檢測方法
技術(shù)領(lǐng)域:
本發(fā)明涉及的是一種自適應(yīng)入侵檢測方法,特別是一種基于自組織映射網(wǎng)絡(luò)的自適應(yīng)入侵檢測方法。屬于網(wǎng)絡(luò)信息技術(shù)領(lǐng)域。
背景技術(shù):
入侵檢測技術(shù)作為一種動態(tài)安全技術(shù)以及傳統(tǒng)防火墻的有力補充措施,近年來在安全研究領(lǐng)域成為熱點。按照數(shù)據(jù)來源,又可分為基于主機和基于網(wǎng)絡(luò)入侵檢測。隨著計算環(huán)境轉(zhuǎn)向網(wǎng)絡(luò)和分布式環(huán)境,基于網(wǎng)絡(luò)的入侵檢測技術(shù)逐漸流行。幾乎所有的商用入侵檢測系統(tǒng)都采用傳統(tǒng)的基于關(guān)鍵詞匹配技術(shù),其缺點是具備較高的虛警概率以及不易檢測到較新攻擊手法或者原有攻擊方法的變種。
自適應(yīng)的思想最早體現(xiàn)在異常入侵檢測模型中。異常入侵檢測的基本思想就是建立關(guān)于用戶正常行為狀態(tài)的模型,凡是偏離該模型的行為判斷為異常。而正常行為狀態(tài)模型就是通過不斷學(xué)習(xí)用戶的使用行為(各種統(tǒng)計分析值)來建立的。經(jīng)文獻檢索發(fā)現(xiàn),Tan,K在《In Proceedings of the IEEE International Conference onNeural Networks》,Vol.1(1995)pp.476-481上發(fā)表的“The Application of NeuralNetworks to UNIX Computer Security”一文,(“神經(jīng)網(wǎng)絡(luò)在UNIX計算機安全中的應(yīng)用”,IEEE神經(jīng)網(wǎng)絡(luò)國際會議論文集,1995年第1卷476~481頁),該文提到對MLP網(wǎng)絡(luò)進行改進后,用來自適應(yīng)主機用戶行為模式的不斷變化,所采用的改進方法是首先將MLP網(wǎng)絡(luò)樣本的訓(xùn)練方式由并行改為串行方式,其次是在訓(xùn)練和識別過程中引入了“隨機樣本”,來試圖解決不完整訓(xùn)練樣本的問題。但是該文中并未很好地解決這個問題“隨機樣本”應(yīng)該在何時和以何種頻率加入到網(wǎng)絡(luò)訓(xùn)練和測試中,只是指出應(yīng)該根據(jù)所要學(xué)習(xí)的特征樣本情況而定。經(jīng)分析可知,MLP網(wǎng)絡(luò)訓(xùn)練方式的改變違背了該類型網(wǎng)絡(luò)訓(xùn)練方法的本質(zhì)特征,而隨機樣本的引入帶來了更多的問題,因為如果要自適應(yīng)輸入樣本的變化,很難事先了解樣本特征的情況。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)中的不足,提供一種基于自組織映射網(wǎng)絡(luò)的自適應(yīng)入侵檢測方法,使其用于網(wǎng)絡(luò)入侵檢測目的,選用自組織映射神經(jīng)網(wǎng)絡(luò)的優(yōu)勢在于自組織映射網(wǎng)絡(luò)訓(xùn)練方法其本身可以采用串行化的工作方式,并實現(xiàn)自適應(yīng)的訓(xùn)練功能。通過本發(fā)明方法,實現(xiàn)自適應(yīng)的檢測模型,達到提高入侵檢測性能,并降低虛警概率的效果。
本發(fā)明是通過以下技術(shù)方案實現(xiàn)的,本發(fā)明方法分為兩大階段,即訓(xùn)練階段和檢測階段,首先,對自組織映射神經(jīng)網(wǎng)絡(luò)采用訓(xùn)練樣本集合進行訓(xùn)練,達到穩(wěn)定,之后,訓(xùn)練完畢后的自組織映射神經(jīng)網(wǎng)絡(luò)在檢測階段用于實際的入侵檢測任務(wù),具體如下第一,訓(xùn)練階段在訓(xùn)練階段,首先從會話數(shù)據(jù)矢量訓(xùn)練樣本集獲得輸入特征矢量,然后在進行預(yù)處理后,送入自組織映射神經(jīng)網(wǎng)絡(luò)進行自組織訓(xùn)練直至穩(wěn)定收斂。
訓(xùn)練階段中,自組織映射神經(jīng)網(wǎng)絡(luò)訓(xùn)練方式采用串行工作方式,在具體訓(xùn)練時可分為兩個子階段排序階段和微調(diào)階段,在排序階段,對于每個輸入特征矢量,自組織映射神經(jīng)網(wǎng)絡(luò)在訓(xùn)練時采用較大的初始鄰城尺寸和較大的初始學(xué)習(xí)速率(通常采用0.9),目的在于加快形成大致的有序自組織狀態(tài),同時在排序過程中,自組織映射神經(jīng)網(wǎng)絡(luò)訓(xùn)練時采用的鄰域大小和學(xué)習(xí)速率都隨時間遞減;而在進入微調(diào)階段后,則僅對贏單元的權(quán)值矢量進行調(diào)整。
所述的輸入特征矢量,其構(gòu)建過程包括如下步驟(1)從所收集的網(wǎng)絡(luò)數(shù)據(jù)包中構(gòu)建網(wǎng)絡(luò)會話數(shù)據(jù)矢量,即單個網(wǎng)絡(luò)會話中雙方實體之間所傳輸?shù)乃袛?shù)據(jù)負載內(nèi)容。
(2)在構(gòu)建完畢網(wǎng)絡(luò)會話數(shù)據(jù)矢量后,然后根據(jù)選定的關(guān)鍵詞表,在會話數(shù)據(jù)內(nèi)容中搜索匹配各個關(guān)鍵字,并形成各個關(guān)鍵字對應(yīng)的統(tǒng)計計數(shù)值。
(3)然后,將各個關(guān)鍵字計數(shù)值并行排列起來形成輸入特征矢量,即作為神經(jīng)網(wǎng)絡(luò)輸入的特征矢量中的每個分量代表著對應(yīng)關(guān)鍵詞在會話數(shù)據(jù)中出現(xiàn)次數(shù)的計數(shù)值。
(4)在輸入到神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練之前,必須對輸入特征矢量進行預(yù)處理工作。預(yù)處理主要包括歸一化過程,在本方法中,針對的是各個關(guān)鍵字計數(shù)值字段的歸一化問題。
第二,檢測階段在實際的檢測階段,本發(fā)明首先從實際輸入的數(shù)據(jù)樣本集中生成輸入特征矢量,然后將它們按照串行方式依次送入自組織映射神經(jīng)網(wǎng)絡(luò),得到對應(yīng)的輸出值。對于每個輸入特征矢量,用其產(chǎn)生的輸出值對自組織映射神經(jīng)網(wǎng)絡(luò)內(nèi)的神經(jīng)元權(quán)值進行調(diào)整,完成一次自適應(yīng)訓(xùn)練過程。
檢測階段,具體包括以下步驟(1)根據(jù)當前網(wǎng)絡(luò)會話數(shù)據(jù)和上面所述的構(gòu)造輸入特征矢量的方法,首先構(gòu)造一個輸入樣本X,送入到自組織映射網(wǎng)絡(luò)進行計算,得到對應(yīng)的檢測輸出值Y。
(2)然后,設(shè)定一個閾值λ進行判斷,如果Y>λ,則構(gòu)造輸入特征矢量Z={X,1},表明判斷當前會話數(shù)據(jù)異常;否則,構(gòu)造Z={X,0},表明判斷當前會話數(shù)據(jù)正常。
(3)緊接著,對贏單元及其鄰域η內(nèi)輸出神經(jīng)元的權(quán)值按照輸入矢量Z進行調(diào)整修改。
至此,完成對一個輸入樣本的自適應(yīng)訓(xùn)練過程。對于后繼的輸入樣本,可循環(huán)進行檢測和自適應(yīng)訓(xùn)練的過程。由此,實現(xiàn)基于自組織映射網(wǎng)絡(luò)的自適應(yīng)入侵檢測方法。
本發(fā)明方法的優(yōu)點在于,利用自組織映射神經(jīng)網(wǎng)絡(luò)本身的串行工作特征,實現(xiàn)了輸入樣本的自適應(yīng)訓(xùn)練過程,建立了自適應(yīng)檢測模型,解決了Tan,K等人選擇“隨機樣本”存在的難以選定樣本類型問題以及MLP模型本身存在的難以進行串行工作的問題。本發(fā)明方法實現(xiàn)過程簡潔、原理直觀,能夠提高入侵檢測自適應(yīng)學(xué)習(xí)的能力,從而提高檢測性能。
具體實施例方式
結(jié)合本發(fā)明方法的具體內(nèi)容提供以下的實施例實施的環(huán)境為具有多臺PC機的內(nèi)部局域網(wǎng)。其中1臺主機用作服務(wù)器,安裝了Windows 2000 Server操作系統(tǒng)和IIS 5.0服務(wù)器軟件,局域網(wǎng)采用10M以太網(wǎng)卡和10M以太集線器進行搭建。在實施中,1臺PC工作站作為攻擊主機使用,另外若干工作站產(chǎn)生正常的網(wǎng)絡(luò)流量數(shù)據(jù)。因為實施環(huán)境是內(nèi)部局域網(wǎng),所以可以避免外部入侵的可能性,能夠保證在正常網(wǎng)絡(luò)操作條件下采集到所需的正常Web會話樣本。攻擊樣本的產(chǎn)生同時采用了手工模擬方式,以及使用Satan、Superscan等安全掃描軟件的自動工作方式。
實施例的具體實施過程如下
(1)通過攻擊主機和正常工作主機共發(fā)送1,230個Web協(xié)議會話的訓(xùn)練樣本,其中包括30個攻擊樣本數(shù)據(jù),其他均為正常會話樣本;在所有的攻擊樣本中包含了多種基于Web服務(wù)的攻擊手段,例如傳統(tǒng)的PHF攻擊和Translate:f漏洞發(fā)掘。
(2)從所收集的網(wǎng)絡(luò)數(shù)據(jù)包中構(gòu)建網(wǎng)絡(luò)會話數(shù)據(jù)矢量,然后根據(jù)選定的關(guān)鍵詞表,在會話數(shù)據(jù)內(nèi)容中搜索匹配各個關(guān)鍵字,并形成各個關(guān)鍵字對應(yīng)的統(tǒng)計計數(shù)值。
(3)然后,將各個關(guān)鍵字計數(shù)值并行排列起來形成輸入特征矢量。
(4)然后在進行預(yù)處理后,送入自組織映射網(wǎng)絡(luò)進行自組織訓(xùn)練直至穩(wěn)定收斂。在具體訓(xùn)練時可分為兩個子階段排序階段和微調(diào)階段。在排序階段采用較大的初始鄰城尺寸(采用SOM輸出平面中輸出神經(jīng)元最大間距的1/4)和較大的初始學(xué)習(xí)速率(采用0.9),加快形成大致的有序自組織狀態(tài),同時在排序過程中鄰域大小和學(xué)習(xí)速率都隨時間遞減。而在進入微調(diào)階段后,則僅對羸單元的權(quán)值矢量進行調(diào)整。
(5)此時,通過攻擊主機和正常工作主機發(fā)送890個Web會話的測試樣本,其中包括30個攻擊樣本數(shù)據(jù)。在這些攻擊樣本中包含了15個未在訓(xùn)練樣本中出現(xiàn)過的新攻擊樣本。
(6)根據(jù)當前網(wǎng)絡(luò)會話數(shù)據(jù),構(gòu)造一個輸入樣本X,送入到SOM網(wǎng)絡(luò)進行計算,得到對應(yīng)的檢測輸出值Y。
(7)然后,設(shè)定一個閾值λ進行判斷,如果Y>λ,則構(gòu)造輸入特征矢量Z={X,1},表明判斷當前會話數(shù)據(jù)異常;否則,構(gòu)造Z={X,0},表明判斷當前會話數(shù)據(jù)正常。
(8)緊接著,對贏單元及其鄰域η內(nèi)輸出神經(jīng)元的權(quán)值按照輸入矢量Z進行調(diào)整修改。
(9)對隨后的測試樣本,重復(fù)執(zhí)行(6)~(8)的操作步驟。
實施效果當閾值λ取0.2,鄰域η取3時,對測試樣本集中出現(xiàn)的新攻擊樣本的檢測性能是在1%的虛警概率下能夠達到100%的檢測概率。
權(quán)利要求
1.一種基于自組織映射網(wǎng)絡(luò)的自適應(yīng)入侵檢測方法,其特征在于,方法分為兩大階段,即訓(xùn)練階段和檢測階段,首先,對自組織映射神經(jīng)網(wǎng)絡(luò)采用訓(xùn)練樣本集合進行訓(xùn)練,達到穩(wěn)定,之后,訓(xùn)練完畢后的自組織映射神經(jīng)網(wǎng)絡(luò)在檢測階段用于實際的入侵檢測任務(wù),具體如下第一,訓(xùn)練階段在訓(xùn)練階段,首先從會話數(shù)據(jù)矢量訓(xùn)練樣本集獲得輸入特征矢量,然后在進行預(yù)處理后,送入自組織映射神經(jīng)網(wǎng)絡(luò)進行自組織訓(xùn)練直至穩(wěn)定收斂;第二,檢測階段首先從實際輸入的數(shù)據(jù)樣本集中生成輸入特征矢量,然后將它們按照串行方式依次送入自組織映射神經(jīng)網(wǎng)絡(luò),得到對應(yīng)的輸出值,對于每個輸入特征矢量,用其產(chǎn)生的輸出值對自組織映射神經(jīng)網(wǎng)絡(luò)內(nèi)的神經(jīng)元權(quán)值進行調(diào)整,完成一次自適應(yīng)訓(xùn)練過程。
2.根據(jù)權(quán)利要求1所述的基于自組織映射網(wǎng)絡(luò)的自適應(yīng)入侵檢測方法,其特征是,所述的訓(xùn)練階段中,自組織映射神經(jīng)網(wǎng)絡(luò)訓(xùn)練方式采用串行工作方式,在具體訓(xùn)練時分為兩個子階段排序階段和微調(diào)階段,在排序階段,對于每個輸入特征矢量,自組織映射神經(jīng)網(wǎng)絡(luò)在訓(xùn)練時采用較大的初始鄰城尺寸和較大的初始學(xué)習(xí)速率,加快形成大致的有序自組織狀態(tài),同時在排序過程中,自組織映射神經(jīng)網(wǎng)絡(luò)訓(xùn)練時采用的鄰域大小和學(xué)習(xí)速率都隨時間遞減,而在進入微調(diào)階段后,則僅對贏單元的權(quán)值矢量進行調(diào)整。
3.根據(jù)權(quán)利要求1或2所述的基于自組織映射網(wǎng)絡(luò)的自適應(yīng)入侵檢測方法,其特征是,所述的輸入特征矢量,其構(gòu)建過程包括如下步驟(1)從所收集的網(wǎng)絡(luò)數(shù)據(jù)包中構(gòu)建網(wǎng)絡(luò)會話數(shù)據(jù)矢量,即單個網(wǎng)絡(luò)會話中雙方實體之間所傳輸?shù)乃袛?shù)據(jù)負載內(nèi)容;(2)在構(gòu)建完畢網(wǎng)絡(luò)會話數(shù)據(jù)矢量后,然后根據(jù)選定的關(guān)鍵詞表,在會話數(shù)據(jù)內(nèi)容中搜索匹配各個關(guān)鍵字,并形成各個關(guān)鍵字對應(yīng)的統(tǒng)計計數(shù)值;(3)然后,將各個關(guān)鍵字計數(shù)值并行排列起來形成輸入特征矢量,即作為神經(jīng)網(wǎng)絡(luò)輸入的特征矢量中的每個分量代表著對應(yīng)關(guān)鍵詞在會話數(shù)據(jù)中出現(xiàn)次數(shù)的計數(shù)值;(4)在輸入到神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練之前,必須對輸入特征矢量進行預(yù)處理工作,即對各個關(guān)鍵字計數(shù)值字段的歸一化。
4.根據(jù)權(quán)利要求1所述的基于自組織映射網(wǎng)絡(luò)的自適應(yīng)入侵檢測方法,其特征是,所述的檢測階段,具體包括以下步驟(1)根據(jù)當前網(wǎng)絡(luò)會話數(shù)據(jù)和上面所述的構(gòu)造輸入特征矢量的方法,首先構(gòu)造一個輸入樣本X,送入到自組織映射網(wǎng)絡(luò)進行計算,得到對應(yīng)的檢測輸出值Y;(2)然后,設(shè)定一個閾值λ進行判斷,如果Y>λ,則構(gòu)造輸入特征矢量Z={X,1},表明判斷當前會話數(shù)據(jù)異常,否則,構(gòu)造Z={X,0},表明判斷當前會話數(shù)據(jù)正常;(3)緊接著,對贏單元及其鄰域η內(nèi)輸出神經(jīng)元的權(quán)值按照輸入矢量Z進行調(diào)整修改。
全文摘要
一種基于自組織映射網(wǎng)絡(luò)的自適應(yīng)入侵檢測方法。屬于信息安全領(lǐng)域。方法分為兩大階段,即訓(xùn)練階段和檢測階段,在訓(xùn)練階段,首先從會話數(shù)據(jù)矢量訓(xùn)練樣本集獲得輸入特征矢量,然后在進行預(yù)處理后,送入自組織映射神經(jīng)網(wǎng)絡(luò)進行自組織訓(xùn)練直至穩(wěn)定收斂;在檢測階段中,首先從實際輸入的數(shù)據(jù)樣本集中生成輸入特征矢量,然后將它們按照串行方式依次送入自組織映射神經(jīng)網(wǎng)絡(luò),得到對應(yīng)的輸出值,對于每個輸入特征矢量,用其產(chǎn)生的輸出值對自組織映射神經(jīng)網(wǎng)絡(luò)內(nèi)的神經(jīng)元權(quán)值進行調(diào)整,完成一次自適應(yīng)訓(xùn)練過程。本發(fā)明方法實現(xiàn)過程簡潔、原理直觀,能夠提高入侵檢測自適應(yīng)學(xué)習(xí)的能力,從而提高檢測性能。
文檔編號H04L12/24GK1555156SQ20031012278
公開日2004年12月15日 申請日期2003年12月25日 優(yōu)先權(quán)日2003年12月25日
發(fā)明者唐正軍, 李建華, 楊樹堂, 伍星, 陳杰 申請人:上海交通大學(xué)