一種基于數(shù)據(jù)融合的新的入侵檢測框架
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引 言
近年來,互聯(lián)網(wǎng)迅猛發(fā)展,隨之而來的是網(wǎng)絡(luò)入侵事件的數(shù)量也成倍增長 ;信息安全領(lǐng)域面臨嚴(yán)峻的挑戰(zhàn),而入侵檢測技術(shù)作為主要的動態(tài)防御手段已經(jīng)成為當(dāng)前刻不容緩的重要課題。入侵檢測是對計(jì)算機(jī)系統(tǒng)攻擊行為的檢測。入侵檢測系統(tǒng)(Intrusion Detection System)能實(shí)時(shí)監(jiān)控系統(tǒng)的活動、及時(shí)發(fā)現(xiàn)攻擊行為并采取相應(yīng)的措施以避免攻擊的發(fā)生或盡量減少攻擊造成的危害。
傳統(tǒng)的入侵分析技術(shù)分為濫用檢測(MisuseDetection)和異常檢測(AnomalyDetection)兩大類。目前已經(jīng)發(fā)展出的入侵分析技術(shù)已有數(shù)十種,而任何一種單一的入侵分析技術(shù)都存在一定的不足。例如,基于規(guī)則匹配的濫用檢測方法不能有效檢測已知攻擊的變種或?yàn)橹构?;基于系統(tǒng)調(diào)用的異常檢測方法不能適應(yīng)用戶反復(fù)無常的更改其工作習(xí)慣 ;基于神經(jīng)網(wǎng)絡(luò)的入侵檢測方法要求訓(xùn)練數(shù)據(jù)集純凈,可移植性差。本文提出的新的入侵檢測框架能充分利用多源檢測信息,進(jìn)行融合的各檢測方法利用各自特點(diǎn)彌補(bǔ)單一方法的缺陷,在保持較低的誤警率的情況下,提高檢測率,同時(shí)能夠發(fā)現(xiàn)未知類型的攻擊。
1 基于數(shù)據(jù)融合的入侵檢測
1.1 理論模型
數(shù)據(jù)融合技術(shù)在軍事領(lǐng)域已得到廣泛的應(yīng)用, 其定義為 :把來自多傳感器和信息源的數(shù)據(jù)和信息加以聯(lián)合(Association)、相關(guān)(Correlation),合并為一種表示形式,以獲得目標(biāo)精確的位置 / 狀態(tài)估計(jì)、身份識別,以及對戰(zhàn)場態(tài)勢和威脅的綜合評估。
把網(wǎng)絡(luò)數(shù)據(jù)看作來自多傳感器的多源信息并引入數(shù)據(jù)融合的分析模型,能有效的發(fā)現(xiàn)、分析數(shù)據(jù)之間的內(nèi)在聯(lián)系,并為系統(tǒng)管理員提供有效的風(fēng)險(xiǎn)評估。在 1999 年,Tim Bass 提出了將數(shù)據(jù)融合應(yīng)用于入侵檢測的理論模型 [1],圖 1 所示是Tim Bass 的基于數(shù)據(jù)融合的入侵檢測模型圖。
在圖 1 所示模型中,態(tài)勢數(shù)據(jù)可通過網(wǎng)絡(luò)傳感器的初步觀測基元、標(biāo)識符、次數(shù)和描述獲得。原始數(shù)據(jù)需要校準(zhǔn)過濾, 參照圖 1 中的層次 0。第 1 層的對象提取在時(shí)間(或空間)上相關(guān)聯(lián),其數(shù)據(jù)標(biāo)以公制的權(quán)重。觀測數(shù)據(jù)可以根據(jù)入侵檢測基元關(guān)聯(lián)、配對、分類。對象通過配位的行為、依賴、共同的源點(diǎn)、共同的協(xié)議、共同的目標(biāo)、相關(guān)的攻擊率或其他高層次的屬性被檢測出,形成一個基于對象的聚集的集合。對象在這樣的對象基上的上下文中排列、關(guān)聯(lián)、置位后,態(tài)勢提取就可以提供態(tài)勢知識和識別。
在該模型的啟發(fā)下,本文提出了一種基于二級數(shù)據(jù)融合的入侵檢測的框架。第一級對通過多源檢測信息進(jìn)行融合,提取出有效特征,實(shí)現(xiàn)數(shù)據(jù)融合的目標(biāo)標(biāo)定 ;第二級融合對同一目標(biāo)用不同的檢測方法進(jìn)行分析,并使用決策器對各分析結(jié)果進(jìn)行決策融合,得出最終決策并形成反饋控制自適應(yīng)的調(diào)整IDS 自身,圖 2 所示是基于二級數(shù)據(jù)融合的入侵檢測框架。
在本模型中,一級融合從主機(jī)傳感器、網(wǎng)絡(luò)傳感器、網(wǎng)關(guān)傳感器采集數(shù)據(jù),進(jìn)行對象提取。二級融合中使用的分析引擎也分為濫用和異常兩大類。前一大類具有檢測率高但不能發(fā)現(xiàn)未知類型的攻擊的特點(diǎn) ;后一大類則特點(diǎn)各有不同,如基于時(shí)序異常的IDS可以發(fā)現(xiàn)系統(tǒng)底層的異常,而基于用戶行為異常的IDS對用戶的習(xí)慣敏感。通過決策融合可以利用各檢測引擎的優(yōu)點(diǎn),彌補(bǔ)其他的不足。而決策形成的反饋控制可以對某些分析引擎進(jìn)行微調(diào),從而使整體具有自適應(yīng)性。在決策融合中可以采用的決策方法有:決策表、能量函數(shù)、D-S 證據(jù)理論。
1.2 實(shí)現(xiàn)模型
在現(xiàn)有的試驗(yàn)條件下,不可能將理論模型中所有的分析引擎都加以使用。目前入侵檢測系統(tǒng)中最大的問題就是不能在較低的誤警率下獲得較高的檢測率。產(chǎn)生這樣問題的根本原因是入侵檢測系統(tǒng)根據(jù)單一的檢測手段得到的信息不完善, 根據(jù)這些信息不易得出正確的結(jié)論。著眼于這一點(diǎn),本文從兩大類入侵分析引擎中各選取一種具有代表性的進(jìn)行融合:基于規(guī)則/ 模式匹配的Intrusion Detection Engine和基于聚類(非監(jiān)督學(xué)習(xí))的Intrusion Detection Engine?;谝?guī)則/ 模式匹配的濫用檢測方法已經(jīng)發(fā)展的比較成熟,市場上的商用IDS 多基于此。它是對數(shù)據(jù)包作基本的協(xié)議解碼后結(jié)合數(shù)據(jù)包數(shù)據(jù)區(qū)的內(nèi)容匹配來檢測攻擊,其特點(diǎn)是對已知類型的攻擊檢測率相當(dāng)高,但具有不能發(fā)現(xiàn)未知類型的攻擊、不易配置更新的不足?;诰垲悾ǚ潜O(jiān)督學(xué)習(xí))的檢測方法屬于異常檢測,它是通過在數(shù)據(jù)中發(fā)現(xiàn)不同類別的數(shù)據(jù)集合來區(qū)分異常用戶類,進(jìn)而推斷入侵事件發(fā)生,檢測異常入侵行為。該方法具有在較低誤警率下發(fā)現(xiàn)未知類型攻擊的能力,但是其檢測率不高。在文獻(xiàn) [2] 中給出了一種基于非監(jiān)督學(xué)習(xí)的實(shí)現(xiàn)方法, 但其性能不能滿足要求,本文采用另外一種非監(jiān)督學(xué)習(xí)的聚類 方法,取得了不錯的效果。
實(shí)際的實(shí)現(xiàn)模型如圖 3 所示,該模型由于檢測率高、誤警率幾乎為零,故將基于規(guī)則/ 模式匹配的IDE 作為主分析引擎?;诰垲悾ǚ潜O(jiān)督學(xué)習(xí))的 IDE 作為輔助分析引擎,彌補(bǔ)主分析引擎不能發(fā)現(xiàn)未知攻擊類型的不足。由于在特征空間中反映出的入侵?jǐn)?shù)據(jù)流的分布變化不定,輔分析引擎采用基于一定時(shí)間窗口的在線訓(xùn)練加以擬合。決策融合現(xiàn)簡單的采用基于檢測率、誤警率二維因素的決策表,表 1 所列是其二維的決策表。
當(dāng)最終決策表明當(dāng)前數(shù)據(jù)流中的入侵?jǐn)?shù)據(jù)所占的比例大 于 2%時(shí)形成反饋控制 :關(guān)閉輔分析引擎,通知管理員,只使 用主分析引擎檢測。當(dāng)入侵?jǐn)?shù)據(jù)所占的比例小于 2%時(shí)繼續(xù)同 步工作。
1.3 基于聚類(非監(jiān)督學(xué)習(xí))的入侵分析方法
將模式識別中的聚類技術(shù)引入入侵檢測屬于異常檢測的 方法。與有監(jiān)督學(xué)習(xí)相比,非監(jiān)督學(xué)習(xí)的識別率要低一些, 但具有發(fā)現(xiàn)未知相似類型的能力。該方法提出了一種能處理不 帶標(biāo)識且含異常數(shù)據(jù)樣本的訓(xùn)練集數(shù)據(jù)的入侵檢測方法。對 網(wǎng)絡(luò)連接數(shù)據(jù)作歸一化處理后,在特征空間中按照一定規(guī)則 形成類質(zhì)心,并通過計(jì)算樣本數(shù)據(jù)與各類質(zhì)心的最小距離來 對各樣本數(shù)據(jù)進(jìn)行類劃分,同時(shí)根據(jù)各類中的樣本數(shù)據(jù)動態(tài) 調(diào)整類質(zhì)心。由于網(wǎng)絡(luò)數(shù)據(jù)一般服從這樣的前提假設(shè) :正常 行為的數(shù)據(jù)量及其類別數(shù)將遠(yuǎn)遠(yuǎn)大于各種攻擊行為的數(shù)據(jù)量 及其類別。一般可以以訓(xùn)練結(jié)果中各個類劃分的樣本數(shù)來評 判該類是否異常。完成樣本數(shù)據(jù)的類劃分后,根據(jù)異常比例 來確定異常數(shù)據(jù)類別并用于網(wǎng)絡(luò)連接數(shù)據(jù)的實(shí)時(shí)檢測。結(jié)果 表明,該方法有效地以較低的系統(tǒng)誤警率從網(wǎng)絡(luò)連接數(shù)據(jù)中 檢測出新的入侵行為,更降低了對訓(xùn)練數(shù)據(jù)集的要求。
文獻(xiàn) [2] 中詳述了該方法的一種具體實(shí)現(xiàn),其核心聚類算 法是最鄰近算法。其性能在誤警率平均 2.63% 的情況下,檢 測率在 18.75% 到 56.25% 之間波動。為了將這一方法應(yīng)用于我們的框架中,必須進(jìn)一步提高檢測率。在此方法中,核心聚 類算法采用最大最小距離算法 [3],同時(shí)加入一些其他的技術(shù)如 非線性的歸一化預(yù)處理、非數(shù)值型特征的有效編碼等。最終, 在相同的誤警率下,檢測率提高至 31.625% 到 81.7% 之間。并 且,將此方法應(yīng)用于入侵檢測框架時(shí),可以利用上面提及的反 饋控制調(diào)整最大最小距離算法的聚類參數(shù),進(jìn)一步提高分類 的準(zhǔn)確性,從而提高檢測率。
2 仿真試驗(yàn)
在試驗(yàn)中,我們采用通用的 KDDCup99[4] 專用數(shù)據(jù)集進(jìn) 行測試。該數(shù)據(jù)集來源于從一個模擬的局域網(wǎng)上采集來的 9 個 星期的網(wǎng)絡(luò)連接數(shù)據(jù)。每條數(shù)據(jù)有 41 個特征,包括 36 個數(shù) 字型特征,5 個字符型特征。數(shù)據(jù)集種共包含4 大類 22 種攻擊。 本入侵檢測系統(tǒng)配置如下:主分析引擎可匹配識別 8 種攻擊 ; 輔分析引擎的一次訓(xùn)練集包含 10 種攻擊,其中 2 種為主分析 引擎不可識別的攻擊。被檢測集含有 10 ~ 12 種攻擊。經(jīng)過 5 組測試,其平均性能如表 2 所列。
由此可見,基于融合的檢測在較低的誤警率下可以識別 一定的未知類型攻擊,從而明顯提高了檢測率。其平均檢測時(shí) 間在 0.011~ 0.019 秒之間,基本可以接受。與傳統(tǒng)的方法相比, 以上結(jié)果充分說明了該方法的可行性與實(shí)用性。
同時(shí)經(jīng)過進(jìn)一步分析,還可以看出,雖然基于聚類(非 監(jiān)督學(xué)習(xí))的入侵檢測方法有助于提高基于規(guī)則 / 模式匹配的 入侵檢測方法的檢測率,但后者對降低前者的誤警率沒有絲 毫幫助,這也是我們下一步要研究的課題之一。
此外,入侵檢測系統(tǒng)的一個非常重要的特性就是對實(shí)時(shí) 性的要求很高。系統(tǒng)的精度再高,事后分析的延遲超過一定的 限度對用戶來說也是無用的。因此,本文對訓(xùn)練的實(shí)時(shí)性和 檢測的實(shí)時(shí)性也進(jìn)行了相關(guān)的分析。
(1)訓(xùn)練的實(shí)時(shí)性。我們分別對樣本 容量為 1 000, 2 000,5 000 的訓(xùn)練集做了整體性測試,其結(jié)果如圖 4 所示。
可以看出,樣本容量為 1 000 時(shí)訓(xùn)練耗時(shí)為 2 分 40 秒, 而增加到 2 000 時(shí)已經(jīng)需要 16 分鐘。訓(xùn)練時(shí)間是隨著樣本容 量的增加而呈指數(shù)級增長的。就算以最低的樣本容量訓(xùn)練也 遠(yuǎn)不能達(dá)到實(shí)時(shí)的要求。進(jìn)一步分析發(fā)現(xiàn)大部分時(shí)間都用來 進(jìn)行距離矩陣的運(yùn)算了,實(shí)際核心算法的單次迭代花費(fèi)小于 2 秒。從程序的編寫角度還可以提升 20 % 以上的速度,例如 : 距離在首次使用時(shí)計(jì)算 ;數(shù)據(jù)庫的查詢速度可以提升 ;數(shù)值 預(yù)處理以后不需要開方運(yùn)算。另外,由以上分析可以想到,在“實(shí) 時(shí)采集,實(shí)時(shí)訓(xùn)練,實(shí)時(shí)檢測”的系統(tǒng)中,訓(xùn)練樣本的采集不 要批量而是一條條的采集,采集到一條就立刻計(jì)算相關(guān)的距 離值,即將集中計(jì)算距離矩陣的時(shí)間分散開。這樣總體的訓(xùn)練 時(shí)間可以降到 5 秒鐘以下,達(dá)到接近實(shí)時(shí)訓(xùn)練的要求。
(2)檢測的實(shí)時(shí)性。檢測時(shí)間主要受規(guī)則集大小和聚類 方法最終生成的分類器數(shù)目的多少影響。當(dāng)前條件下一條樣本 的平均檢測時(shí)間一般為 0.015 ~ 0.019 秒,這是可以接受的。
3 結(jié) 語
本文提出了一種基于數(shù)據(jù)融合的入侵檢測框架,其核心 思想是充分利用多源檢測信息,通過融合與反饋的方法有機(jī)的 結(jié)合各種分析引擎。并且一種新的基于聚類(非監(jiān)督學(xué)習(xí))的 檢測方法應(yīng)用于本框架,經(jīng)試驗(yàn)證明了其有效性。
在下一步的工作中,還需要進(jìn)一步完善整個框架,提高 其性能和實(shí)用性,具體方法包括 :
(1)提高基于聚類的檢測方法在線學(xué)習(xí)的穩(wěn)定性 ;
(2)引入其它類型的分析引擎進(jìn)行融合 ;
(3)在相同條件下比較分析各種融合方法的結(jié)果 ;
(4)提高反饋控制的精確性。