專利名稱:大規(guī)模分布式入侵檢測系統(tǒng)的任務(wù)分派機(jī)制的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)安全領(lǐng)域,具體涉及一種基于移動代理技術(shù)的分布式大規(guī)模入侵檢測系統(tǒng)之中協(xié)調(diào)模塊對移動代理的實(shí)時控制機(jī)制。
通過Internet,可以很方便地從異地取回重要數(shù)據(jù),同時又要面對網(wǎng)絡(luò)開放帶來的數(shù)據(jù)安全的新挑戰(zhàn)和新危險。如何保護(hù)企業(yè)的機(jī)密信息不受黑客和工業(yè)間諜的入侵,已成為政府機(jī)構(gòu)、企事業(yè)單位信息化健康發(fā)展所要考慮的重要問題之一。網(wǎng)絡(luò)安全日益成為影響網(wǎng)絡(luò)效能的重要問題,而Internet所具有的開放性、國際性和自由性在增加應(yīng)用自由度的同時,對安全提出了更高的要求。
為了在一定程度上保障網(wǎng)絡(luò)上信息的安全性,一系列安全技術(shù)比如防火墻、虛擬專用網(wǎng)、入侵檢測系統(tǒng)、身份認(rèn)證、數(shù)據(jù)加密、安全掃描等等成為研究的熱點(diǎn)。目前,已經(jīng)比較成熟的防火墻技術(shù)存在著弊端,比如后門、內(nèi)部攻擊、實(shí)時性以及對病毒的防范。入侵檢測系統(tǒng)(IDS,Intrusion Detection System)作為一種主動防御策略,可以彌補(bǔ)防火墻的不足,為網(wǎng)絡(luò)安全提供實(shí)時的入侵檢測并采取相應(yīng)的防護(hù)手段。
隨著網(wǎng)絡(luò)規(guī)模的不斷擴(kuò)大,網(wǎng)絡(luò)攻擊手段也在不斷發(fā)展,例如分布式拒絕服務(wù)攻擊造成了巨大的經(jīng)濟(jì)損失并且以目前的技術(shù)手段難以防范,這時候,基于主機(jī)以及小規(guī)模網(wǎng)絡(luò)的入侵檢測系統(tǒng)顯示了其局限性,而將入侵檢測系統(tǒng)應(yīng)用于大規(guī)模高速網(wǎng)絡(luò)成為入侵檢測系統(tǒng)研究的新的立足點(diǎn)。為了能夠應(yīng)用于大規(guī)模高速網(wǎng)絡(luò)并檢測分布式攻擊,入侵檢測系統(tǒng)一般采用分層的分布式結(jié)構(gòu),通過分散采集、分布處理和集中管理,滿足了大規(guī)模高速網(wǎng)絡(luò)的需求。稱這種應(yīng)用于大規(guī)模高速網(wǎng)絡(luò)的入侵檢測系統(tǒng)為大規(guī)模分布式入侵檢測系統(tǒng)。
代理和移動代理是近年來新提出的概念和技術(shù),代理是一個軟件實(shí)體,它能夠連續(xù)自主地在特定的環(huán)境中工作,能夠隨著外界條件的變化靈活智能地進(jìn)行反應(yīng)。一個理想的代理應(yīng)該有很好的繼承性,并能夠與系統(tǒng)中的其他代理進(jìn)行通信,而且還可以在不斷地移動中完成上述操作。靜態(tài)代理(StationaryAgent)駐于某一固定的位置或某一固定的平臺。移動代理(Mobile Agent)是一個代替人或其它程序執(zhí)行某種任務(wù)的程序,它在復(fù)雜的網(wǎng)絡(luò)系統(tǒng)中能自主地從一臺主機(jī)移動到另一臺主機(jī),該程序能夠選擇何時、何地移動。在移動時,該程序可以根據(jù)要求掛起其運(yùn)行,然后轉(zhuǎn)移到網(wǎng)絡(luò)的其它地方重新開始或繼續(xù)其執(zhí)行,最后返回結(jié)果和消息。
代理技術(shù)自身的很多優(yōu)點(diǎn)使其可以應(yīng)用于入侵檢測系統(tǒng),并極大提高了入侵檢測系統(tǒng)的效率和可用性。國際上很多研究IDS的工作組,比如日本IPA(Information-technology Promotion Agency)的IDA(Intrusion DetectionAgent system)、美國IOWA州立大學(xué)的MAIDS(Mobile Agents IntrusionDetection System)、Purdue大學(xué)的AAFID(Autonomous Agents For IntrusionDetection)等都把代理技術(shù)作為研究入侵檢測系統(tǒng)的新的切入點(diǎn)。本發(fā)明的目的本發(fā)明的目的在于避免基于移動代理的大規(guī)模分布式入侵檢測系統(tǒng)中各部件之間負(fù)載不均衡或者突發(fā)事件不能響應(yīng)而提供一種移動代理的控制方法。
在大規(guī)模分布式入侵檢測系統(tǒng)中,處于各個功能層的靜態(tài)代理,會突然發(fā)生一些異常情況,比如有大量數(shù)據(jù)需要處理或出現(xiàn)大量入侵行為需要應(yīng)對的情況,在這種情況下,使用已有的資源和處理能力無法完成數(shù)據(jù)處理任務(wù),而如果數(shù)據(jù)不能及時得到處理,那勢必會出現(xiàn)漏包、丟包的情況,從而降低入侵檢測系統(tǒng)的效率。
使用本發(fā)明,就是根據(jù)需要由協(xié)調(diào)模塊派出移動代理,到需要的地方去執(zhí)行任務(wù)。這樣一方面加強(qiáng)了那里的處理能力,使某一局部的處理能力和實(shí)際的需求相適應(yīng),使得某一局部負(fù)載不會過大;另一方面派出移動代理可以執(zhí)行特殊的任務(wù),也就是說,下層的處理模塊(可以是靜態(tài)的代理)只具備常規(guī)的處理能力,完成一般的處理任務(wù),但它們具備一定的懷疑能力。而協(xié)調(diào)模塊派出的移動代理是專門用于處理復(fù)雜情況的,比如檢測未知攻擊等。
首先,本發(fā)明是針對大規(guī)模分布式入侵檢測系統(tǒng)的四層結(jié)構(gòu)提出來的,這個四層結(jié)構(gòu)由下層到上層按照數(shù)據(jù)流分別是數(shù)據(jù)采集層、數(shù)據(jù)分析層、數(shù)據(jù)融合層以及協(xié)調(diào)管理層,四層相應(yīng)完成特定的功能,一個重要的模塊——協(xié)調(diào)模塊處于協(xié)調(diào)管理層,它的主要工作是對代理進(jìn)行實(shí)時控制和管理,完成移動代理的克隆、遷移并回收的過程,合理地使用和分配移動代理,合理地給它們分派任務(wù)。
在本發(fā)明中,為了確保代理之間通信的順利進(jìn)行,代理這種軟件實(shí)體的名字必須是全局唯一的,以把自己和其他代理區(qū)別開來。移動代理在網(wǎng)絡(luò)間移動,需要改變自己的位置,以便于協(xié)調(diào)模塊對其進(jìn)行跟蹤或通信,協(xié)調(diào)模塊可以提供定位服務(wù)對代理進(jìn)行正確定位。
協(xié)調(diào)模塊提供名字服務(wù)和代理的定位服務(wù),可以用作名字服務(wù)器。代理一旦創(chuàng)建,就在協(xié)調(diào)模塊中注冊自己的名字和當(dāng)前位置。移動代理遷移時,要在協(xié)調(diào)模塊中更新自己的位置信息,這時候協(xié)調(diào)模塊作為定位服務(wù)器記錄下移動代理的路徑。名字服務(wù)很適合大規(guī)模的移動代理環(huán)境,在Internet上,它可以像DNS服務(wù)器一樣,以樹型層次提供代理定位服務(wù)。在已實(shí)現(xiàn)的移動代理系統(tǒng)中,代理的名字必須擁有一個全局唯一的名字或ID來唯一標(biāo)識這個代理。
為了獲得自己的唯一ID號,代理創(chuàng)建時需要向協(xié)調(diào)模塊注冊。這個注冊功能由名字請求和應(yīng)答消息來完成。代理創(chuàng)建后,向協(xié)調(diào)模塊發(fā)送名字請求消息,這個消息包含了代理自己的有關(guān)信息,如本地名字、所在節(jié)點(diǎn)的IP、認(rèn)證信息等。協(xié)調(diào)模塊收到名字請求信息后,進(jìn)行身份認(rèn)證,通過后,記錄該代理的有關(guān)信息,并根據(jù)ID的分配策略,為其分配唯一的ID值,并用自己的有關(guān)信息和此ID值對名字請求消息進(jìn)行應(yīng)答,發(fā)起請求的代理收到應(yīng)答后,對協(xié)調(diào)模塊進(jìn)行身份認(rèn)證,通過后,如果是靜態(tài)代理就在協(xié)調(diào)模塊的控制下運(yùn)行,如果是移動代理就存儲在移動代理庫中,隨時準(zhǔn)備調(diào)出。整個注冊過程可以用
圖1表示。
本發(fā)明中涉及到的通信主要是代理與協(xié)調(diào)模塊之間的通信,具體包括靜態(tài)代理與協(xié)調(diào)模塊的通信、移動代理與協(xié)調(diào)模塊的通信以及靜態(tài)代理與移動代理的通信。
(1)靜態(tài)代理與協(xié)調(diào)模塊之間的通信靜態(tài)代理分布于入侵檢測系統(tǒng)的各個功能層,協(xié)助相應(yīng)的功能模塊完成特定的功能,提供不同的服務(wù),靜態(tài)代理與協(xié)調(diào)模塊之間的通信可以采取通常的C1ient/Server結(jié)構(gòu),為了減少開發(fā)的工作量,具體可以使用基于RPC(RemoteProcedure Call)的通信機(jī)制。通信模型如圖2。
(2)移動代理與協(xié)調(diào)模塊之間的通信移動代理創(chuàng)建后存放于移動代理庫中并處于休眠狀態(tài),在需要的時候由協(xié)調(diào)模塊激活并遷移到需要的地方完成任務(wù)。移動代理在移動的過程中始終與協(xié)調(diào)模塊保持聯(lián)系,直到任務(wù)完成被終止。移動代理與協(xié)調(diào)模塊之間的通信也是Client/Server結(jié)構(gòu),可參照靜態(tài)代理與協(xié)調(diào)模塊的通信。通信模型如圖3。
(3)靜態(tài)代理與移動代理之間的通信靜態(tài)代理與移動代理的通信主要發(fā)生在移動代理的接收過程以及移動代理協(xié)助靜態(tài)代理完成任務(wù)的過程中。靜態(tài)代理與移動代理進(jìn)行交互的過程可以看作兩個對等體之間通信,因此它們之間可以采用BEEP進(jìn)行通信,靜態(tài)代理在對移動代理的狀態(tài)成功恢復(fù)之后,即在靜態(tài)代理與移動代理之間建立一個BEEP會話,這個BEEP會話包括多個BEEP信道,以方便靜態(tài)代理與移動代理之間傳輸不同內(nèi)容的消息,靜態(tài)代理與移動代理通過這個BEEP會話進(jìn)行綁定并交互,完成任務(wù)。通信模型如圖4。
本發(fā)明中,代理之間、代理與協(xié)調(diào)模塊之間的通信要通過統(tǒng)一的消息格式來完成。每一條消息由兩部分組成,消息頭和消息體。整個消息是最大長度為216字節(jié)的一定結(jié)構(gòu)的字符串,具體消息的內(nèi)容隨不同的消息而不同,根據(jù)實(shí)際情況,它應(yīng)該動態(tài)包括靜態(tài)代理需要的移動代理類型、警報(bào)的危險級別、協(xié)調(diào)模塊對移動代理的指令、需要傳輸?shù)囊苿哟淼拇a等等內(nèi)容。整個消息的結(jié)構(gòu)可以用圖5表示。
在大規(guī)模分布式入侵檢測系統(tǒng)的設(shè)計(jì)中應(yīng)遵循“靜態(tài)代理為主,移動代理為輔”的原則,即在能夠使用靜態(tài)代理的場合,盡量不要使用移動代理,以減少系統(tǒng)的復(fù)雜度。在大規(guī)模分布式入侵檢測系統(tǒng)中,靜態(tài)代理可以分布于采集層、分析層和融合層以及處于協(xié)調(diào)管理層的響應(yīng)模塊中,相應(yīng)完成數(shù)據(jù)采集、數(shù)據(jù)分析、數(shù)據(jù)融合和實(shí)時響應(yīng)等功能。
根據(jù)靜態(tài)代理所完成的功能,系統(tǒng)管理員通過人機(jī)界面編寫好對應(yīng)功能的移動代理,并事先存放于一個移動代理庫中,移動代理庫可以位于數(shù)據(jù)庫中,或者就是系統(tǒng)中的某一個文件夾。這些移動代理可以被協(xié)調(diào)模塊隨時調(diào)出使用。移動代理庫由系統(tǒng)管理員通過人機(jī)界面負(fù)責(zé)維護(hù),可以根據(jù)情況更新或升級移動代理。同時移動代理也具有一定的學(xué)習(xí)能力,可以自主地更新以應(yīng)付突發(fā)情況。
本發(fā)明的主要部分可以具體描述如下●請求機(jī)制任務(wù)分派由各個功能層的靜態(tài)代理發(fā)起,這些代理或者完成數(shù)據(jù)采集、數(shù)據(jù)分析,或者專門從事響應(yīng)工作。靜態(tài)代理在工作過程中可能會出現(xiàn)下面一些情況,比如某個網(wǎng)絡(luò)節(jié)點(diǎn)的數(shù)據(jù)量突然增大,這可能是由分布式拒絕服務(wù)攻擊所引起的回饋攻擊,這會導(dǎo)致該節(jié)點(diǎn)處數(shù)據(jù)擁塞,檢測部件的負(fù)載嚴(yán)重超標(biāo),從而導(dǎo)致整個系統(tǒng)的處理功能下降。還有,由于防御總是滯后于入侵的,因此出現(xiàn)一些新的入侵方式的時候,數(shù)據(jù)庫來不及更新,靜態(tài)代理等檢測部件不能根據(jù)入侵模式來有效檢測出這些攻擊,也會造成整個系統(tǒng)的效率下降。此外,由于網(wǎng)絡(luò)環(huán)境的復(fù)雜性,還會出現(xiàn)很多不可知的復(fù)雜情況,都會直接或間接影響到入侵檢測系統(tǒng)的可用性。
如果出現(xiàn)上述情況,靜態(tài)代理感到負(fù)載過重或出現(xiàn)異常情況無法處理時,靜態(tài)代理就向處于管理層的協(xié)調(diào)模塊發(fā)出請求,請求按照上面定義好的消息格式與通信機(jī)制,消息體包括靜態(tài)代理遇到的特殊情況、警報(bào)的級別、需要什么樣的代理等內(nèi)容。整個過程的流程圖如圖6所示。
●遷移機(jī)制處于管理層的協(xié)調(diào)模塊收到靜態(tài)代理的請求消息并驗(yàn)證該消息的有效性之后,根據(jù)靜態(tài)代理的要求,從移動代理庫中選擇合適的移動代理并進(jìn)行遷移。具體的遷移過程可以描述為1)認(rèn)證請求者;協(xié)調(diào)模塊提取消息頭中的數(shù)字簽名對請求者進(jìn)行身份認(rèn)證。
2)協(xié)調(diào)模塊選擇合適的移動代理;協(xié)調(diào)模塊收到靜態(tài)代理的消息后并通過身份驗(yàn)證之后,對消息體進(jìn)行解碼,得出消息的內(nèi)容,同時得到發(fā)出請求的靜態(tài)代理信息比如網(wǎng)絡(luò)節(jié)點(diǎn)、靜態(tài)代理類別、需要的移動代理等等,隨后在移動代理庫中進(jìn)行搜索,根據(jù)模式匹配的原則,找到所需的移動代理的ID,然后在該移動代理的初始位置復(fù)制一個完全一樣的移動代理以備調(diào)用和實(shí)例化。
3)協(xié)調(diào)模塊序列化該移動代理的類和狀態(tài)的實(shí)例;為了滿足移動代理跨平臺操作的需要,移動代理通常用解釋性語言比如Java編寫,這樣也方便對該移動代理進(jìn)行序列化。序列化是指將對象實(shí)例的狀態(tài)存儲到存儲媒體的過程。在此過程中,先將對象的公共字段和私有字段以及類的名稱(包括類所在的程序集)轉(zhuǎn)換為字節(jié)流,然后再把字節(jié)流寫入數(shù)據(jù)流。在隨后對對象進(jìn)行反序列化時,將創(chuàng)建出與原對象完全相同的副本。
協(xié)調(diào)模塊對適合靜態(tài)代理請求的移動代理進(jìn)行復(fù)制以后,即對該副本的類和狀態(tài)進(jìn)行序列化,得到的是該移動代理的字節(jié)流形式。該字節(jié)流可以是基于XML格式的描述。
4)選擇傳輸協(xié)議對序列化后的移動代理進(jìn)行編碼;第二步得到的移動代理的字節(jié)流形式并不適合傳輸,因此還要采取特定的協(xié)議和編碼規(guī)則對字節(jié)流進(jìn)行編碼,這樣最后得到一個二進(jìn)制碼串,這樣的編碼適合傳輸。
5)傳輸移動代理。
對字節(jié)流進(jìn)行二進(jìn)制編碼之后就要對這個代理進(jìn)行傳輸了,在傳輸?shù)臅r候根據(jù)平臺或網(wǎng)絡(luò)狀況采用相應(yīng)的協(xié)議,代理二進(jìn)制代碼存儲在消息格式的消息體中。
整個代理發(fā)送機(jī)制的流程圖如圖7所示。
目標(biāo)節(jié)點(diǎn)的靜態(tài)代理收到協(xié)調(diào)模塊的應(yīng)答之后,首先驗(yàn)證消息里面的數(shù)字簽名,以證明消息的有效性和安全性,然后進(jìn)行相反的工作得到移動代理的狀態(tài)并與移動代理進(jìn)行交互完成任務(wù)1)認(rèn)證移動代理的可用性;消息通過驗(yàn)證之后,靜態(tài)代理提取消息體中的內(nèi)容,進(jìn)一步提取關(guān)于移動代理的相關(guān)信息,驗(yàn)證移動代理的有效性,如果是自己請求的移動代理,則進(jìn)行下面的工作,如果不是自己請求的移動代理,則向協(xié)調(diào)模塊發(fā)出請求,請求撤消這個錯誤的移動代理并重新發(fā)送正確地移動代理。
2)用相同的協(xié)議對移動代理解碼;驗(yàn)證移動代理的有效性之后,靜態(tài)代理從消息體中提取移動代理的二進(jìn)制編碼,然后靜態(tài)代理采用相同的編碼規(guī)則對二進(jìn)制編碼進(jìn)行解碼,得出關(guān)于移動代理的序列化后的字節(jié)流。這個字節(jié)流包括所需的移動代理的類和狀態(tài)。
3)反序列化移動代理的類和狀態(tài);和序列化的過程相反,反序列化就是從序列化后得到的字節(jié)流中得出原來移動代理程序?qū)嵗臄?shù)據(jù)結(jié)構(gòu),當(dāng)反序列化已序列化的類時,將重新創(chuàng)建該類,并還原所有數(shù)據(jù)成員的值。
4)恢復(fù)移動代理的狀態(tài);反序列化得到了移動代理的實(shí)例的類和數(shù)據(jù)結(jié)構(gòu),然后,靜態(tài)代理可以在自己的節(jié)點(diǎn)重新編譯移動代理的類和數(shù)據(jù)結(jié)構(gòu),從而恢復(fù)移動代理的狀態(tài)。
5)恢復(fù)移動代理的執(zhí)行。
恢復(fù)移動代理的狀態(tài)之后,就可以激活移動代理,讓移動代理在靜態(tài)代理處運(yùn)行,從而靜態(tài)代理與移動代理相互協(xié)作完成任務(wù),解決靜態(tài)代理處節(jié)點(diǎn)所發(fā)生的問題。
這樣,該移動代理被遷移到發(fā)起請求的靜態(tài)代理處并協(xié)助靜態(tài)代理完成相應(yīng)的工作。
整個代理接收機(jī)制的流程圖如圖8所示。
●回收機(jī)制移動代理在本地執(zhí)行任務(wù),同時與協(xié)調(diào)模塊保持著必要的聯(lián)系,這樣做也方便了移動代理把靜態(tài)代理節(jié)點(diǎn)處所發(fā)生的異常情況報(bào)告協(xié)調(diào)模塊,從而使協(xié)調(diào)模塊提煉出有用信息形成規(guī)則。移動代理協(xié)助靜態(tài)代理完成任務(wù)后,會按照預(yù)定的消息格式,向協(xié)調(diào)模塊發(fā)出請求消息,消息體里面包含要求撤消的內(nèi)容。協(xié)調(diào)模塊收到請求消息并通過認(rèn)證之后,會給該移動代理發(fā)送消息,消息體的內(nèi)容包含終止該移動代理的進(jìn)程的指令。移動代理收到協(xié)調(diào)模塊的終止指令之后,會終止自己的進(jìn)程。
回收機(jī)制的流程圖如圖9所示。
這樣,一個移動代理在協(xié)調(diào)模塊的控制下,完成了遷移以及回收的過程。
本發(fā)明的所有機(jī)制可以用圖10來形象描述。發(fā)明與現(xiàn)有技術(shù)相比具有的優(yōu)點(diǎn)和積極效果本發(fā)明主要是針對基于移動代理的大規(guī)模分布式入侵檢測系統(tǒng)而提出的一種機(jī)制。大規(guī)模分布式入侵的特征主要有以下幾點(diǎn)1.涉及的范圍廣泛通常被攻擊者攻陷的主機(jī)遍布于不同子網(wǎng)中或不同地域,甚至是全球性的攻擊。
2.攻擊速度快攻擊者攻陷多主機(jī)后,攻擊的規(guī)模成倍增長,攻擊的規(guī)模擴(kuò)展速度非常高。
3.數(shù)據(jù)流量大被攻陷主機(jī)同時發(fā)出攻擊行為時,網(wǎng)絡(luò)中的數(shù)據(jù)量非常龐大,甚至阻塞整個網(wǎng)絡(luò)。
分布式主要體現(xiàn)在對分布式攻擊的檢測以及數(shù)據(jù)的分布式采集。
由于大規(guī)模分布式入侵本身的特點(diǎn),導(dǎo)致大規(guī)模分布式入侵檢測的工作并不能由一個簡單的系統(tǒng)完成,而需要整個網(wǎng)絡(luò)中的安全部件相互協(xié)同工作來檢測,不同區(qū)域內(nèi)的入侵檢測系統(tǒng)協(xié)同工作進(jìn)行檢測。
在入侵檢測系統(tǒng)中使用代理可以完成數(shù)據(jù)采集、數(shù)據(jù)預(yù)處理、數(shù)據(jù)分析等功能,使用移動代理可以實(shí)時就地處理數(shù)據(jù)和突發(fā)事件,減少系統(tǒng)內(nèi)部通信量,對入侵進(jìn)行響應(yīng)和追蹤等。具體說來,入侵檢測系統(tǒng)中使用移動代理有如下特征1.移動代理可以自主執(zhí)行,動態(tài)適應(yīng)移動代理具備一定的自主性和智能性,它提供一種靈活多樣的運(yùn)行機(jī)制,使得自身可以比較“聰明”地適應(yīng)所處的環(huán)境,對環(huán)境的變化做出反應(yīng),比如移動代理可以移動到負(fù)載過重的地方,協(xié)助處理數(shù)據(jù)以實(shí)現(xiàn)負(fù)載的平衡。同時移動代理也可以方便地被系統(tǒng)中負(fù)責(zé)管理移動代理的協(xié)調(diào)模塊進(jìn)行克隆、分派、掛起、回收。
2.使用移動代理可以減輕網(wǎng)絡(luò)負(fù)載和減小網(wǎng)絡(luò)延時,減少系統(tǒng)內(nèi)部通信量由于移動代理可以移動到事發(fā)地進(jìn)行現(xiàn)場處理,因此使用移動代理可以有效減輕和平衡網(wǎng)絡(luò)負(fù)載,有利于提高網(wǎng)絡(luò)的使用效率,減小網(wǎng)絡(luò)延時。需要在網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)少了,系統(tǒng)內(nèi)部的通信量也就減少了。
3.移動代理可以運(yùn)行于多種平臺之上,或說代理的運(yùn)行是與平臺無關(guān)的由于移動代理可以從一種平臺移動到另一種平臺,移動后仍能正常運(yùn)行,因此移動代理的運(yùn)行是與平臺無關(guān)的。移動代理的這種性能對于系統(tǒng)及時采取響應(yīng)很有好處,因?yàn)槿肭趾蛯θ肭值捻憫?yīng)隨處都可能存在和發(fā)生。
4.使用移動代理可以實(shí)時就地采取響應(yīng)措施這是移動代理最大的優(yōu)點(diǎn)和潛力。由于入侵是不可事先預(yù)知的,而響應(yīng)又需要及時作出,再加之移動代理可以跨平臺運(yùn)行,因此采用移動代理對于加強(qiáng)和完善大規(guī)模分布式入侵檢測系統(tǒng)的響應(yīng)機(jī)制很有幫助。使用移動代理可以從攻擊的目標(biāo)主機(jī)進(jìn)行響應(yīng),從發(fā)動攻擊的源主機(jī)進(jìn)行響應(yīng),可以及時切斷源主機(jī)和目標(biāo)主機(jī)的連接。另外,使用移動代理還可以實(shí)現(xiàn)對入侵者的追蹤。
5.移動代理的使用有利于大規(guī)模分布式入侵檢測系統(tǒng)的分布式結(jié)構(gòu)和模塊化設(shè)計(jì)的實(shí)現(xiàn)由于移動代理具備的特點(diǎn),使得可以把一個大規(guī)模分布式入侵檢測系統(tǒng)根據(jù)功能進(jìn)行模塊化,比如有的代理或移動代理專門負(fù)責(zé)數(shù)據(jù)采集,有的只負(fù)責(zé)檢測一種或少數(shù)的幾種入侵等。這種模塊化的設(shè)計(jì)使得我們可以比較容易地實(shí)現(xiàn)大規(guī)模分布式入侵檢測系統(tǒng)的分布式結(jié)構(gòu),使得系統(tǒng)有比較好的擴(kuò)展性。
在基于移動代理的大規(guī)模分布式入侵檢測系統(tǒng)中,使用本發(fā)明有很多優(yōu)點(diǎn),具體來說,可以達(dá)到下面這些效果1.實(shí)現(xiàn)系統(tǒng)的負(fù)載平衡在大規(guī)模分布式入侵檢測系統(tǒng)中,由于入侵到達(dá)的不確定性,有時在某一位置會突然出現(xiàn)大量需要分析和處理的數(shù)據(jù)或事件,此時如果不及時采取措施,必然會出現(xiàn)漏包、丟包現(xiàn)象,大大降低檢測準(zhǔn)確率。
使用任務(wù)分派機(jī)制可以實(shí)現(xiàn)系統(tǒng)的負(fù)載平衡。由數(shù)據(jù)擁塞節(jié)點(diǎn)處的靜態(tài)代理向協(xié)調(diào)模塊提出請求,協(xié)調(diào)模塊根據(jù)請求的內(nèi)容決定派出何種類型的移動代理,然后在擁塞節(jié)點(diǎn)處克隆該移動代理,移動代理啟動后執(zhí)行相應(yīng)的分析任務(wù),從而實(shí)現(xiàn)系統(tǒng)負(fù)載的平衡。待任務(wù)完成后,移動代理向協(xié)調(diào)模塊發(fā)出回收請求,協(xié)調(diào)模塊將掛起或殺死該移動代理。
2.完成系統(tǒng)特定的數(shù)據(jù)處理功能由于入侵特征的不可預(yù)知性,因此在某些情況下采用已有的靜態(tài)代理無法處理一些未知事件,這時需要一個具有學(xué)習(xí)能力的移動代理去完成分析任務(wù)。仍然是由靜態(tài)代理提出請求,同時存儲可疑的數(shù)據(jù),協(xié)調(diào)模塊根據(jù)請求的內(nèi)容分派移動代理完成事件的分析。分析的結(jié)果將作為新的特征寫入特征庫。
3.實(shí)現(xiàn)系統(tǒng)的實(shí)時就地響應(yīng)使用移動代理對入侵進(jìn)行響應(yīng),是移動代理技術(shù)在大規(guī)模分布式入侵檢測系統(tǒng)中的一個重要應(yīng)用。使用靜態(tài)代理可以進(jìn)行一些基本的響應(yīng),但在有些情況下,使用移動代理能更加及時有效地作出響應(yīng)。比如在出現(xiàn)一些突發(fā)情況時,需要協(xié)調(diào)模塊迅速向“事發(fā)地”派出移動代理,當(dāng)場進(jìn)行響應(yīng)。使用移動代理,可以對攻擊者進(jìn)行追蹤,可以搜尋攻擊者的蹤跡,進(jìn)行取證工作。
(1)代理命名規(guī)則根據(jù)代理要完成的功能和任務(wù),把靜態(tài)代理分為了四類,那就是數(shù)據(jù)采集類代理、分析類代理、融合類代理、響應(yīng)類代理,相應(yīng)的,根據(jù)移動代理協(xié)助靜態(tài)代理完成的任務(wù),可以把移動代理也分為采集類移動代理、分析類移動代理、融合類移動代理、響應(yīng)類移動代理。根據(jù)代理的類別和功能,我們采用如下的命名規(guī)則。
靜態(tài)代——S(stationary)移動代理——M(mobile)采集類代理——C(collection)分析類代理——A(analysis)融合類代理——F(fusion)響應(yīng)類代理——R(response)這樣,一個代理的名字可以表示為一個字符串,第一個比特位說明是靜態(tài)代理還是移動代理,用“S”或“M”表示,第二位說明代理的功能,用“C”、“P”、“A”或“R”表示,后面的字節(jié)是代理的編號,這個編號的取值范圍是1到最大的代理數(shù)目。
(2)代理ID編碼規(guī)則ID為16位的字符串,它的分配策略可以定義如下,協(xié)調(diào)模塊先對請求注冊的代理的名字前兩位進(jìn)行編碼,編碼規(guī)則如下S——0M——1C——00A——01F——10R——11這樣得到的前三位是關(guān)于代理類別的編碼,后面的13位是協(xié)調(diào)模塊根據(jù)完成注冊的時間分配的一個累積數(shù),它由協(xié)調(diào)模塊通過計(jì)時器產(chǎn)生,具有唯一性。這樣,整個系統(tǒng)中可以容納的代理數(shù)目是213=8192,在數(shù)目上適合分布式大規(guī)模的需求,而且這個13位可以根據(jù)實(shí)際需要擴(kuò)展。
定義協(xié)調(diào)模塊的ID編碼為全0的16位比特串。
(3)通信的消息格式在系統(tǒng)內(nèi)部代理與協(xié)調(diào)模塊、靜態(tài)代理與移動代理通信的過程中,通信的消息格式是統(tǒng)一的,其中,各個字段的定義如下Length是整個消息的長度,定義為16位;Type是消息類型,定義為4位,整個通信過程中有6種消息,分別是靜態(tài)代理to協(xié)調(diào)模塊0000協(xié)調(diào)模塊to靜態(tài)代理0001移動代理to協(xié)調(diào)模塊0010協(xié)調(diào)模塊to移動代理0011靜態(tài)代理to移動代理0100移動代理to靜代理態(tài)0101Instantiation是一個可選項(xiàng),定義為4位,它說明同一個移動代理被實(shí)例化的次數(shù),只有通信一方有移動代理對象的時候才會用到這個字段,這樣避免了同一個移動代理代碼的不同實(shí)例同時在系統(tǒng)中工作而發(fā)生混淆的情況。
Sender是消息的發(fā)送者的ID,根據(jù)前面的定義,這是一個16位的字段;Receiver是消息的接收者的ID,根據(jù)前面的定義,這是一個16位的字段;Reserved是保留位,用來保存一些額外的數(shù)據(jù)或選項(xiàng)比如時間戳、路由選項(xiàng)、安全信息、用于身份認(rèn)證的數(shù)字簽名等等,它是一個可變長的可選信息字段,在一定程度上增加了消息的靈活性、安全性和可擴(kuò)展性;Body是發(fā)送者和接收者通信的主要內(nèi)容,為了確保通信的安全,消息體的內(nèi)容通常是經(jīng)過加密的。
權(quán)利要求
1.一種基于代理技術(shù)的、應(yīng)用于大規(guī)模分布式入侵檢測系統(tǒng)的任務(wù)分派機(jī)制,以靜態(tài)代理為主,移動代理為輔,實(shí)現(xiàn)系統(tǒng)的負(fù)載平衡、實(shí)時響應(yīng)以及移動代理的控制功能,靜態(tài)代理分布于各個功能層,完成不同的任務(wù),協(xié)調(diào)模塊位于協(xié)調(diào)管理層,它專門負(fù)責(zé)移動代理的管理工作,移動代理由管理人員事先編寫代碼,存放于移動代理庫中,由管理人員通過人機(jī)界面不斷更新,處于各個功能層的靜態(tài)代理在工作過程中可能會突發(fā)一些異常情況無法處理或者該網(wǎng)絡(luò)節(jié)點(diǎn)處負(fù)載過重,從而降低入侵檢測系統(tǒng)的效率,這時候,靜態(tài)代理會向協(xié)調(diào)模塊發(fā)出請求消息,以得到協(xié)調(diào)模塊的支援,協(xié)調(diào)模塊收到靜態(tài)代理的請求之后,會從移動代理庫中選擇合適的移動代理進(jìn)行傳輸,整個傳輸?shù)倪^程可以描述如下認(rèn)證請求者、協(xié)調(diào)模塊選擇合適的移動代理、協(xié)調(diào)模塊序列化該移動代理的類和狀態(tài)的實(shí)例、選擇傳輸協(xié)議對序列化后的移動代理進(jìn)行編碼、傳輸移動代理,靜態(tài)代理收到協(xié)調(diào)模塊的應(yīng)答之后,采用相反的措施接收移動代理,過程如下認(rèn)證移動代理的可用性、用相同的協(xié)議對移動代理解碼、反序列化移動代理的類和狀態(tài)、恢復(fù)移動代理的狀態(tài)、恢復(fù)移動代理的執(zhí)行,然后,移動代理在靜態(tài)代理處運(yùn)行,協(xié)助靜態(tài)代理解決所發(fā)現(xiàn)的問題,同時,與協(xié)調(diào)模塊保持聯(lián)系,把本地情況向協(xié)調(diào)模塊作出響應(yīng),完成任務(wù)后,移動代理向協(xié)調(diào)模塊發(fā)出請求的消息,請求撤消,協(xié)調(diào)模塊收到消息之后會給移動代理發(fā)送應(yīng)答,終止該移動代理的進(jìn)程,這就是整個任務(wù)分派機(jī)制。
2.如權(quán)利要求1所述的任務(wù)分派機(jī)制,定義的處于協(xié)調(diào)管理層的協(xié)調(diào)模塊充當(dāng)移動代理服務(wù)器的作用,它可以控制移動代理的運(yùn)行,提供名字服務(wù)以及移動代理的實(shí)時定位和跟蹤服務(wù),可以通過人機(jī)界面進(jìn)行人工管理,是整個發(fā)明的關(guān)鍵點(diǎn)。
3.如權(quán)利要求1所述的任務(wù)分派機(jī)制,按照所處的功能層以及要完成的任務(wù),把靜態(tài)代理以及移動代理分為四類數(shù)據(jù)采集類、數(shù)據(jù)分析類、數(shù)據(jù)融合類、響應(yīng)類。
4.如權(quán)利要求1所述的任務(wù)分派機(jī)制和權(quán)利要求3所述的代理分類方法,為了保證任務(wù)分派的具體實(shí)施,每個代理的命名以及標(biāo)識必須具有唯一性,代理向協(xié)調(diào)模塊注冊以獲得唯一的ID標(biāo)識,ID為16位字符串,其分配策略是這樣定義的,前三位,對代理類別進(jìn)行編碼,得到靜態(tài)代理—S—0,移動代理—M—1,采集類代理—C—00,分析類代理—A—01,融合類代理—F—10,響應(yīng)類代理—R—11,后面的13位是協(xié)調(diào)模塊根據(jù)完成注冊的時間分配的一個累積數(shù),它由協(xié)調(diào)模塊通過計(jì)時器產(chǎn)生,具有唯一性,定義協(xié)調(diào)模塊的ID標(biāo)識為全0的字符串。
5.如權(quán)利要求1所述的任務(wù)分派機(jī)制中,代理與協(xié)調(diào)模塊之間的通信要按照統(tǒng)一的格式進(jìn)行,對代理與協(xié)調(diào)模塊之間的消息格式進(jìn)行了詳細(xì)的定義,整個消息的最大長度為216,由消息頭和消息體構(gòu)成,消息頭由6個字段構(gòu)成,分別Length(消息長度,16位)、Type(消息類型,4位)、Sender(發(fā)送者,16位)、Receiver(接收者,16位)、Instantiation(移動代理被實(shí)例化的次數(shù),4位,可選)、Reserved(保留位,可選,變長),Body是消息體,存儲傳輸?shù)牡膬?nèi)容,具體包括代理與協(xié)調(diào)模塊之間的請求與應(yīng)答,移動代理的二進(jìn)制字節(jié)流編碼、移動代理給協(xié)調(diào)模塊的實(shí)時響應(yīng)信息、協(xié)調(diào)模塊對移動代理的控制命令信息等等。
全文摘要
本發(fā)明為大規(guī)模分布式入侵檢測系統(tǒng)的任務(wù)分派機(jī)制。在大規(guī)模高速網(wǎng)絡(luò)中,入侵檢測系統(tǒng)一般采用分層的分布式結(jié)構(gòu),通過分散采集、分布處理和集中管理滿足大規(guī)模高速網(wǎng)絡(luò)的需求。為了實(shí)現(xiàn)這種分層的模塊化結(jié)構(gòu),一般要采用代理技術(shù),由處于協(xié)調(diào)管理層的協(xié)調(diào)模塊對移動代理進(jìn)行分派與控制。處于下層的靜態(tài)代理,出現(xiàn)異常情況不能解決即向協(xié)調(diào)模塊發(fā)出請求,協(xié)調(diào)模塊向該靜態(tài)代理分派特定功能的移動代理,移動代理遷移到靜態(tài)代理處與之交互并協(xié)助完成任務(wù),隨后向協(xié)調(diào)模塊發(fā)出撤消的請求,協(xié)調(diào)模塊收到請求后向移動代理發(fā)出撤消的指令,任務(wù)分派機(jī)制完成。該機(jī)制可以實(shí)現(xiàn)系統(tǒng)的負(fù)載平衡、實(shí)時響應(yīng)以及特定的數(shù)據(jù)處理功能,增強(qiáng)了移動代理的可控性。
文檔編號G06F9/44GK1469243SQ0313744
公開日2004年1月21日 申請日期2003年6月24日 優(yōu)先權(quán)日2003年6月24日
發(fā)明者褚永剛, 魏戰(zhàn)松, 楊義先 申請人:北京郵電大學(xué)