《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 針對(duì)無(wú)線網(wǎng)絡(luò)的入侵檢測(cè)系統(tǒng)的設(shè)計(jì)
針對(duì)無(wú)線網(wǎng)絡(luò)的入侵檢測(cè)系統(tǒng)的設(shè)計(jì)
摘要: 由于無(wú)線信道的開(kāi)放性和移動(dòng)設(shè)備在存儲(chǔ)能力、計(jì)算能力和供電方面的局限性,無(wú)線網(wǎng)絡(luò)面臨著更復(fù)雜的安全威脅和隱患。如何構(gòu)造一個(gè)安全可靠的無(wú)線局域網(wǎng)已經(jīng)成為一個(gè)迫切需要解決的問(wèn)題。
Abstract:
Key words :
  隨著筆記本電腦、個(gè)人數(shù)字代理(PDA)以及3G通信等技術(shù)的發(fā)展,人們使用信息技術(shù)進(jìn)行通信聯(lián)系和交流的空間、靈活性得到不斷拓展。無(wú)線網(wǎng)絡(luò)尤其是3G網(wǎng)絡(luò)成為技術(shù)發(fā)展和社會(huì)應(yīng)用的新寵。各種類(lèi)型的移動(dòng)數(shù)據(jù)終端以及多媒體終端得到廣泛應(yīng)用,促使傳統(tǒng)網(wǎng)絡(luò)由有線向無(wú)線、由固定向移動(dòng)、由單一業(yè)務(wù)向多媒體的發(fā)展。然而,這種擴(kuò)展給用戶帶來(lái)了更大的自由度的同時(shí),也帶來(lái)了安全上的挑戰(zhàn)。由于無(wú)線信道的開(kāi)放性和移動(dòng)設(shè)備在存儲(chǔ)能力、計(jì)算能力和供電方面的局限性,無(wú)線網(wǎng)絡(luò)面臨著更復(fù)雜的安全威脅和隱患。如何構(gòu)造一個(gè)安全可靠的無(wú)線局域網(wǎng)已經(jīng)成為一個(gè)迫切需要解決的問(wèn)題。

  1IDS基本原理

  入侵檢測(cè)系統(tǒng)(IDS)是一種主動(dòng)保護(hù)自己免受攻擊的網(wǎng)絡(luò)安全系統(tǒng)。入侵檢測(cè)系統(tǒng)對(duì)網(wǎng)絡(luò)行為進(jìn)行實(shí)時(shí)檢測(cè),可以記錄和阻止某些網(wǎng)絡(luò)行為,被認(rèn)為是防火墻之后的第二道安全閘門(mén),可與防火墻配合工作。

  IDS掃描當(dāng)前網(wǎng)絡(luò)的活動(dòng),監(jiān)視和記錄網(wǎng)絡(luò)的流量,根據(jù)定義好的規(guī)則來(lái)過(guò)濾經(jīng)主機(jī)網(wǎng)卡的流量,并提供實(shí)時(shí)報(bào)警。入侵檢測(cè)系統(tǒng)至少應(yīng)包括3個(gè)功能模塊:

  提供事件記錄流的信息源、發(fā)現(xiàn)入侵跡象的分析引擎和基于分析引擎的響應(yīng)部件。公共入侵檢測(cè)框架CIDF闡述了一個(gè)入侵檢測(cè)系統(tǒng)的通用模型,即入侵檢測(cè)系統(tǒng)的四個(gè)組件:事件產(chǎn)生器、事件分析器、響應(yīng)單元和事件數(shù)據(jù)庫(kù),共通用模型如圖1所示。CIDF將需要分析的數(shù)據(jù)統(tǒng)稱(chēng)為事件。

  2無(wú)線網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)架構(gòu)

  2.1入侵檢測(cè)體系結(jié)構(gòu)

  目前比較成熟的入侵檢測(cè)方法是異常檢測(cè)和誤用檢測(cè)兩種類(lèi)型。異常檢測(cè)是根據(jù)使用者的行為或資源使用狀況的正常程度來(lái)判斷是否入侵。異常檢測(cè)與系統(tǒng)相對(duì)無(wú)關(guān),通用性較強(qiáng),其主要缺陷是誤檢率較高。誤用檢測(cè)有時(shí)也稱(chēng)為特征分析或基于知識(shí)的檢測(cè),根據(jù)已定義的入侵模式,判斷在實(shí)際的安全審計(jì)數(shù)據(jù)中是否出現(xiàn)這些入侵模式,這種檢測(cè)準(zhǔn)確度較高,檢測(cè)結(jié)果有明確的參照性,便于決策響應(yīng),缺陷是無(wú)法檢測(cè)未知的攻擊類(lèi)型。無(wú)線網(wǎng)絡(luò)的IDS系統(tǒng),必須考慮兩者的互補(bǔ)性結(jié)合使用,如圖2所示。

  信息獲取和預(yù)處理層主要由主機(jī)探頭(HSeNSor)和網(wǎng)絡(luò)探頭(NSensor)組成。綜合分析決策層包含分析器(AnalysisSvr)和數(shù)據(jù)庫(kù)(DB),在獲取數(shù)據(jù)進(jìn)行預(yù)處理后,進(jìn)一步詳細(xì)分析和最后的決策融合,從而制訂響應(yīng)策略和方式。控制管理層則是進(jìn)行人機(jī)交互、控制管理、報(bào)警融合以及態(tài)勢(shì)分析。

  2.2入侵單元檢測(cè)模型

  為滿足無(wú)線網(wǎng)絡(luò)的需要,入侵檢測(cè)與響應(yīng)系統(tǒng)應(yīng)采用分布式結(jié)構(gòu),且協(xié)同工作。網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都參與入侵檢測(cè)與響應(yīng),每個(gè)節(jié)點(diǎn)檢測(cè)本地入侵,鄰近節(jié)點(diǎn)進(jìn)行協(xié)作檢測(cè)。在系統(tǒng)的每個(gè)節(jié)點(diǎn)都有獨(dú)立的入侵檢測(cè)單元,每個(gè)單元能夠獨(dú)立運(yùn)行,監(jiān)測(cè)本地行為(包括用戶和系統(tǒng)的行為、節(jié)點(diǎn)間的通信行為),檢測(cè)來(lái)自本地的入侵,并發(fā)起響應(yīng)。這些入侵檢測(cè)單元共同組成無(wú)線網(wǎng)絡(luò)的入侵檢測(cè)系統(tǒng),如圖3所示。

  數(shù)據(jù)采集模塊采集實(shí)時(shí)審計(jì)數(shù)據(jù),這些數(shù)據(jù)包含系統(tǒng)和用戶在節(jié)點(diǎn)內(nèi)部的操作行為、通過(guò)該節(jié)點(diǎn)的通信行為以及在通信范圍內(nèi)、通過(guò)該節(jié)點(diǎn)可觀察到的其他通信行為。協(xié)作檢測(cè)模塊的作用是傳送鄰近節(jié)點(diǎn)之間的入侵檢測(cè)狀態(tài)信息,利用最近接收到的其他節(jié)點(diǎn)的狀態(tài)信息,計(jì)算出本節(jié)點(diǎn)的入侵檢測(cè)狀態(tài)。協(xié)作檢測(cè)的步驟如圖4所示。

  2.3分析器概念模型與系統(tǒng)部署

  分析器概念模型如圖5所示。首先獲取來(lái)自主機(jī)探頭和網(wǎng)絡(luò)探頭的數(shù)據(jù)信息,然后采用特征檢測(cè)、異常檢測(cè)、統(tǒng)計(jì)分析、拒絕服務(wù)檢測(cè)等多種方法進(jìn)行并行分析,把分析的結(jié)果采用特定的融合算法進(jìn)行融合,從而得出分析結(jié)果。分析結(jié)果一方面通知控制管理層,另一方面通知響應(yīng)決策部分,驅(qū)動(dòng)響應(yīng)決策,并進(jìn)行物理定位。

  IDS系統(tǒng)部署時(shí),主機(jī)探頭安裝在客戶端操作系統(tǒng)上,而網(wǎng)絡(luò)探頭則根據(jù)其地理環(huán)境情況適當(dāng)布置,分析機(jī)盡可能地放在用戶內(nèi)部網(wǎng)絡(luò),降低分析機(jī)的風(fēng)險(xiǎn),系統(tǒng)應(yīng)該部署在電磁波干擾小的地方,避免由于輻射信號(hào)不穩(wěn)定而帶來(lái)的影響。

  3無(wú)線網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng)核心模塊實(shí)現(xiàn)  

  分布式入侵檢測(cè)系統(tǒng)分為3個(gè)部件,(1)探測(cè)器。對(duì)應(yīng)信息采集和預(yù)警層,下設(shè)探頭和數(shù)據(jù)采集模塊;(2)分析器對(duì)應(yīng)綜合分析決策層,下設(shè)協(xié)議解碼模塊、預(yù)處理模塊和檢測(cè)分析模塊;(3)控制管理器。對(duì)應(yīng)控制管理層,下設(shè)規(guī)則解析模塊、日志模塊和響應(yīng)報(bào)警模塊。本文將重點(diǎn)介紹數(shù)據(jù)預(yù)處理、數(shù)據(jù)檢測(cè)與分析和規(guī)則解析三個(gè)模塊。

  3.1數(shù)據(jù)預(yù)處理模塊

  預(yù)處理模塊對(duì)得到的數(shù)據(jù)包進(jìn)行預(yù)處理,一方面可發(fā)現(xiàn)入侵信息,另一方面為檢測(cè)分析模塊做最后的準(zhǔn)備。預(yù)處理模塊采用了插件技術(shù),可以很方便地增加功能,使系統(tǒng)具有可擴(kuò)展性。與預(yù)處理相關(guān)的函數(shù)以鏈表的形式存在于動(dòng)態(tài)鏈接庫(kù)中,如圖6所示。

圖6數(shù)據(jù)預(yù)處理模塊處理過(guò)程

  預(yù)處理函數(shù)是由控制管理器來(lái)配置的。控制中心將配置規(guī)則和預(yù)處理函數(shù)一起傳送到各檢測(cè)引擎,檢測(cè)引擎在進(jìn)行規(guī)則解析時(shí),自行識(shí)別預(yù)處理指令,并作相應(yīng)的處理。在IP報(bào)文的首部包含了分片和重組的信息,如圖7所示。

圖7IP包(32位)格式

 ?。?)IdenTIficATIon:唯一標(biāo)識(shí)發(fā)送端的一個(gè)IP報(bào)文,如果需要分片,則所有分片具有相同的標(biāo)識(shí),這樣目標(biāo)主機(jī)便能夠根據(jù)源主機(jī)的IP地址以及該標(biāo)識(shí)來(lái)組合報(bào)文;(2)R:保留未用;(3)D:“不分片”位,置為1,則IP層不將數(shù)據(jù)報(bào)分片,只有為0時(shí)才允許分片;(4)F:“更多分片”位,為1表示后面還有數(shù)據(jù)報(bào)的更多分片,為0則表示這是數(shù)據(jù)報(bào)的最后一個(gè)分片;(5)FragmentOffset:分片偏移,指出該分片數(shù)據(jù)在原始數(shù)據(jù)報(bào)文(未分片前)相對(duì)于起點(diǎn)的位置,實(shí)際位置為偏移值乘以8,如為0則表示這是分片后的第一個(gè)信息包,放在組合后分組的最前面。

  IP 重組的函數(shù)中定義了每一個(gè)分片的結(jié)構(gòu)為:

  STruct IpFrag

  {

  dint offset ; //IP 分片的偏移值

  int end : // 分片的最后字節(jié)

  int len ; // 分片的長(zhǎng)度

  u char mff ; // 更多的分片標(biāo)志

  unsigned char *ptr ; // 指向分片包中的數(shù)據(jù)

  struct IpFrag *ipf next ;//鏈接的下一個(gè)分片

  };

  些分片形成一個(gè)單向鏈表,表示一個(gè)尚未組裝完的分片隊(duì)列,它屬于一個(gè)IP 報(bào)文,而分片鏈表的頭指針?lè)旁贗pHeader 結(jié)構(gòu)中:

  struct IpHeader

  {

  struct IpFrag ; // 第一個(gè)IP 分片

  int len ; // 報(bào)文長(zhǎng)度

  struct timer list timer ; // 定時(shí)器

  u_char Proto ; // 協(xié)議類(lèi)型

  u_short Ip_ttl ; // 生存時(shí)間

  u_short id ; //IP 標(biāo)識(shí)

  struct in addr Ip-Src ,Ip_Dst ; //IP 報(bào)文的源, 目的

  IP 地址

  struct IpHeader *next ; // 下一個(gè)IP 報(bào)文

  } ;

  IpHeader描述還未收到全部分片報(bào)文結(jié)構(gòu),多個(gè)Ip-Header構(gòu)成的鏈表形成一個(gè)重裝鏈表,等待其他分片到達(dá)后重裝。

  3.2數(shù)據(jù)檢測(cè)分析模塊

  檢測(cè)分析模塊對(duì)預(yù)處理模塊提交的數(shù)據(jù),運(yùn)用匹配算法和規(guī)則庫(kù)中的規(guī)則進(jìn)行比較分析,從而判斷是否有入侵行為。檢測(cè)分析模塊是檢測(cè)引擎的核心,它將從數(shù)據(jù)采集模塊傳來(lái)的數(shù)據(jù)順著規(guī)則鏈表與入侵規(guī)則進(jìn)行比較,如果匹配成功,則說(shuō)明檢測(cè)到了入侵,同時(shí)產(chǎn)生報(bào)警。其流程如圖8所示。

圖8數(shù)據(jù)檢測(cè)分析模塊流程圖

  3.3規(guī)則解析模塊  

  規(guī)則解析模塊將從控制中心傳送過(guò)來(lái)的規(guī)則按照一定的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)在規(guī)則庫(kù)中,作為對(duì)入侵行為進(jìn)行判斷分析的知識(shí)庫(kù)。在該模塊的設(shè)計(jì)中,本文采用動(dòng)態(tài)生成鏈表的方式構(gòu)建規(guī)則的語(yǔ)法樹(shù),把所選擇的規(guī)則存儲(chǔ)在數(shù)據(jù)檢測(cè)器所在的主機(jī)內(nèi)存中,規(guī)則鏈表的結(jié)構(gòu)如圖9所示。

  第一層是具有相同處理動(dòng)作(Alert(警告),Log(記錄),Pass(忽略))的節(jié)點(diǎn),以RuleListNode結(jié)構(gòu)表示。其次,是在具有相同處理動(dòng)作的基礎(chǔ)上,按照不同的協(xié)議類(lèi)型(IP,TCP,ICMP和UDP)再分成幾條鏈表。而在每條鏈表中,具有相同源IP地址、目的IP地址、源端口和目的端口的規(guī)則頭節(jié)點(diǎn)RuleTreeNode構(gòu)成了結(jié)構(gòu)圖的第二層。以下的幾層由具有相同源IP地址、目的IP地址、源端口和目的端口所對(duì)應(yīng)的規(guī)則選項(xiàng)節(jié)點(diǎn)即tTreeNode組成。例如在一組規(guī)則中有45條檢測(cè)CGI-BIN探測(cè)活動(dòng)的規(guī)則,而它們都具有相同的源/目的IP地址及端口號(hào),則它們?cè)阪湵碇锌梢詫⑦@些共同屬性壓縮到一個(gè)單獨(dú)的RuleTreeNode節(jié)點(diǎn)中,而每個(gè)不同的屬性(規(guī)則選項(xiàng))保存在與RuleTreeNode節(jié)點(diǎn)相連的OptTreeNode節(jié)點(diǎn)中。這樣的結(jié)構(gòu)方式,將大大有助于提高檢測(cè)速度。

  建立規(guī)則鏈表的流程如下:首先讀取規(guī)則文件,檢查規(guī)則文件是否存在并可讀,然后依次讀取每一條規(guī)則,同時(shí)進(jìn)行多行規(guī)則的整理;對(duì)規(guī)則進(jìn)行解析,按類(lèi)型進(jìn)行分支處理,并用相應(yīng)的規(guī)則語(yǔ)法表示,建立規(guī)則語(yǔ)法樹(shù);最后進(jìn)行一些完善操作,如連接所有的動(dòng)態(tài)規(guī)則,進(jìn)行規(guī)則樹(shù)的完整性檢查。其中解釋規(guī)則并將其添加到規(guī)則鏈表的流程如圖10所示。

圖10規(guī)則解析模塊流程

  作為個(gè)人通信的一個(gè)重要的組成部分,無(wú)線局域網(wǎng)在現(xiàn)實(shí)及未來(lái)的社會(huì)生活中將得到廣泛的應(yīng)用。無(wú)線入侵檢測(cè)技術(shù)也將必然隨著計(jì)算機(jī)技術(shù)的發(fā)展而發(fā)展,隨著無(wú)線網(wǎng)絡(luò)的普及和移動(dòng)設(shè)備的性能的提高而得到進(jìn)一步的發(fā)展。下一步將在本文研究的基礎(chǔ)上,重點(diǎn)解決入侵檢測(cè)系統(tǒng)的應(yīng)用瓶頸問(wèn)題,以大幅度提升檢測(cè)準(zhǔn)確性以及大量應(yīng)用網(wǎng)絡(luò)環(huán)境下的系統(tǒng)性能。



 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。