摘要:通過分析現有的入侵檢測技術.提出了一個智能入侵檢測專家系統的模型。
關鍵詞:入侵檢測 專家系統
中圖分類號:TP393.08 文獻標識碼:A 文章編號:1002-2422(2008)01-0026-02
1 智能入侵檢測專家系統的結構和功能設計
針對單機系統檢測范圍有限的特點,將系統改為分布式的,即將系統分別配置在網絡的不同子網中。系統在網絡中的分布如圖1所示。
各分系統即具有獨立的本子網絡入侵檢測能力,同時他們之間又協同工作,當某一子系統通過某一規則的匹配發現攻擊行為時,就將此規則通報給其他分系統,各分系統根據收到的這個信息,來調整自己規則庫中某一規則的置信度,同時根據規則進行相應的響應,及早對本子網采取措施,這樣可以有效地防止攻擊行為在試圖攻擊一個子網后又攻擊其他子網。各分系統主要由初始化、包過濾、歷史信息處理、規則庫、推理機和響應報警幾部分組成。
2 模型中的關鍵技術
2.1規則庫的建立
規則庫是入侵檢測專家系統運行的依據,對系統起著核心的作用。通過兩個步驟來建立規則庫。
第一個步驟是讓專家根據經驗來定義一套規則,既要定義描述正常網絡通信的正常行為規則,還要定義一個用于描述可疑行為的可疑行為規則集。為了提高檢測的準確性,給每條規則增加了一個叫做可信度的屬性,用來描述該條規則被匹配時的網絡攻擊的一個概率。顯然,這個值應該是一個可變的值,初始時,只根據專家的經驗給它一個初始的值,對于描述那些已知的、特征明顯的網絡攻擊的規則,可以給它一個較高的初始值,而那些描述特征不明顯的網絡攻擊的規則,則給其一個較低的初始值,隨著系統不斷運行對這個值進行動態地調整。
第二個步驟是系統根據歷史審計數據進行數據挖掘,主要采用關聯規則挖掘方法進行挖掘。這里用多個屬性來描述一個網絡事件,設I={i1i2…im}是屬性的集合,其中每個事務T是屬性的集合,滿足###;設任務相關的事務集D是數據庫事務的集合。關聯規則是形如A→B,c的蘊涵式,其中A###I,B###I。并且A∩B=φ,規則A→B在事務集D中成立:c是規則A→B在事務集D中的置信度,即D中事務,在包含A的情況下,包含B的百分比,即條件概率P(BIA)。在歷史審計數據規模較大時,數據挖掘過程可能發現數以萬計的規則,其中許多規則是用戶不感興趣的,因此需要對數據挖掘過程進行約束,使挖掘在用戶提供的約束指導下進行,即參考事先確定的規則進行挖掘。例如:可以給這些事先確定好的規則規定一個值閾,只有當閾值大于這個值的數據才被采用。通過數據挖掘得出的規則將它用于異常檢測部分,同時它也是誤用檢測的二次判斷的依據,從而可以降低誤用檢測的誤報率。

上面只是針對網絡層的攻擊進行規則定義,對于屬于應用層攻擊。無法通過檢查網絡層和傳輸層的協議特征檢測這些攻擊。需要通過分析應用層協議數據中的關鍵命令進行檢測。在檢測系統中,將客戶端向服務器端發出的請求數據中的第一個單詞作為應用層協議中的關鍵字,組成關鍵字集合,然后對關鍵字集合進行數據挖掘,找出用來描述應用層攻擊的規則。例如,幾分鐘內試圖從網絡上登錄系統,而口令錯誤達到3次以上可視為一次攻擊。
2.2系統自學習技術
網絡安全技術在不斷進步,新的攻擊手法也層出不窮,為保證有較高的檢測效率,必須不斷的更新、添加新攻擊的特征模式。這極大地增強了入侵檢測系統的開發費用,這個問題可以通過自學習算法得到解決。
當系統檢測到一個異常的事件時,就進入異常判斷過程,由于描述網絡行為的各屬性之間不是獨立的,而是有一定的相關性。例如:當發現有大量不成功的Tcp半鏈接出現時,有兩種可能的情況,一種是網絡不穩定,另一種情況是受到DDOS攻擊。這就需要進行二次判斷。若某條規則通過二次判斷被確定為一次網絡攻擊時,就提高其規則置信度,同時將該事件作為一次攻擊記錄下來,反之,則降低其置信度。這種調整是實時的,每一次異常都會發生一次。每隔一定時間,這個時間可由系統使用者確定,系統就對歷史數據進行一次處理,同時用它來調整規則庫中各規則的置信度。對于那些對系統有可能造成較大破壞的攻擊記錄,可以通過人工審計的方法對發現它的規則進行置信度調整。這樣,該系統就可在運行的過程中不斷學習到新的攻擊特征。當一個攻擊被某一分系統發現后,它也同時將此攻擊的特征通知給其他分系統。
3 結束語
采用了分布式的結構,可以配置在各子網中,提高了入侵檢測的發現效率。同時,它將誤用檢測和異常檢測結合起來,即保留了誤用檢測準確率高的優點又降低了異常檢測的誤報率。