(1.湖南大學 計算機與通信學院, 湖南 長沙 410082; 2.湖南商務(wù)職業(yè)技術(shù)學院, 湖南 長沙 410205)
摘 要:分析了目前的分布式入侵檢測系統(tǒng)的特點和協(xié)作方式,提出了一種基于環(huán)型結(jié)構(gòu)分布式入侵檢測系統(tǒng)模型和令牌控制機制。論述了環(huán)型結(jié)構(gòu)的分布式入侵檢測系統(tǒng)的體系結(jié)構(gòu)和功能框架,引入了優(yōu)先響應(yīng)和事件可信度的思想,給出了基于環(huán)型結(jié)構(gòu)的分布式入侵檢測協(xié)作算法,解決了目前分布式入侵檢測系統(tǒng)中各系統(tǒng)結(jié)構(gòu)復雜、負載不均衡等缺陷。
關(guān)鍵詞:分布式入侵檢測; 環(huán)型協(xié)作; 系統(tǒng)框架
中圖法分類號:TP393.08文獻標識碼:A
文章編號:1001-3695(2006)08-0107-03
Design and Realization of Distributed Intrusion Detection System Based on Ring Structure
JIANG Hua bin1,2, JIANG Wen2, XIE Dong qing1
(1.College of Computer Communication, Hunan University, Changsha Hunan 410082, China;
2.Hunan Vocational College of Commerce, Changsha Hunan 410205, China)
Abstract:Through analyzing the characteristics and the cooperating mode of the present distributed intrusion detection system, this paper proposes a kind of Distributed Intrusion Detection System(DIDS) model based on annular structure and Token Ring mechanism. This paper expatiates on the architecture and function framework of the DIDS, introduces the idea of priority reaction and event reliability, gives the algorithm of distributed intrusion detection cooperating and overcomes the defects such as complicated structure and load imbalance in each subsystem of the present distributed intrusion detection system.
Key words:Distributed Intrusion Detection Model; Annular Structure; System Framework
1引言
隨著網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,分布式計算環(huán)境廣泛采用海量存儲和高帶寬傳輸技術(shù)的普及,網(wǎng)絡(luò)系統(tǒng)結(jié)構(gòu)的日益復雜,使得傳統(tǒng)的基于單機的集中式入侵檢測系統(tǒng)遇到了極大的挑戰(zhàn)。借助于互聯(lián)網(wǎng)大規(guī)模傳播的蠕蟲病毒(Worm)[1],以及近年來頻繁出現(xiàn)的以分布式拒絕服務(wù)攻擊(DDoS)[2]為代表的協(xié)同攻擊也使傳統(tǒng)的入侵檢測系統(tǒng)無能為力。由此,分布式入侵檢測系統(tǒng)(Distributed Intrusion Detection System,DIDS)成為入侵檢測系統(tǒng)歷史上一個重要的里程碑,是一種新型的現(xiàn)代檢測系統(tǒng),在數(shù)據(jù)收集、入侵分析和自動響應(yīng)等方面最大限度地發(fā)揮系統(tǒng)資源的優(yōu)勢,通過收集、合并來自多個主機的審計數(shù)據(jù)和檢查網(wǎng)絡(luò)通信,能夠檢測出多個主機發(fā)起的協(xié)同攻擊。
目前基于分布式的入侵檢測系統(tǒng)主要有:①集中分布式,即在網(wǎng)絡(luò)的各網(wǎng)段上放置傳感器來收集網(wǎng)絡(luò)狀態(tài)信息,然后由中央控制臺集中處理和分析,但是它過分依賴于中央控制臺,其可擴展性、自動更新能力和魯棒性都較差;②無中心分布式,即系統(tǒng)中所有代理IDS都是對等的,相互通信、協(xié)作,但存在可擴展性較差,隨著代理增加會造成通信數(shù)據(jù)過載,其網(wǎng)絡(luò)利用效率不高,各分部協(xié)調(diào)復雜、沒有統(tǒng)一處理模塊的缺陷;③層次分布式,把系統(tǒng)分成若干層次,上層部件控制下層部件,由控制中心統(tǒng)一控制,有利于大規(guī)模入侵事件的檢測,同樣存在依賴于上層控制部件的缺陷[3~5]。
分布式入侵檢測的關(guān)鍵問題之一是檢測組件的信息交互,要求各個入侵檢測系統(tǒng)(監(jiān)控設(shè)備或監(jiān)控程序)之間能夠?qū)崿F(xiàn)高效的信息共享和協(xié)同分析。這就要求有更好的協(xié)同管理機制,能從系統(tǒng)結(jié)構(gòu)、策略管理、檢測技術(shù)等各個層次上實現(xiàn)新的入侵檢測方法,以適應(yīng)大規(guī)模、分布式系統(tǒng)的要求[6,7]。分布式協(xié)作的效果在于是否能有效地控制協(xié)作機制,目前提出的流量控制算法雖然效率提高了,但消耗系統(tǒng)代價過大,有些協(xié)作模式交互太多[8,9]。因此,為了更好地實現(xiàn)分布式的協(xié)同處理,使得協(xié)同站點間負載均衡,本文提出了一種基于環(huán)型結(jié)構(gòu)的分布式協(xié)同入侵檢測系統(tǒng),采用令牌控制技術(shù)實現(xiàn)分布式協(xié)同,使得協(xié)同流量穩(wěn)定、協(xié)同信息可控、實現(xiàn)協(xié)同交互代價小,在協(xié)同中能實現(xiàn)更新檢測站點的信息。
2基于環(huán)型結(jié)構(gòu)的入侵檢測系統(tǒng)的模型
針對上述入侵檢測系統(tǒng)存在的缺陷,本文提出一種基于邏輯環(huán)型結(jié)構(gòu)的分布式入侵檢測系統(tǒng),它通過將分布在各處的監(jiān)測代理站點組織成一個邏輯環(huán),而協(xié)作的控制和驅(qū)動則是由運行在環(huán)中的令牌來實現(xiàn)。這使得各節(jié)點在邏輯上是平等,因此監(jiān)測代理站點是構(gòu)建該結(jié)構(gòu)的入侵檢測系統(tǒng)的主要成員。監(jiān)測代理站點是由五個主要部分組成,即特征數(shù)據(jù)庫、統(tǒng)計知識庫、待定記錄表、各種探測器和監(jiān)測管理控制器。各代理站點通常只與其邏輯相鄰的左右兩個代理站點直接通信,而系統(tǒng)的協(xié)作檢測信息的傳遞和控制則是由運行在其之上的令牌來完成。邏輯環(huán)中始終只保持傳送一個令牌,而令牌中所含的命令將決定代理站的工作流程,如需要提出協(xié)作請求則要求捕獲的是一個空令牌,否則代理站將會根據(jù)令牌頭部所攜帶的命令進行分析解析并執(zhí)行,如協(xié)作檢測所提交的待判定信息的安全性或者是根據(jù)以判定的結(jié)果更新自身的特征庫等。其系統(tǒng)的體系結(jié)構(gòu)如圖1所示。
由上可知,基于這種結(jié)構(gòu)的分布式入侵檢測系統(tǒng)是一種均衡協(xié)作負載、高可靠性、靈活、協(xié)作響應(yīng)可預知、檢測效率高的分布式入侵檢測協(xié)作模式。
2.1環(huán)型控制令牌
在分布式計算環(huán)境中影響其處理性能的一個主要因素之一就是如何調(diào)配和控制各分布站點,也就是說協(xié)作模型設(shè)計得好壞是分布式系統(tǒng)的一個關(guān)鍵因素。而針對基于環(huán)型結(jié)構(gòu)的分布式入侵檢測系統(tǒng)來說,由于它是一種基于邏輯環(huán)型通信原理的協(xié)作機制,使得它依賴于協(xié)作模型。在該結(jié)構(gòu)中其協(xié)作控制主要是通過收發(fā)各種令牌來實現(xiàn)對各子系統(tǒng)的功能調(diào)配和控制,從而極大地提高網(wǎng)絡(luò)入侵檢測能力。由此可知,令牌是分布式入侵檢測中協(xié)作檢測的驅(qū)動事件,它決定著各代理站的工作模式和系統(tǒng)的整體性能。
通過對環(huán)型網(wǎng)絡(luò)通信機制的研究和分析,并結(jié)合分布式入侵檢測的協(xié)作特性和功能可知,基于環(huán)型結(jié)構(gòu)的分布式入侵檢測系統(tǒng)的令牌是由兩個主要部分組成,即令牌頭部和用戶數(shù)據(jù)。其中令牌的頭部主要是完成對協(xié)作的控制和信息的交互通信。
定義1令牌是由令牌頭部和令牌體組成的一種結(jié)構(gòu),而令牌體為用戶數(shù)據(jù),根據(jù)令牌的類型可以定為兩種用戶數(shù)據(jù):①用于傳送協(xié)同檢測事件的信息,其格式是采用GIDO標準格式進行描述;②使用在各代理站控制和設(shè)置的情況下,其數(shù)據(jù)字段采用屬性值對的方式組織。
定義2令牌頭部(TokenHead)是一種數(shù)據(jù)結(jié)構(gòu),其結(jié)構(gòu)定義為
TokenHead=(Ci,Pi,Wi,Ri,RAi)
其中,字段Ci是指當前令牌類型,目前定義了七種類型的令牌分別為:①空令牌(Empty),是指當前的令牌為空閑令牌,可為任何站點捕獲;②協(xié)同請求令牌(Request),是指當前令牌正在為某一站點提出協(xié)作請求;③響應(yīng)令牌(Response),是指協(xié)同檢測已完成,并在令牌中附有檢測的結(jié)果;④設(shè)置令牌(Set),是指對各分布站點的配置,可完成重建空令牌的請求;⑤申請加入環(huán)令牌(Join),用于站點申請加入邏輯環(huán)中;⑥確認令牌(ACK),用于各種確認功能;⑦信息令牌 (Information),用于實現(xiàn)強制執(zhí)行某些操作的信息。
字段Pi是指當前令牌的優(yōu)先級,它決定著各代理站發(fā)送協(xié)作請求的先后順序。
字段Wi是表示下一個協(xié)作處理的預定請求的優(yōu)先級。對該字段的賦值是那些欲提出協(xié)作請求而又沒有捕獲到空令牌的代理站點,在非空令牌到達時根據(jù)已請求優(yōu)先級對字段進行預約。
字段Ri是表示令牌為協(xié)助令牌時,其加載協(xié)同檢測事件的可信度,可信度越小,入侵事件的可能性就越大,它有兩個參數(shù)指標:①站點出現(xiàn)同類請求協(xié)同事件的次數(shù)Ni;②該事件優(yōu)先級Pi。
字段RAi是表示當前正在使用該令牌的代理站地址信息,通常使用該代理站節(jié)點的IP地址來表示。
2.2檢測優(yōu)先級
為了解決在協(xié)同處理中的多發(fā)性事件,可根據(jù)可疑事件的性質(zhì),設(shè)定協(xié)同入侵判別的優(yōu)先級別,其值可由式(1)計算得到
其中,參數(shù)Im p(ri) 表示當前請求協(xié)作入侵判別的事件對于本地系統(tǒng)的重要性參數(shù),這是由本地安全系統(tǒng)設(shè)定的安全控制策略所決定的。如果根據(jù)資源來考慮,系統(tǒng)的資源可以分為文件系統(tǒng)、引導區(qū)、文件分配表、磁盤扇區(qū)、用戶數(shù)據(jù)庫、注冊表、系統(tǒng)日志、網(wǎng)絡(luò)端口、內(nèi)存空間、進程等。另外各種應(yīng)用程序或系統(tǒng)服務(wù)自身也可以定義關(guān)鍵資源,如數(shù)據(jù)庫服務(wù)可以將自己的會話定義為關(guān)鍵資源。同時,還可考慮訪問的方式:讀、寫或修改,這樣就可通過資源的級別和訪問的性質(zhì)來設(shè)定參數(shù)Im p(ri)的值。參數(shù)DeadLine (i) 是指代理站要求協(xié)作入侵檢測的最大響應(yīng)時間;參數(shù)WatingTime (i) 是指代理站由捕獲到空令牌而無法發(fā)出協(xié)作請求的等待時間。由該公式可知,協(xié)作請求的優(yōu)先級與最大協(xié)作響應(yīng)時間成反比,與待定事件的重要性成正比,這使得協(xié)作入侵檢測處理能夠按急優(yōu)先來分布處理入侵事件,從而更好地保證系統(tǒng)的安全。通過令牌中引入優(yōu)先級可體現(xiàn)檢測事件的先來先服務(wù)、優(yōu)先級高的事件優(yōu)先和等待久的事件優(yōu)先的思想。
2.3事件可信度
為解決針對不同站點發(fā)動的同類攻擊現(xiàn)象,在令牌中引入了事件可信度的標志。是否為入侵事件,可根據(jù)訪問的權(quán)限、性質(zhì)、出現(xiàn)的次數(shù)來進行評估,事件的優(yōu)先級只考慮了本地站點的事件,未考慮其他站點的同類事件,但通過對本系統(tǒng)中其他站點上同類事件的分析,可得出事件的可信度。因此,我們采用訪問事件在站點出現(xiàn)的次數(shù)與該事件在各站點優(yōu)先級之和的比值來計算事件的可信度,計算式如下:
S=N1P1+N2P2+…+NiPi (2)
Ri=1/S (3)
其中,Ni為第i個站點出現(xiàn)令牌中協(xié)同事件的次數(shù),Pi為第i個站點中該協(xié)同事件的優(yōu)先級。協(xié)同事件在站點中出現(xiàn)的次數(shù)越多,事件的優(yōu)先級越高,則可信度Ri的值越小,則該協(xié)同事件就越有可能是入侵事件,它不僅可根據(jù)可信度判定令牌中的事件,而且為本地同類待測事件提供了分析的依據(jù),提高了判斷分析事件的效率。
3基于環(huán)型結(jié)構(gòu)的入侵檢測系統(tǒng)的模型
在目前大規(guī)模網(wǎng)絡(luò)環(huán)境下,由于網(wǎng)絡(luò)的吞吐量很大,因此在檢測效率上對入侵系統(tǒng)提出了更高的要求。本文所涉及的分布式協(xié)同入侵檢測系統(tǒng),既有分布式體系結(jié)構(gòu),同時又能通過協(xié)作處理解決入侵事件的分析。其體系結(jié)構(gòu)如圖2所示。
該體系采用三層結(jié)構(gòu),從下至上依次是采集層、分析層和管理層。其中采集層通過探測器實現(xiàn)對各類信息的收集,是入侵檢測系統(tǒng)與網(wǎng)絡(luò)設(shè)備、系統(tǒng)主機等直接相連接的部分。探測器完成數(shù)據(jù)分類、數(shù)據(jù)合并和數(shù)據(jù)轉(zhuǎn)換等數(shù)據(jù)預處理工作,為分析層提供統(tǒng)一的數(shù)據(jù)格式。令牌環(huán)在數(shù)據(jù)采集層中實現(xiàn)協(xié)同事件的接收與發(fā)布,從第一層就實現(xiàn)了協(xié)同工作。分析層完成事件的分析和關(guān)聯(lián),判定是否為入侵事件,或是否作為請求協(xié)同處理的信息,同時可接收協(xié)同處理結(jié)果,能進行學習。管理層完成對入侵的決策與響應(yīng),提供與其他安全設(shè)備的互動接口,提供人機界面供管理員維護系統(tǒng)和人工操作等功能。
4基于環(huán)型結(jié)構(gòu)的分布式入侵檢測系統(tǒng)的功能框架
基于上述對該結(jié)構(gòu)的體系結(jié)構(gòu)的分析結(jié)果,從系統(tǒng)架構(gòu)功能的角度來看該系統(tǒng)的框架主要由四個大的部件組成:①代理監(jiān)測站,它主要完成對本業(yè)務(wù)領(lǐng)域或本子網(wǎng)內(nèi)入侵行為的監(jiān)控檢測。其內(nèi)部主要有控制臺、響應(yīng)模塊、入侵檢測分析引擎、統(tǒng)計知識庫、入侵特征庫、特定記錄表、入侵檢測分析觸發(fā)器、分布式協(xié)同協(xié)議模塊、分布式協(xié)同數(shù)據(jù)接口、本地數(shù)據(jù)接口。②左代理監(jiān)測站點(LIDS),在邏輯環(huán)中代理監(jiān)測站點邏輯后繼。③右代理監(jiān)測站點(RIDS),邏輯環(huán)中位于它的代理監(jiān)測站點邏輯前趨。④探測器組,它的主要功能是為檢測代理站點收集各種本地網(wǎng)絡(luò)事件和信息并提供給檢測代理站點進行判定。其系統(tǒng)框架如圖3所示。
本系統(tǒng)獲取需要判定的記錄是通過其本地的網(wǎng)絡(luò)探測器組或通過令牌獲取的協(xié)同待測信息,這些信息分別通過本地數(shù)據(jù)接口與分布式協(xié)作數(shù)據(jù)接口進入代理站點,并由入侵檢測分析觸發(fā)器來驅(qū)動分析引擎對所產(chǎn)生的事件根據(jù)統(tǒng)計知識庫、入侵特征庫進行分析,如判定為入侵行為則根據(jù)事件的類型和生產(chǎn)源將其結(jié)果反饋給響應(yīng)模塊驅(qū)動報警,或分布式協(xié)同協(xié)議模塊向協(xié)作請求端發(fā)出報警信息;如為待定則將其記錄在待定記錄中;如該事件是協(xié)作類型的,則驅(qū)動分布式協(xié)同協(xié)議模塊將該協(xié)作請求轉(zhuǎn)發(fā)到其后繼站點。
5基于環(huán)型結(jié)構(gòu)的分布式入侵檢測協(xié)作算法
該算法主要是指各分布式站點間如何請求協(xié)同進行入侵檢測,以提高整體的入侵檢測的能力,從而達到提高網(wǎng)絡(luò)信息安全的目的。在本環(huán)型結(jié)構(gòu)中,規(guī)定在環(huán)中始終只傳遞一個令牌,只有擁有令牌的站點才能將其協(xié)同檢測請求發(fā)送出去,而令牌的分配則是由各自當時請求的優(yōu)先級來決定的。當協(xié)同請求令牌發(fā)送出去后,沿途站點將會依次對其進行檢測,并試圖完成協(xié)同處理任務(wù)。其算法描述如下:
(1)代理站點 T 的探測器捕獲到一待定事件,經(jīng)過入侵分析引擎分析決定將其提交到外部協(xié)作判定,并驅(qū)動環(huán)型結(jié)構(gòu)協(xié)作協(xié)議模塊產(chǎn)生一個請求協(xié)作記錄。
(2)監(jiān)聽協(xié)作數(shù)據(jù)接口,直到令牌到達。系統(tǒng)將會根據(jù)請求的重要性和響應(yīng)等待時間計算出應(yīng)請求的優(yōu)先級,對其類型進行判別:如判定為空令牌則轉(zhuǎn)(3);若為協(xié)作令牌轉(zhuǎn)(4);若為響應(yīng)令牌轉(zhuǎn)(5)。
(3)①取出該令牌的 P 字段值(即令牌優(yōu)先級);②將 R 字段值與自身的請求優(yōu)先級進行比對,如大于預約優(yōu)先級則捕獲該令牌,將待定記錄加載到令牌的數(shù)據(jù)區(qū)并傳輸出去,否則將空令牌轉(zhuǎn)發(fā)出去;③轉(zhuǎn)入監(jiān)聽下一個令牌的到達狀態(tài),并轉(zhuǎn)到(2)。
(4)①判別令牌中的源地址是否為本機,如是本機地址則聲明協(xié)作檢測失敗,同時刪除該令牌,并生成空令牌傳送到環(huán)中,其令牌的優(yōu)先級則是由令牌的預約優(yōu)先級決定;轉(zhuǎn)(2);②判別該令牌中的預約優(yōu)先級是低于還是高于本地請求的優(yōu)先級,如低于則將其優(yōu)先級替換令牌中的預約優(yōu)先級;③評算令牌協(xié)同事件的可信度,若不可信,則轉(zhuǎn)向⑤;④取出令牌中需要協(xié)作檢測的對象傳入到本地的入侵檢測引擎進行分析,如能成功判定則轉(zhuǎn)⑤,否則將其轉(zhuǎn)發(fā)到下站;⑤將收到的令牌從環(huán)中刪除,并產(chǎn)生響應(yīng)令牌,將其判定的結(jié)果附在其數(shù)據(jù)區(qū);⑥如此時本地的請求優(yōu)先級非常高或收到的請求非常緊急時,則將該響應(yīng)令牌直接發(fā)往請求的源端,并重新產(chǎn)生一個新的空令牌傳送到邏輯環(huán)中,否則將該響應(yīng)令牌傳送到邏輯環(huán)中;⑦轉(zhuǎn)(2)。
(5)①取出其目的地址進行比對,以判斷是否為本機,如是則取出判定結(jié)果,并轉(zhuǎn)入本地的響應(yīng)模塊,同時產(chǎn)生一個新空閉令牌,并將其優(yōu)先級設(shè)為原響應(yīng)令牌中的預約優(yōu)先級值,然后發(fā)往邏輯環(huán)中并轉(zhuǎn)(2);②取出檢測對象與判定結(jié)果對本地檢測系統(tǒng)進行訓練;③如本地有協(xié)作請求則根據(jù)其優(yōu)先級值修正響應(yīng)令牌的預約優(yōu)先級;④將響應(yīng)令牌轉(zhuǎn)發(fā)出去,并轉(zhuǎn)(2)。
6結(jié)束語
綜上所述,本文對基于環(huán)型結(jié)構(gòu)的分布式入侵檢測系統(tǒng)進行了深入的論述。首先評論分析了基于環(huán)型結(jié)構(gòu)的分布式入侵檢測模型的產(chǎn)生背景,對其中所采用的體系結(jié)構(gòu)和系統(tǒng)框架進行了介紹,然后構(gòu)建了一種新型的協(xié)作檢測的模型,并分析了其必要性和先進性,提出了檢測響應(yīng)優(yōu)先級和事件可信度。現(xiàn)在可得出結(jié)論:這是一個完整的新型分布式入侵檢測系統(tǒng)。該系統(tǒng)具有分布式處理結(jié)構(gòu)、符合標準化的方向,具有較強的可擴展性、高的可靠性、快速響應(yīng)等特點,能夠?qū)W(wǎng)絡(luò)系統(tǒng)檢測到的網(wǎng)絡(luò)安全事件作出快速的響應(yīng),及時地保護了信息系統(tǒng)的安全。但對于新系統(tǒng)所使用的入侵檢測分析算法等方面有待進一步研究。
參考文獻:
[1]Spaford EH. The Internet Worm: Crisis and Aftermath[J]. CACM, 1989,32(6):678-687.
[2]吳曉南, 房鼎益. 一個分布式拒絕服務(wù)攻擊檢測系統(tǒng)的設(shè)計[J]. 計算機工程, 2004,30(5):139-141.
[3]Ning P, Wang X, Jajodia S. Modeling Requests among Cooperating Intrusion Detection System[J]. Computer Communications, 2002,23(7):1702-1715.
[4]馬恒太,等. 基于Agent的分布式入侵檢測系統(tǒng)模型[J]. 軟件學報, 2000,11(10):1312-1319.
[5]Spafford EH, Zamboni D. Intrusion Detection Using Autonomous Agents[J]. Computer Networks, 2000,34(4):547-570.
[6]Hunter P. Distributed Intrusion Detection Systems Can Make Security More Adaptive[Z]. 2003.
[7]紀祥敏,連一峰,戴英俠,等.基于協(xié)同的分布式入侵檢測模型研究[J]. 計算機仿真, 2004,21(12):132-135.
[8]呂志軍,鄭璟,黃皓.高速網(wǎng)絡(luò)下的分布式實時入侵檢測系統(tǒng)[J]. 計算機研究與發(fā)展, 2004,41(4):667-673.
[9]徐漫江,曹元大.分布協(xié)作式入侵檢測系統(tǒng)[J]. 計算機工程, 2005,31(2):146-148.
[10]Tung B.Common Intrusion Detection Framework[EB/OL]. http://gost.isi.edu/cidf/,1999-09-10.
作者簡介:姜華斌(1971-),男,副教授,碩士,主要研究方向為網(wǎng)絡(luò)安全、算法設(shè)計;江文(1975- ),男,碩士,主要研究方向為計算網(wǎng)絡(luò)與軟件工程;謝冬青 (1965- ),男,教授,博導,博士,主要研究方向為網(wǎng)絡(luò)安全、算法設(shè)計與分析。
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。