摘 要:簡要介紹了入侵檢測系統(tǒng)模型及人工免疫在入侵檢測技術(shù)上的應用,分析了影響LISYS系統(tǒng)的檢測元檢測效率的原因,提出了一個設(shè)置過濾器的解決方案,詳細描述了過濾算法,并以具體實驗結(jié)果作了定量分析。
關(guān)鍵詞:入侵檢測;人工免疫;檢測元;模式過濾
0 引言
傳統(tǒng)入侵檢測模型大體上可以分為基于誤用的入侵檢測模型和基于異常的入侵檢測模型兩種。
異常檢測系統(tǒng)試圖發(fā)現(xiàn)一些未知的入侵行為,異常檢測根據(jù)使用者的行為或資源使用狀況來判斷是否入侵,而不依據(jù)具體行為是否出現(xiàn)作判斷,其主要缺陷在于誤檢率很高,尤其在用戶數(shù)目眾多或工作行為經(jīng)常改變的環(huán)境中。
誤用檢測系統(tǒng)則用來發(fā)現(xiàn)一些已知的入侵行為。誤用檢測又稱特征檢測,依據(jù)具體特征庫進行判斷,從而檢測出入侵行為。其主要缺陷是只能檢測特征庫中已知的入侵,漏檢率很高。本文在模型分析的基礎(chǔ)上,通過模式過濾器設(shè)置,來提高系統(tǒng)檢測效率。
1 兩種模型的整合
為使檢測系統(tǒng)達到較好的檢測效果,目前普遍的解決方式是同時在系統(tǒng)中采用兩種檢測模型,實現(xiàn)優(yōu)勢互補。通常采用的兼用兩種模型的辦法是并行地施行兩套檢測措施(即對待檢信息分別進行誤用和異常檢測),而采用的檢測算法大致包括:基于誤用的,專家系統(tǒng)、模型推理方法、狀態(tài)轉(zhuǎn)換分析;基于異常的,統(tǒng)計學方法、神經(jīng)網(wǎng)絡(luò)方法。這些方法都存在一定的缺陷,尤其是在效率上;而且每一種方法都獨成一體:很難整合。
針對上述問題,Homfmeyr和Forrest模擬人體免疫系統(tǒng)提出了基于免疫原理的負選擇模型:首先定義一個Self集(簡單的正常模式集,其中所有模式可以理解為正常網(wǎng)絡(luò)行為),隨機產(chǎn)生若干檢測元(抗體),清除會對Self集產(chǎn)生警報的檢測元(此過程稱為陰性選擇),然后通過陰性選擇的檢測元開始探查網(wǎng)絡(luò)上的信息(此時可以理解為在做異常檢測)。如發(fā)現(xiàn)屬于Nonself集的事件則預警,檢查系統(tǒng)是否發(fā)生損害,若無則可理解為正常事件,將此事件記入Self集,該檢測元自行消亡(這樣就避免了誤檢的產(chǎn)生);反之,則視為遭受入侵,激活該檢測元,將入侵行為特征計入特征庫,檢測元升級為誤用(記憶)檢測元,檢測具有該特征的入侵行為。這樣既解決了誤檢的問題又將異常和誤用兩種檢測模型完美地結(jié)合起來。
其檢測元生成算法可以歸結(jié)如下(見圖1):
(1)定義一個自我模式集作為生成有效檢測元的訓練集;
(2)產(chǎn)生候選檢測元。通過一個隨機過程來產(chǎn)生一個長度為49位的位串作為候選檢測元;
(3)產(chǎn)生有效檢測元集合R,將產(chǎn)生的候選檢測元與自我集中的模式進行匹配試驗。若匹配,則丟棄該候選串,返回(2);否則該候選檢測元就是一個有效的檢測元,進入R集合,返回(2);
(4)重復(2),(3值到產(chǎn)生一定數(shù)量的有效檢測元為止。
算法產(chǎn)生的有效檢測元集能夠保證其中的每個檢測元都不與自我集的任何模式相匹配。系統(tǒng)將流經(jīng)網(wǎng)絡(luò)的報文抽取出的數(shù)據(jù)特征組成模式集合,稱為待檢測模式集。
2 檢測效率分析
在上述算法的基礎(chǔ)上,Homfmeyr提出了一個分布式網(wǎng)絡(luò)入侵檢測模型LISYS。系統(tǒng)將流經(jīng)網(wǎng)絡(luò)的報文抽取出的數(shù)據(jù)特征組成模式集合,稱為待檢測模式集。LISYS的每一個節(jié)點上的檢測系統(tǒng)是通過該節(jié)點的檢測元與待檢測模式之間的匹配來完成模式識別或檢測功能。
待檢測模式從流經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)包抽取取得,分為正常模式(非入侵行為)和異常模式兩種。在通常情況下,網(wǎng)絡(luò)中絕大部分數(shù)據(jù)都是正常數(shù)據(jù),異?;蛉肭中袨橹徽忌贁?shù)。而有效檢測元是使用類似于免疫細胞自我耐受過程的否定選擇算法來產(chǎn)生的,且這些檢測元還具有一定的生命周期,因此由檢測元構(gòu)成的檢測元集具有動態(tài)性。檢測元集的動態(tài)性決定了其中的檢測元是順序存儲的,識別時只能將待檢測模式與檢測元集中的檢測元進行順序比較。
從否定選擇算法中可以看出,檢測元在生成過程中要經(jīng)歷一個類似于人體免疫耐受的審查過程,只有與自我集的任何模式都不匹配的檢測元才會成為有效檢測元,這樣,正常模式一定不與檢測元集中的元素匹配。使每一個正常模式都必須與每一個成熟檢測元進行比較、試驗匹配,是一種無效冗佘,將嚴重降低系統(tǒng)的檢測效率。
3 模式過濾器
針對正常模式無效比較的問題,本文提出統(tǒng)計出現(xiàn)頻率高的正常模式集,設(shè)置一個過濾器將大部分正常模式預先過濾掉,然后再由有效檢測元對剩下的模式進行匹配,從而達到提升系統(tǒng)效率的目的。
模式過濾器算法如下:
算法1:正常模式收集算法
(1)采集正常模式;
(2)將采集到的正常模式NP加入正常模式集NormalSet。
If NormalSet.size If NP∈NormalSet 該NP的訪問計數(shù)AccessCount增1 Else 將NP加入NormalSet,該NP的訪問計數(shù)AccessCount增1 end else If NP∈NormalSet 該NP的訪問計數(shù)AccessCount增1 用該NP替換NP={NPINP∈NormalSet∩Min(AccessCount)] end end (3)對NormalSet的記錄按AccessCount的進行降序排序; (4)轉(zhuǎn)(1)。 算法2:正常模式過濾算法 (1)采集數(shù)據(jù)模式P; (2)令P與NormalSet中AccessCount最大的N個NP進行匹配, if匹配成功 丟棄P else 通過過濾器 end (3)轉(zhuǎn)(1)。 4 實驗數(shù)據(jù) 通過對202.113.76網(wǎng)段的82,83,99三個節(jié)點3天的實驗,取得如下數(shù)據(jù): 統(tǒng)計策略:統(tǒng)計正常模式(NP),對MaxSize個NP賦匹配計數(shù),過濾計數(shù)最大的前S個NP,以減少NP與成熟檢測元的匹配次數(shù),提高系統(tǒng)效率。實驗數(shù)據(jù)如表1,其中MaxSize=50,S=10,節(jié)點檢測元總數(shù)=500。 其中: Filted NP=Second Day NP Filted Number-First Day NPFilted Number Mature Detectors=Min(First Day MD number,Second Day MD number) Normal BIPS Match Cost=Filted NP*Mature DetectorsFilter Cost=Filted NP*S,Ratio=Filter Cost/Normal BIPSMatch Cost*100% 5 結(jié)束語 由實驗數(shù)據(jù)分析可以看出,過濾器過濾正常模式的開銷與成熟(有效)檢測元對正常模式的匹配操作的開銷比率ratio不超過5%。說明,通過設(shè)置模式過濾器,可以有效降低系統(tǒng)因正常模式的匹配操作而產(chǎn)生的開銷。