等專科學校 計算機系, 河北 滄州 061001)
摘 要:提高IDS(入侵檢測系統)報警的可信性是IDS的根本目標。從理論上分析了可信問題產生的原因,給出了其形式化描述,提出了一種多IDS協同工作提高檢測可信度的方法,并證明了該方法可以應用于各種不同IDS的協同工作中(基于誤用、異常及異常與誤用相結合的IDS)。多檢測系統結果融合時采用推進Bayesian分類方法,給出了其模型和具體算法。實驗分析表明,該方法與其他同類算法相比,降低了系統的漏報率和誤報率,增強了報警的可信度。
關鍵詞:入侵檢測系統; 可信性; 推進Bayesian方法
中圖分類號:TP393.08文獻標志碼:A
文章編號:1001-3695(2009)09-3496-03
doi:10.3969/j.issn.1001-3695.2009.09.084
Improvement scheme on creditability of intrusion detection system(IDS)
CHAI Zheng-yi1,2, LIN lin3, WANG Jian-wen4, QI Chuan-hui4
(1.School of Information Science Engineering, Hennan University of Technology, Zhengzhou 450001, China; 2.School of Computer, Xidian University, Xi’an710071, China; 3.Dept. of Computer Science, Yili Normal University, Yili Xinjiang 835000, China; 4.Dept. of Computer Science, Hebei Engineering Technical College, Cangzhou Hebei 061001, China)
Abstract:False positive rate and 1 negative rate affected the detection creditability of intrusion detection systems (IDS). This paper presented a method of multi-IDS cooperation to improve detection creditability after analyzing 1 negative rate and 1 positive rate of IDS. The result fusion based on boosting Bayesian classification algorithm, which put different weights on single IDS and sum the result, then choose the greatest one. The experiments show that the method can reduce the 1 positive rate and 1 negative rate, and then improve the detection creditability.
Key words:intrusion detection system(IDS); creditability; boosting Bayesian
目前,入侵檢測系統(IDS)正在網絡安全防護中發揮著越來越重要的作用,但其檢測結果的可信性一直是一個嚴峻的問題,其中存在的主要問題是誤報和漏報。誤報是指把系統的正常行為誤判為入侵行為而進行報警;漏報是指系統把某些入侵行為誤判為正常行為而沒有報警。過多的誤報和漏報必然造成檢測結果的不可信,所以必須盡可能降低系統誤報率和漏報率,提高檢測結果的可信性。
1 入侵檢測系統的可信問題
對于入侵檢測系統期望其能最大限度地把系統中的入侵行為和正常行為區分開來。這主要取決于入侵檢測系統對正常行為的描述方式、檢測模型與檢測算法的選擇。入侵檢測系統可視為一個簡單的二值假設檢驗問題。為便于分析,本文采用數學語言來描述。假設I與I分別表示對目標系統的入侵行為和正常行為,A代表檢測系統發出了入侵報警,A表示檢測系統沒有報警。檢測率指受到入侵攻擊時,檢測系統能夠正確報警的概率,可表示為P(A|I)。誤報率指檢測系統在檢測時出現誤報的概率P(A|I),漏報率是指檢測系統出現漏報的概率P(A|I),且有P(A|I)=1-P(A|I),P(A|I)=1-P(A|I)。
對于網絡管理員來說,真正關心的是入侵檢測系統的可信問題。入侵檢測系統的可信度可用兩個可信概率來表示:a)檢測系統報警可信概率,由P(I|A)給出,即檢測系統報警時,目標系統實際受到入侵攻擊的概率。該參數小于1時,說明檢測系統存在誤報現象;b)檢測系統不報警可信概率,由P(A|I)給出,即檢測系統沒有報警時,目標系統處于安全狀態(沒有受到入侵攻擊)的概率。該參數小于1時,說明檢測系統存在漏報現象。
顯然,為了入侵檢測系統更有效,希望系統的這兩個參數值越大越好。應用貝葉斯定理可以求出入侵檢測系統可信度的概率P(I/A)=[P(I)P(A/I)]/[P(I)P(A/I)+P(I)P(A/I)]。同理,P(I/A)=[P(I(1-P(A/I))]/[P(I)(1-P(A/I))+P(I)(1-P(A/I))]。根據上面的分析,針對給定的實驗數據或具體環境,可以通過已經獲得的數據統計以及系統仿真獲得P(I)、P(I)、P(A/I)、P(A/I)的先驗概率,進而計算出P(I/A)。在一般情況下,入侵行為出現的概率是非常低的,即P(I)<
2 入侵檢測系統的誤報和漏報問題分析
2.1 異常入侵檢測系統誤報和漏報問題
入侵檢測一般分為異常入侵檢測系統和誤用入侵檢測系統。異常檢測系統也稱為基于統計行為的入侵檢測系統。其方法為:檢測系統首先建立被檢系統的正常行為輪廓,當檢測系統發現被檢系統的行為偏離正常輪廓的范圍超出某個閾值時,則認為有入侵發生。但當某個入侵不會導致異常行為或者導致的異常行為偏離正常輪廓的范圍很小,未超出檢測閾值時,異常檢測系統將會產生漏報。同時,由于檢測系統建立的正常行為輪廓不完善,不能涵蓋所有正常活動所致,異常檢測系統將會產生誤報。
2.2 誤用入侵檢測系統的誤報和漏報問題
誤用入侵檢測也稱為基于規則或知識的入侵檢測,就是將收集到的信息與已知的網絡入侵和系統誤用模式數據庫進行比較,從而發現違背安全策略的行為。由于缺乏對未知入侵活動或已知入侵活動的變異的先驗知識,對新型攻擊會有比較高的漏報率。可能產生誤報的原因是:入侵者可以通過人為地構造網絡數據包來匹配攻擊特征,從而控制入侵檢測系統引起大量誤報,麻痹系統管理員以利于后面的攻擊。
3 采用多入侵檢測系統協作提高檢測可信性
3.1 對采用相同檢測機制的檢測系統的協作
1)基于誤用的入侵檢測檢測系統的協作 設檢測系統A、B以及兩者共同工作時的整體檢測率分別為pdA、pdB及pd,通過檢測系統的能力互補,可以得到pd=1-(1-pdA)(1-pdB)=pdA+pdB(1-pdA)=pdB+pdA(1-pdB)。若檢測系統A、B的檢測率小于1,必有Pd>PdA,Pd>PdB。因此,A和B的協作可以提高整個檢測系統的檢測率,降低漏檢率(1-pd),增加被保護系統的安全性。
2)基于異常的入侵檢測檢測系統的協作 設檢測系統A、B以及兩者共同工作時的整體檢測率分別為pdA、pdB及pd,且對應的誤報率分別為pfA、pfB及pf。本文指定判定規則如下:兩個檢測器均認為正常時,判定為正常;若只有一個檢測器認為正常,則進行報警或作進一步分析;兩者均認為是異常時,才確定是異常。一個正常的行為,只有兩個檢測系統均認為是入侵時才出現誤報,所以針對檢測系統,誤報率有pf=pfA×pfB,并且pf≤pfA,pf≤pfB。因此,可以得出兩個異常檢測系統的協作可以有效降低系統的誤報率。針對漏報率(1-pd)=(1-pdA)+(1-pdB)(1-(1-pdA))=(1-pdB)+(1-pdA)(1-(1-pdB)),即pd=pdA×pdB。因為0≤pdA≤1,0≤pdB≤1,所以pd≤pdA,pd≤pdB,降低了漏報率。
3.2 對采用不同檢測機制的檢測系統的協作
由于不同的檢測機制從不同的角度考慮入侵檢測問題,可以采用不同的機制檢測系統協同工作的模式提高檢測的可信性。設系統A為基于異常的檢測系統,B為基于誤用的檢測系統。N表示被保護系統的正常行為集合。系統A把系統特征集合輪廓集合A之外的行為A都看做是異常的行為,而系統B則把已知入侵知識對應的入侵特征集合B之外的行為B都看做是正常行為。協作時,假設檢測系統B能夠檢測出所有的已知入侵且具有很低的誤報率,那對于已知的入侵攻擊手段,系統B可以用來驗證系統A的檢測結果,以降低A的誤報率。兩個系統的協作分以下幾種情況:a)當檢測系統A和B同時檢測到入侵時(A∩B),認為系統受到了入侵。b)當系統A檢測到入侵,系統B認為正常時,則只是給出警告或進一步分析系統表現的特征。c)系統A認為是正常時,不驗證。根據上面的規則,系統A在驗證模式下工作時,只有集合(A∩B∩N)所表示的系統正常行為可能被錯誤判為入侵行為。而集合(A∩B∩N)中的系統正常行為,在系統A單獨工作時,被誤判為入侵行為,但當系統B對其檢測結果進行驗證時,只是把它們判為可疑的行為,不把它們作為入侵情況看待,從而降低了系統A的檢測誤報率。同理,可以證明,若采用系統A對系統B檢測為正常的結果進行驗證,就可以降低B的漏檢率,提高檢測率。
由上面的分析可知,若一個檢測系統集成了多個不同的檢測子系統,這些檢測系統的協作可有效提高整個檢測系統的性能,即能夠降低檢測的漏檢、誤報率,提高檢測的可信性。
3.3 基于推進貝葉斯分類法多檢測器結果融合決策方案
對于多個檢測器的檢測結果,最簡單的判斷方法是采用K/N投票表決法,但這種決策方法不僅需要選擇K的取值來期望獲得的最大的概率,而且沒有考慮不同檢測器性能的影響。針對這個問題,可以采用基于貝葉斯分類器的多檢測器結果融合方案,利用多個檢測子系統D1,D2,…,DN對同一個系統進行檢測。當N個系統同時工作時,檢測結果組成長度為N的一維向量(a1,a2,…,an)。其中ai∈(A,A)作為輸入,分別計算該檢測向量出現時,目標系統正常的概率p(I/a1,a2,…,an)或受到入侵的概率p(I/a1,a2,…,an),通過收集這N個檢測子系統的檢測結果向量,并根據實際系統行為是否正常,獲得N維檢測結果的數據集,將其作為訓練數據創建貝葉斯推理的結果融合決策分類。假設參與結果融合的檢測器具有檢測獨立性,則可以給出如下的分類器定義:vNB=arg max p(v)ПNi=1p(ai/v)(v∈(I,I))。因此,只需要通過比較各檢測子系統的檢測結果組成的向量屬于正常的后驗概率和屬于異常的后驗概率的大小,就可以判斷系統是否真的遭到了入侵攻擊。
雖然在理論上,貝葉斯分類法有最小的出錯率,但是在實踐中貝葉斯分類相比其他分類法并沒有優勢,這主要是由于對其應用的假設條件的不準確性造成的。在這里,將數據挖掘中的推進技術用于貝葉斯分類,提高了檢測正確率。
推進算法的主要思想是:根據每個分類模型的正確率,給予它不同的權值(正確率越高,權值越大),將分類結果加權求和,選擇值最大的作為最終分類。針對入侵檢測系統的分類模型生成算法主要流程如下: