綜述性文章可以參考《網絡安全事件關聯分析技術與工具研究》
琚安康 郭淵博 朱泰銘 王 通
類別 技術方法 主要特點 應用場景 文獻
屬性特征
有限狀態機
行為動作明確清晰且具有極強的邏輯約束性;不夠靈活,不支持
場景的動態變化
邏輯性較強的系統應用場景 [17-18]
基於規則
最易實現且效 率 最 高;使 用 不 靈 活,配 置 困 難,規 則 庫 依 賴 於
專家知識
通用場景 [19-21]
codebook
關聯匹配速度快,性能較好,關聯 過 程 不 需 要 專 家 知 識;編 碼 生
成過程復雜
異常事件匹配識別 [40]
邏輯推理
實例推斷 具有學習能力;時間效率低,不適用於實時事件關聯 非實時處理環境 [23-25]
模型推斷 模塊化協作;結構描述、行為描述和異常定義 邏輯回路錯誤診斷 [26]
概率統計
投票機制 指示范圍輔助決策;無法給出確切信息 分布式網絡下的網絡錯誤或異常定位 [28]
依賴圖 直觀反映關聯關系,易於管理;生成算法效率較低,依賴資源
反映事件因 果 的 偏 序 關 系,生 成 操
作信息流圖
[30,41-42]
貝葉斯網絡
綜合了先驗知識和專家知識,且可隨環境變化更新;需要大量訓
練,依賴專家知識,針對大型網絡效果較差
小型網絡環境
[31-33,
44-46]
馬爾科夫模型
可檢測未知入侵,適用於連續事 件 流 和 實 時 檢 測;訓 練 代 價 高,
性能依賴於參數調優
多步攻擊定位問題 [34,47-49]
機器學習
神經網絡
非線性逼近性、魯棒性以及容錯性,自適應性,抗噪聲輸入,便於
推廣;調整權重和生成穩定網絡的過程需要大量試錯
快速、准確且 有 精 度 要 求 的 近 實 時
應用
[35-37,43]
支持向量機 克服了維數災難和局部極小等問題,具有較好的泛化能力 小樣本、高速網絡應用 [27,37-39]
支持的開源工具
開源軟件 應用場景 編程語言 用戶接口 關聯方法
Swatch 日志監控 Perl 命令行 文本規則
SEC 通用場景 Perl 命令行 文本規則
OSSEC 基於日志的IDS C,PHP Web接口 Xml規則
OSSIM 安全管理 C,PHP Python Web接口 資產和脆弱性分析
Drools 規則引擎 Java API DRL,DSL
Esper CEP,ESP Java API 類SQL規則
例如,文獻
[1]從基於模型的角度分析比較了現有安全關聯分析技術,
並將其分為基於相似度、基於序列和基於 實 例 的 方 法 等。其
中基於相似度的關聯技術又包括基於屬性[12]和基於時間關
系[15]兩種方法;基於序列的關聯技術包括基 於 因 果 條 件[6]、
圖算法[30]、代碼書[40]、馬爾可夫模型[34]、貝葉斯網絡[31]、神
經網絡[35]等方法;而基於實例的方法[13-14]往往需要基於先驗
知識。文 獻 [2]根 據 對 知 識 庫 的 依 賴 程 度,從 基 於 統 計 方
法[44]、基於知識[11]以 及 基 於 相 似 度[10]3種關聯方法的角度
對警報關聯技術進行了分析。其中基於統計方法的關聯技術
不需要關於攻擊場景的先驗知識,可以用於檢測新出現的攻
擊方式;基於知識的關聯技術主要分為基於攻擊場景的知識、
基於因果關系的知識和混合知識等;基於相似度的關聯技術
采用的方法主要是將安全報警與現有的數據進行對比,結合
過去的方法對當前遇到的問題進行處理。文獻[3]則從關聯
分析過程的視角,對規一化處理、數據聚集、關聯分析、誤差分
析、攻擊策略分析、優先級確定等6個具體實現步驟的實現方
法進行了分析總結,並對各自的優缺點進行了比較。
2 基於屬性特征的安全事件關聯分析技術
基於屬性特征的關聯分析技術是指從事件自身的角度出
發,分析屬性特征之間的關聯特性,並以此為基礎配置關聯策
略,根據事件屬性對其進行匹配檢測。由於各種類型的安全
事件本身具有特有的特征,因此此類方法要求人們對事件有
較為深刻的理解,較多地依賴於專家知識,無法對未知問題進
行有效關聯。
j基於狀態機的關聯分析方法,將有限狀態機技術應用到網絡安全事件關聯分析中的本
質在於某個安全事件會帶來多個可能的事件序列。基於狀態
機的關聯分析模型[17-18]的優點在於確定了系統狀態及轉換
函數后,描述系統各行為動作時是清晰明確的,具有極強的邏
輯約束性,適合於邏輯性較強的系統應用場景。在網絡入侵
檢測方面,可用於業務邏輯清楚且安全要求較高的應用場景,
但是也因為其強邏輯性,難以區分攻擊事件和人員誤操作,所
以會帶來通用性不好的缺點;而且在確定了狀態轉換邏輯之
后,不支持場景的動態變化,針對不同的應用場景必須重新建
立狀態模型,且當環境發生變化時需要進行適當調整。
基於規則的關 聯 方 法[19-21]是 最 易 實 現 且 也 是 效 率 最 高
的方法,但其缺點也很明顯:使用不靈活且配置困難。在實際
應用中,通常根據指定的條件動作關系設計和制定關聯規則,
即為每個規則指定一個條件(如“在不到五分鍾內事件 A 至
少發生十次,且在不超過一分鍾后 B 事件發生”)和相應的操
作(如“向管理員發送報警消息”)。對一個規則的評估由相應
的輸入事件觸發,這些規則通常被稱為事件條件操作(ECA)
規則。
實例推斷
基於實例推斷的思想源於現實生活中的應用場景,在現
實生活中,一些類似情形總是重復發生,處理某一特定情形的
方法在其他情形中也能適用,而這些類似的情形並非要與該
特定情形完全一致。因此,當試圖解決一個問題時,都是從曾
經經歷過的類似案例出發,基於實例推斷的關聯技術主要依
據這一思想,利用類比推理的方法得到新問題的近似解答,再
加以適當修正,使之完全適合新問題。
基於實例推斷的關聯技術[23-24]是指:將解決過的成功案
例作為知識存儲起來,遇到新問題時,在實例庫中查找相似的
案例,對其修正后作為新問題的解決方案。一般地,基於實例
推斷的關聯分析體系的結構由5個部分組成,其中包括1個
實例庫和4個功能模塊,4個功能模塊分別是輸入模塊、檢索
模塊、修改模塊和處理模塊。首先,輸入模塊接收用戶提供的
問題描述;接着由檢索模塊在實例庫中尋找與之匹配的事例,
如果能找到完全匹配的事例,那么就應用該事例的解,問題就
迎刃而解。如果找不到完全匹配的事例,檢索模塊就在實例
庫中找一個最近似的事例,然后由修改模塊對該事例的解作
適當的修正即可滿足當前問題的要求,其結果是得到一個新
問題的解;一旦問題被解決,則處理模塊根據解決方案對問題
進行處理。
模型推斷
基於模型推斷的關聯技術[26]將系統中的每一 個 部 件 都
表示為一個模型,需要對模型進行結構描述和行為描述,以及
違背上述兩種描述的異常定義,這種方法的缺點在於解決問
題的復雜性較高。在基於模型的關聯分析系統中,每個管理
對象都有一個模型作為其副本與之相聯系,一個模型實際上
就是一個軟件模塊,事件之間的關聯通過各個模型相互協作
實現。
雖然基於模型推斷的關聯技術在實現上會使用基於規則
的方法,但是與基於規則的方法針對於特定行為的事件模式
不同,基於模型推斷的關聯技術更關注一系列事件序列或模
型狀態,在這種意義上更接近於基於 FSM 的方法。
在應用中,基於模型推斷的關聯技術較多應用於邏輯回
路的錯誤診斷。例如,在實際網絡中一般都會周期性地對某
一路由器發出命令以檢測其是否正常工作,在基於模型的推
理系統中,這一過程實際上是通過該路由器的模型周期性地
對路由器發出命令來實現。
基於概率統計的安全事件關聯分析技術是指從事件發生
概率和統計數據角度出發,對報警信息間的關系以概率形式
進行刻畫,揭示網絡安全事件的時序和因果關系。這種方法
的優勢在於現有統計分析方法已經較為成熟,但缺點也很明
顯,即需要借助專家知識進行驗證和性能調優,因此針對未知
攻擊方式和存在大量冗余報警的事件集合的關聯效果較差。
投票機制
通過投票機制可以定位網絡中的錯誤或異常[28]。通常,
選票(由不同的 節 點 事 件 表 示)不 能 提 供 故 障 位 置 的 確 切 信
息,但其可以指示一定的方向和范圍來輔助決策。正如文獻
[4]指出,在故障定位過程中,基於投票機制的關聯分析引擎
事先獲知網絡的拓撲結構,並且可以計算出每個網絡組成元
素的投票數量,從而得到故障發生的可能位置。
文獻[5]描述了一個使用投票機制的示例場景,在該場景
中,從一個可能的消息類型中確定一個故障信息(觸發了具有
脆弱性設備中的一個程序漏洞),采用神經網絡的方法檢查每
個子網,每一個神經網絡確定哪一個消息類型最有可能是該
消息的錯誤消息並進行投票,最后根據所有消息類型的選票
確定最有可能的錯誤消息類型。
依賴圖
基於依賴圖(Dependency Graphs)的關聯分析技術[30]通
過將收集到的安全警報映射到基於時序信息的圖形中,將警
報之間的關系表示為一個有向圖,其中節點集表示警報,這些
節點相連的邊表示連接警報(節點)的時空關系,也稱為報警
關聯圖。
報警關聯圖具有下面幾個優點:1)從管理角度看,圖是比
較簡單的模型,即圖的形式可以很好地反映節點之間的關聯
關系;2)在關聯圖上的操作實現具有魯棒性,即添加或刪除對
象和依賴關系都是簡單的原子任務;3)圖表是一種自然的分
布式結構,易於管理,可以由不同的管理員獨立添加或刪除對
象和從屬關系。
在使用依賴圖的同時往往也會結合決策樹模型。決策樹
是一種樹狀結構,用於揭示數據中的結構化信息,利用該結構
可以將大型記錄集分割為相互連接的小記錄集,通過每一次
連續分割,結果集中的成員彼此之間變得越來越相似。使用
決策樹算法便於將數據規則可視化,構造決策樹的過程所需
的時間也比較短,且輸出的結果容易理解。決策樹具有分類
精度高、操作簡 單 以 及 對 噪 聲 數 據 具 有 較 好 健 壯 性 的 優 點。
C4.5和ID3是常見的決策樹算法方法,但是 C4.5決策樹算
法在生成樹的過程中,需要對樣本集進行多次掃描和排序,導
致算法的效率比較低;另外,C4.5算法只適用於可以駐留於
內存的數據集,當訓練集超過內存的容納能力時,程序就無法
運行,這使得該算法對硬件的要求比較高。
貝葉斯網絡
貝葉斯網絡模 型,也 被 稱 為 信 度 網 絡(或 簡 稱 為 貝 葉 斯
網),是最強大的概率圖形(GMs)之一,用於表示關於不確定
性的域間知識。貝葉斯網絡主要由兩個部分組成。
1)一個圖形組件組成的向無環圖(DAG),圖的頂點表示
事件,邊表示事件和事件之間的關系。
2)由數值組件組成的概率依賴關系,DAG 的每個節點表
示在其父母的 上 下 文 中 條 件 概 率 分 布 的 不 同 環 節 之 間 的 關
系,圖中的每個節點代表一個隨機變量,而節點之間的邊代表
相應的隨機變量的概率依賴關系。
貝葉斯網絡由幾個參數定義,即是由先驗概率的父節點
狀態和一組與子節點相關聯的條件概率表(CPT)組成的,條
件概率表反映子節點和其父節點之間的先驗知識。
貝葉斯網絡用於解決告警關聯問題時是有明顯的優勢。
首先,關聯分析的處理速度快;其次,可以通過填充條件概率
表,合並先驗知識和專家知識;再次,便於引入新數據以發現
未觀測到的變量概率;另外,可以通過網絡傳播更新適應新的
數據和知識。但是其也存在一定的缺點,即這種方法需要大
量的訓練活動以取得先驗概率,且需要依賴於專家知識。此
外,基於貝葉斯網絡的概率推理是 NP難問題,針對大型網絡
實際上很難實施有效的解決方案。
4.4 馬爾科夫模型
馬爾科夫模型(Markov Models)[34]是由離散狀態和狀態
轉移概率矩陣組成的隨機模型,在此模型中的事件被假定遵
循馬爾科夫特性,模型的下一個狀態只取決於當前狀態,而不
依賴於之前事件的順序。在馬爾科夫模型的定義中,需事先
設定好狀態間的躍遷概率和初始狀態概率,這些參數可以靜
態定義,也可以通過對數據集進行訓練得到。馬爾科夫模型
經過訓練得到定義相關的概率,即通過對一連串的事件進行
評估從而獲得概率值,將概率與門限值進行對比,從而確定事
件之間是否 存 在 關 聯 性。隱 馬 爾 可 夫 模 型 (Hidden Markov
Models,HMMs)中的狀態序列不可見,由於攻擊過程的行為
序列有較強的先后順序,一個步驟必須在另一步驟之后才能
達到攻擊的目的,因此隱馬爾科夫模型更適合於結合攻擊的
先決條件來解決定位多步攻擊問題。
一般來說,基於馬爾科夫模型的關聯分析技術更適用於
解決連續性質的問題,馬爾科夫模型的主要缺點是需要經過
適當的訓練,且性能依賴於參數調優。
5 基於機器學習的安全事件關聯分析技術
基於機器學習的安全事件關聯分析技術應用數據挖掘和
機器學習的方法訓練數據集,生成事件關聯規則,通過關聯分
析得到新型攻擊事件模式,是一種可實時運行的事件關聯方
法。這種方法的優點在於可以自動地為安全事件建立關聯模
型,為分析管理大量報警信息節省了時間,其結果提供的信息
便於分析人員閱讀。缺點在於需要對數據進行訓練,可能造
成結果線程過於龐大,而不存在於線程中的數據則無法進行
關聯,影響到最后的分析結果的准確性。
5.1 神經網絡
人工神經網絡(ANN)通過大量相互關聯的 處 理 單 元 即
神經元(Neurons)共同作用來解決具體問題,該模型主要受人
腦中的神經系統模型的啟發。各神經元之間相互關聯,每個
神經元可被看作是一個簡單的自動處理單元,本地提供內存
和單向通道,使其與其它神經元進行通信。神經網絡通常用
於復雜關系的建模或數據輸入與輸出之間存在非線性依賴關
系的場景。
。。。
目前,網絡安全方向的主要研究方向之一便是網絡安全文件關聯分析,根據
Anton Chuvakin 所說,他將安全文件關聯方法分為兩種,一種是以有關規則的關
聯作為基礎,一種以統計的關聯作為基礎[
5]。規則關聯的基礎要求某些攻擊的先
驗知識,但是有關統計性的關聯基礎不要求攻打先驗知識(至少不是主要的檢測
手段),而是參考正常邏輯和運用數學算法來進行關聯。一般情況下是將兩種關
聯算法混合使用以互相補充,提高關聯准確度。
利用告警屬性的類似程度來進行分析是現有的告警聚合分析的主要方法。
SRI 的 Andersson 等和 Valdes&Skinner 對告警屬性的相似度作為基礎的思想性
關聯分析,進而對系統提出了,網絡安全文件關聯分析系統是由極小匹配規則和
人為定義的安全事件間的概率相似度來構建的[
6]。Cuppens 等的研究中包含的
alert-clustering 有關的部分就運用了和屬性十分相似的聚合式方法,以此來實現
該目標。此方式的最大特色就是在進行相似告警聚類時效果很好,但是這類方法
也有一個很大的缺點,就是對相關告警之間的因果聯系不能有效的識別[
5]。為了
能夠對屬性相似和因果關聯這兩個方法結合使用,Debar 和 Wespi 就提出了一種
將這兩個方法同時用於入侵檢測系統的關聯分析中的方法,從而在一定程度上提
高了識別相關告警之間因果聯系的能力[
7]。
聚合過程雖然可以有效的減少告警數量,但是不能去除誤報和無效告警,然
而所有的誤報和無效告警都會對后續的關聯分析效果造成不便。因此,Morin 等
提出了一種形式化模型,以主機的系統類型、可能存在的漏洞等信息作為主要信
息進行告警關聯,在理想狀況下此方法可以對誤報進行准確的識別。另外有些研
究者還對某些漏洞信息進行了深入性的探究。
有關多步攻擊的關聯分析方法,學者們通過對攻擊之間的因果聯系進行分析
來完成多步攻擊的關聯分析。多步攻擊的關聯方法最早由 Templeton 等提出的,
通過比較先前發生攻擊產生的后果與后發生攻擊的前因進行關聯分析是該方法
的基本思想,這種方法可以高效地識別出兩個告警之間的因果關系,從而使得關
聯分析可以利用未知的攻擊場景[
8]。研究者們還提出了一種以告警的前提條件為
核心的告警關聯算法。隨后,美國北卡大學的 Peng Ning 等提出了一種方法,他
們依照告警提前條件的思維對這個方式進行了深入的分析[
9]。Cheung 等人對於
多步攻擊建模的 CAML 語言給予了提出。Cuppens 等也通過這種方法對其系統
進行了大量的改進。因果關聯關系定義過於困難和僅能關聯已有因果聯系的告警
這兩個缺陷導致這種方法並不完美,進行關聯分析時僅用該方法並不合理[
10]。
在國內,研究者們才剛剛開始對網絡安全文件關聯進行研究,很少能查到相
關的文獻與資料。其中,由陝西西交大的李輝等人提出了一種方法,其主要思想
是利用人為發現和機器配合使用進行告警的關聯分析[
11],並進行了實驗,但是理
想化的研究結果並沒能有效的在實際中進行應用。武漢華中科大的李家春對分級
告警的關聯分析技術在分布式的入侵檢測系統(IDS)中的應用進行了研究[
12]。
通過對國內相關資料的調查研究,我們得知大部分的論文都是憑借國外的技術,
目前國內有關的學術界還沒有在網絡事件的關聯分析技術上進行深入的探究以
及闡釋。
綜合上面所說的,最近幾年以來,國內外在安全網絡事件的關聯分析這一領
域的研究進度差距較大,國外已經在這一領域取得了明顯的成果,由於網絡安全
涉及到國家的利益,所以大多數大型的相關科研項目都得到其國家的大力支持。
而在國內,由於對該領域的研究才剛剛起步,還有很多問題需要深入研究解決,
所以,這一領域在近幾年將會作為一個主要研究點出現。
關聯分析技術分類
2.2.1 因果關系關聯方法
任何一個攻擊都不是單獨出現的,一般情況下,每一個攻擊的出現都是為后
面的攻擊做鋪墊或是前一攻擊的產物,最終,將達到攻擊的意圖。也就是說,每
一步攻擊都是整個攻擊中的某一步,這些攻擊之間有着一定的因果聯系。因果關
系關聯方法便由此產生。因果關聯方法最早是由 Templeton 等提出的,首先,他
們對攻擊進行建模,為每類攻擊定義它的前因和后果,然后,通過比較后發生攻
擊的先決條件和先發生的攻擊的結果,關聯這兩個告警信息[
16]。隨后,美國北卡
羅萊納州大學的 Peng Ning 等在這一思想的基礎上進行了深入和系統的研究。他
們提出了 TIAA 關聯分析方法,該方法也是通過事件的前因和后果之間的聯系進
行關聯性的闡釋[
17]。
經過對很多入侵案例的有關分析,我們能夠發覺,入侵常常可以分成四個階
段:
(1) 收集目標系統信息。
收集目標性的系統信息主要包括收集網絡拓撲結構、目標系統的 IP 地址、
端口號、操作系統的類型、和對系統進行漏洞掃描等。有很多方法可以進行系統
信息的收集,如可以利用掃描工具來獲得目標主機的操作系統版本等。
(2) 提升權限。
利用安全漏洞進行權限提升是目前流行的主要手段。近年來,安全漏洞出現
的速度驚人,對我們使用計算機產生了很大的危害。每一個漏洞都要通過廠家提
供相應的補丁,然后再將這些補丁安裝到目標主機,才能解決相應的問題,這需
要一個很長的時間過程。因此,很多人就在這段時間里,通過該安全漏洞進行入
侵。當他們完成信息收集以后,會對收集到的信息進行綜合分析,首先,對目標
主機上正在運用的程序進行分析,然后對該目標主機上的系統進行安全弱點掃
描,分析可以獲取的權限,和可以繼續加以利用的漏洞。
(3) 入侵和放置后門程序。
這一步主要包括的技術有緩沖區溢出、DDos、特洛伊木馬和網絡監聽等。
緩沖區溢出是指通過填充數據,使得數據越出緩沖區的邊界,從而造成原程
序的改變。有很多種方法可以造成緩沖區溢出,如棧溢出、堆溢出和靜態數據區
溢出等是根據填充數據溢出的緩沖區的位置,還有本地溢出和遠程溢出則是根據
緩沖區溢出漏洞的不同外部條件來進行的。
DDos 即拒絕服務攻擊,是一種通過大量合理的請求來占用服務資源,從而
使得合法用戶無法得到服務的攻擊方法。它主要是運用網絡上面已經被攻陷的電
腦作為“僵屍”,向着某一個特有的目標,向電腦發動密集式的“拒絕服務”需
求,用來將有關目標的網絡資源以及系統的資源消耗完,讓它不能向着正常的使
用者提供有效服務。來拒絕有關服務攻擊方式多種多樣性,包括針對 UDP 協議
的攻擊、針對 WEB Server 的多連接攻擊、針對 WEB Server 的變種攻擊、針對
游戲服務器的攻擊、TCP 全連接攻擊等[
18]。
特洛伊木馬是一種后門程序,它可以秘密潛伏在計算機中,從而可以通過遠
程網絡進行有效控制。控制者能夠經過被木馬感染的計算機來得到使用者的個人
信息,從而達到盜取各種資料的目的。特洛伊木馬和病毒相似,具有很強的隱蔽
性,很難被用戶發現。
目前,常見的木馬包括 SUB7、BO2000、冰河等,打開 TCP 端口監聽和寫
入注冊表啟動是它們主要的控制方式。
通過網絡監聽可對網絡狀態、數據流、網絡上的信息傳輸進行監聽。因此,
控制者可以使用網絡監聽的方式來截獲用戶上傳的數據流,其中可能包括用戶的
各種賬號和密碼、機密文件等信息。為了防范網絡監聽,首先要確保以太網的整
體安全性,其次,一個很好的辦法是采用加密手段,即使竊取了數據但不知道如
何解密也是無用的,還有一種方法便是使用交換機,由於交換機是工作在第二層,
而不像 Hub 一樣在第一層工作,因為二層設備很少用到廣播報文,所以大大的
降低了被竊取的可能[
19]。
(4) 入侵后的現場處理。
主要的處理便是清理或修改日志文件,以便隱藏攻擊痕跡,從而達到隱蔽的
效果,為日后再次入侵做准備。
綜上所述,我們可以知道,入侵攻擊的每一步必然不是孤立的,一個完整的
攻擊步驟一定存在着因果關聯關系。比如可以通過 IPSweep 攻擊與 Portscan 攻擊
之間存在的因果關系來研究警告的因果關系,因為前者能夠發現那些網絡上的主
機能夠被訪問,后者能夠發現這些能夠被訪問的主機中哪些在向外提供信息,運
用本地或遠程緩沖區溢出攻擊可以使得攻擊者獲得不合法授權的訪問權限,或者
得到一定權限的 shell,安裝后門程序為以后再次進行入侵系統提供了方便。正
是由於警告之間具有這樣的因果關系,所以可以通過這樣的因果關系來判斷警告
數據的關聯性。
2.2.2 交叉關聯方法
交叉關聯方法是由 O.Dain 和 R.Cunningham 等人在 2001 年提出的。它的主
要原理是利用告警信息與網絡環境里面的全部主機的破綻掃描成果、網絡拓撲構
造,並通過安全策略與網絡全部資料的結合分析,就能夠較為准確的得到警告信
息的成功率,從而判斷影響程度,通過這一系列的操作來達到區分真實威脅,並
最終去除誤報的目的。
交叉關聯方法有六個步驟:
(1)目標掃描。通過目標掃描就能夠了解到警告信息中的目標系統存在怎樣
的系統漏洞,了解系統類型、IP 地址等等為后續工作服務。
(2) 攻擊類型的判斷。通過警告信息,結合目標掃描結果來尋找攻擊的類型,
並且需要對相應的攻擊類型進行網絡依賴性判別。
(3) 通過步驟 2 得到匹配結果,輸入結果並得出貝葉斯網絡條件的概率值,
然后把安全專家根據經驗知識設定的條件概率表作為基礎,攻擊成功的條件概率
我們可以通過計算貝葉斯網絡條件的概率值得出,這個值就是這條告警的可信
度。
(4) 在系統運行過程中,安全規則可以由網管進行一個動態的改變,在不同
的時間段內有着不同的應用規則,而特定的 priority 就是特定的源地址、端口達
到確定地址、端口產生的特定攻擊造成的[
33]。如果告警和這個安全規則相匹配,
則將這規則的嚴重度用這條告警的嚴重度(priority)值設定來表示。如果沒有匹
配的,就將告警本身的嚴重度設定為該規則的嚴重度值。
(5) 在同一網絡中的各個不同的主機、服務器等,在全部網絡的順利運行中
必然有着不相同的價值和重要程度。一般采用 asset 值來對這樣一些資產進行重
要性的衡量與判別,並且 asset 值可以根據實際需要有管理員在繼續設置,且不
同的主機或網絡可以有不同的 asset 值能進行靈活控制。在告警沒有找到與其相
對應的 asset 值的時候,我們就將其默認設定為 1。
(6) 交叉關聯的最終目的就是判斷出告警的威脅程序,而這個告警的威脅程
序主要是由該告警的風險值 risk 來確定的。風險值 risk 的確定主要是通過前幾步
中得到的可信度、嚴重度和 asset 值來計算的。
在不同的實際網絡環境中,有可能得到相同的告警,這就使得使用交叉關聯
這種方法有了很高的必要性。此外,可以通過設置筏值的方法對信息進行一定的
過濾,這就是交叉關聯數據過濾必須要使用的過濾方法;並且通過過濾后還能夠
把一些原本瑣碎,但具有一定威脅的信息重新進行關聯分析,這樣就能夠集中精
力來應對有一定威脅的警告。
[5]A. Valdes, K. Skinner. Probabilistic alert correlation[A]. presented
at Proceedings of the IEEE.2010.4.16.
[6]C. Kruegel and W. Robertson, Alert Verification: Determining the
Success of Intrusion Attempts[R], presented at Proc. First Workshop
the Detection of Intrusions and Malware and Vulnerability Assessment ,
2010,07: 1-14.
[7]K. Calvin, Fink, George, Levitt, Execution Monitoring of
Security-critical Programs in Distributed Systems: A
Specification-based Approach[R], In Proceedings of the 2009 IEEE
Symposium on Security and Privacy, 2009:134-144.
[8]S. Kumar, H. Spafford. A Pattern-Matching Model for Intrusion
Detection[R]. Proceedings of the national computer security
conference, 2010,11-21.
[9]P. Ning and D. Xu. Hypothesizing and reasoning about attacks missed
by intrusion detection
systems[R]. ACM Transactions on Information and System Security, 2010,
1-34.
[10]李輝,韓崇昭,鄭慶華.一種基於交互式知識發現的入侵事件關聯方法研究
[J].計算機研究與發展, 2010: 191-198.
[11]李家春,李之棠.神經模糊入侵檢測系統的研究[J].計算機工程與應用,
2011:37-38.
[12]李家春,李之棠.入侵檢測系統[J].計算機應用研究, 2011:5-9.
2.2 安全事件關聯分析方法
在過去的幾年中,研究人員和供應商共同努力下提出了許多關於降低警報冗
余性的相關方法。盡管如此,隨着網絡攻擊的日趨多樣化以及網絡安全的要求日
益嚴格,傳統的關聯方法仍然存在很多問題。國內外學者仍然嘗試從不同的角度
完善安全事件關聯分析技術,使之可以更好的應用到實際網絡態勢系統中。通過
學習已有研究方法,根據所使用的相關算法模型對提出的不同技術進行分類,主
要可以概括為三個類別:基於相似度,基於攻擊順序和基於多源知識集成的方法。
下面針對每一類闡述設計思路以及研究現狀。
2.2.1 基於相似度的關聯方法
基於相似性的技術旨在通過使用警報間的相似性進行聚類以此來減少警報總
數。通過探測器生成的警報都有若干屬性和字段,如警報生成時間、IP 地址、IDS
名稱、報警信息描述、攻擊分類等。相似警報是指由相同攻擊觸發,由不同 IDS
監測並產生的一類警報。相似性計算方法的差異的是影響關聯分析的主要因素。
為了提高關聯的性能,許多研究者提出了不同的相似性策略。例如為每個屬性定
義一個合適的相似度函數,因為屬性在相關過程中可能有不同的權重和影響。屬
於相似性關聯方面的技術具有很多優點[19]。首先,它們通常用比其他類別的復雜
度更小的輕量級算法來實現,主要是因為這些算法僅僅基於簡單的邏輯比較。其
次,這個類別已經證明了它在減少警報總數方面的有效性,這是關聯過程中的一
個重要步驟,因為通常原始 IDS 會向網絡管理員報告大量的警報。但是,這些技
術也有共同的弱點,那就是他們只是在屬性層次上工作,不能檢測到警報之間的
因果關系,從而發現問題的根源。基於相似性的相關技術可以分為兩類:基於屬
性信息和基於時間信息。下面分別介紹兩種方法的設計思路。
基於屬性信息的關聯技術通過使用某些屬性或特征之間的相似性來關聯警
報,常用的屬性如互聯網協議地址、網絡協議、攻擊分類等。通過將定義好的屬
性通過合適方式量化后,就可以使用計量函數來度量相似性,例如歐式距離、余
弦相似性、交叉熵以及漢明距離。得到的分數與閾值進行比較,從而確定這些警
報是否相關。選擇適當的相似性度量函數將會增加相關性的整體性能,使用不同
的度量方式警報間的距離會有差異。Siraj 等人在不同屬性的抽象層次的中給出了
不同的相似度分數[20]。與其他方法不同的是該方法除了考慮屬性的字符串層次的
相似度,還考慮了字段實際意義層次的相似度。 例如,假設兩個警報 A 和 B 具有
相同的 IP 地址,匹配將處於最高等級相似度並給出 4 分。但是,如果它們具有不
同的 IP 地址,則匹配被檢查到更高級別,考慮子網級別。如果它們具有相同的子
網,則匹配分數將是 3,等等。Lee 等人使用類似的方法[21]。此外 Valdes 他們使用
基於歐幾里德距離的相似性度量來計算兩個警報之間的相似度值並進行聚類。他
們應用這種技術來檢測 DDoS 攻擊[9]。Zhuang 等人使用了三種相似性度量機制來
決定兩個警報是否需要匯總[22]。這些機制是按字母,按位和最大值比較,分別應
用於三個不同的屬性,警報標識符,IP 地址和端口相似性。這樣做的好處是可以
根據不同屬性字段選擇最佳的比較方法,具有更好的靈活性和實用性。
基於時間信息的關聯技術通過利用警報產生的時間隔來判定一組警報是否有
關聯關系。該方法的假設是在攻擊發生后的短時間內可能觀察到由相同攻擊引起
的若干警報,這些警報來自於不同 IDS。時間警報關聯的主要優點是通過時間一個
維度的屬性確定是否相似。但是,確定是事件間隔是固定的,這限制了關聯算法
的適用性,而且在大規模環境中可能在某一個時刻有大量攻擊發生,所以僅僅依
靠時間屬性規約顯然不合理[23,24]。
2.2.2 基於攻擊順序的關聯分析方法
網絡安全事件之間往往不是獨立的個體,通常一個攻擊場景由若干子攻擊事
件組成,而且這些子攻擊事件之間存在並列或者前置后續等關系,所以可以使用
構建邏輯公式對攻擊場景進行表達。屬於同一個攻擊場景的警報可以進行歸檔合
並。常見順序關系可以細分為幾個主要類別:前置后續條件,攻擊圖,神經網絡
和其他技術[25]。下面介紹一下有代表性的研究者的研究成果。
基於前置/后續條件的關聯。在這個類別中,相關過程試圖通過他們的前置和
后續條件來找到警報之間的因果關系。這種方法試圖通過鏈接作為同一攻擊的各
個步驟來重建一些復雜的攻擊場景[10,21]。攻擊規則的建立可以通過一階邏輯或一
些攻擊建模語言,如 LAMBDA [26]來實現。
基於馬爾科夫模型的關聯分析技術,將報警信息使用模型中的離散狀態來表
示,報警狀態之間的轉換使用狀態轉移概率矩陣來表示。使用馬爾科夫模型用於
安全事件關聯分析可以有效預測多步攻擊的下一步攻擊動作,已有研究展示了較
好的關聯效果。基於馬爾科夫的相關系統具有相同的優點,但是同樣的缺點是需
要手動設置多個概率參數和閾值,並且需要大而合適的訓練數據集,而且通常無
法借助已知攻擊檢測未知的攻擊。OB Fredj 等人提出了一種基於圖結構的報警關
聯系統[27],他們的方法基於兩個基本模型:吸收馬爾可夫鏈和圖。吸收馬爾可夫
鏈模型被用來定義在達到一些攻擊目標之前根據給定情景從一個攻擊行為轉移到
另一個攻擊行為的概率,能夠進行自適應和精確的攻擊識別。該方法使用吸收馬
爾可夫鏈模型來定義每個多步攻擊的初始狀態和目標以及狀態之間轉移的概率,
較其他傳統的基於馬爾科夫模型關聯分析的最大特點是概率是實時自動推導獲
得,不需要任何預先知識。性能分析表明,該系統可以將大量警報(超過 442 000
條警報)關聯到幾十個攻擊圖中。
2.2.3 基於多源知識集成的關聯分析方法
單一的數據源技術指關聯的數據來自單一入侵檢測源,此工作的優點是快速、
簡單,不足是他們僅僅在報警一個維度做文章,沒有考慮其他維度的重要信息,
所以很難發現攻擊的真實目的。最新的關聯相關研究都是基於多源信息的報警關
聯,意味着要同時使用多源輸入來獲得更高的准確率。很顯然,使用多個輸入源
獲得較好結果的同時提高了關聯分析的復雜度。Zhang J 等人提出了一個新穎的方
法,使用網絡安全指標(NSIS)來評估網絡安全態勢[28]。NSIS 包括基礎維指數、
脆弱維指數、威脅維指數以及綜合指數。每一個維度的指數都重點關注一個方面
的安全領域,並且給出了如何詳細計算指標值的方法。Y Zhang[29]等人介紹了一種
簡單的數據融合技術,通過收集大量原生安全數據,包括一個標准評估數據集,
威脅數據集,漏洞數據集,以及網絡基礎維數據集。他們分析了不同數據源之間
的關系,並且分析了影響網絡安全的安全事件。通過相關關聯分析技術來分析該
些安全事件之間的關系。J chang 等人提出了 MS2IFS[30]系統,使用了來自例如 Snort
IDS、Ossec IDS 、Nessus 等產生的警報信息,還考慮了漏洞信息。上述多源信息
融合報警關聯研究時間相對較早,雖然綜合了若干方面的安全態勢知識,但是仍
然沒有統一的安全知識庫模型,關聯方法缺乏一定的可擴展性。
[19] Salah S, Maciá-Fernández G, DíAz-Verdejo J S E. A model-based survey of
alert correlation techniques[J]. Computer Networks, 2013, 57(5): 1289-1317.
[20] Siraj A, Vaughn R B. Multi-level alert clustering for intrusion detection sensor
data[C]//Fuzzy Information Processing Society, 2005. NAFIPS 2005. Annual Meeting
of the North American. IEEE, 2005: 748-753.
[21] Lee K, Kim J, Kwon K H, et al. DDoS attack detection method using cluster
analysis[J]. Expert Systems with Applications, 2008, 34(3): 1659-1665.
[22] Zhuang X, Xiao D, Liu X, et al. Applying data fusion in collaborative alerts
correlation[C]//Computer Science and Computational Technology, 2008. ISCSCT'08.
International Symposium on. IEEE, 2008, 2: 124-127.
[23] Ahmadinejad S H, Jalili S. Alert correlation using correlation probability
estimation and time windows[C]//Computer Technology and Development, 2009.
ICCTD'09. International Conference on. IEEE, 2009, 2: 170-175.
[24] Ma J, Li Z, Li W. Real-time alert stream clustering and correlation for
discovering attack strategies[C]//Fuzzy Systems and Knowledge Discovery, 2008.
FSKD'08. Fifth International Conference on. IEEE, 2008, 4: 379-384.
[25] 琚安康, 郭淵博, 朱泰銘, 等. 網絡安全事件關聯分析技術與工具研究[J].
計算機科學, 2017 (2): 38-45.
2.1.3 幾種常見的網絡安全關聯分析技術
網絡安全關聯分析通過將來自於具有不同功能、不同設備的各種網絡安全檢
測工具所產生的各類報警信息進行統一格式、綜合分析,挖掘確定出真正的網絡
攻擊事件,該技術是網絡安全監控的重要部分。網絡安全關聯分析技術發展至今,
主要分為以下幾種。
2.1.3.1 基於聚類分析的網絡安全關聯分析技術
基於聚類分析的網絡安全關聯分析技術,通過分析由同源進行觸發的網絡安
全信息和事件攻擊特征,並對這些信息進行相似性觀察,再根據適當的假想設定,
如相似網絡安全信息源於相同或者相似根源等,為報警提供了一個統一的數學模
型,從而挖掘出網絡安全信息之間的關系,識別攻擊場景。此類技術的關鍵是衡
量各種相似性,包括網絡安全信息之間的相似性、基於特征的相似性、警報與警
報間的相似性、警報與安全策略之間的相似性、警報與被保護主機網絡軟硬件和
網絡條件之間的相似性等[
19]。
Alfonso Valdes[
20,21]提出了基於特征相似度的概率聚類技術分析方法。此類方
法的主要思想是計算並將各個網絡安全信息相似度進行比較,來判定新產生告警
的聚類歸屬。包括定義特征相似函數、特征最小相似度、特征相似期望、報警相
似度閾值域以及計算報警相似度等。報警信息的共同特征包括攻擊的類型、攻擊
主機、被攻擊主機、主機端口、發生時間等。
1991 年 Cai,Cercone 和 Han[
22]首次提出了面向屬性歸納 AoI(Attribute—
Oriented Induction)方法。
此類方法的網絡安全關聯分析技術,在相似性標准參數(比如最小相似度和
報警相似度閥值)取值恰當的前提條件下,可以較好地實現對於網絡安全事件信
息的有效、正確地聚集與關聯這個目的。然而如果相似度僅由單一的配置參數確
定,則很難全面反應各告警之間的關系[
23]。另外,這項技術在使用過程中得到的
效果水平,要嚴重依賴於使用者所掌握安全知識的程度。
2.1.3.2 基於攻擊場景的模式識別關聯分析技術
基於攻擊場景的模式識別關聯分析技術的主要思想是,預先定義好攻擊場景
模式,通過將這些場景模式和網絡安全信息序列(這些序列是描述實際發生的網
絡安全事件的)進行匹配,從而來識別序列中的網絡安全信息之間的關系,並分
析出網絡中發生的實際攻擊場景及其目的。
研究攻擊過程發現,一次完整的攻擊過程通常可以分為五個步驟,包括:目
標主機的信息收集、目標主機漏洞的探測、用戶權限的獲取、攻擊破壞進行、攻
擊痕跡清除處理。因此,可以對同屬於某一個攻擊場景的報警信息進行關聯分析。
攻擊場景的建模問題是該類技術需要解決的核心和基礎問題。比較常用的攻
擊場景建模手段有以下幾種:原子模型方法,自動機方式,建立時序邏輯模型,
專家系統以及對上述模型的擴展與演變等。目前,基於模式識別技術大量運用於
很多旨在分析網絡安全信息間關系的研究領域。
采用原子模型方法[
24]的主要思想是,提前構建好攻擊場景和可信度,每當接
收到一個攻擊事件,就與攻擊場景進行關聯匹配分析,並根據已有的可信度值對
該攻擊步驟中該攻擊場景的可信度值進行確定。某一攻擊事件一旦被歸入到一個
攻擊場景中,就不會再進行改變。最后會進行閥值判斷,進一步確定該攻擊場景
是否已經發生,並根據這些來產生攻擊告警。
Richard Kemmer 和 Giovanni Vigna[
25]領導的 STAT 項目組則是自動機建模方
式的代表,提出了基於狀態轉移圖的關聯分析方法[
26,27],基於高層狀態轉移圖對
安全事件入侵模式進行表示和分析。
Benjamin Morin 和 Herve Debar 是時序邏輯模型的代表,他們提出了一種基
於 時 序 模 式 識 別 的 攻 擊 場 景 識 別 技 術[
28]。 時 序 模 式 識 別 技 術 (Chronicle
Recognition)的主要思想是按照一定的時序邏輯推理方法,將輸入的時序信息流與
時序模式規則進行匹配,從而能夠按照預定義的時序模式對時序流中的網絡安全
信息進行關聯,並識別出符合預定時序模式的輸入信息流。
Christopher Kruegel 和 Thomas Toth[
29]的 P2P 攻擊場景識別技術是基於模式圖
識別的。具體實現上該技術采用了樹形的攻擊場景模式來對每一個可能的攻擊場
景進行建模,使用樹形規則描述這些場景,關聯過程中,關聯引擎會基於這些規
則進行安全事件的關聯分析。在規則樹中,每一個結點都會對應某一條關聯規則。
關聯引擎會把一段時間內接收到的已統一格式的安全報警從樹的根節點到葉子節
點依次進行匹配。只要規則沒有超時,那么規則匹配地越是接近葉子節點,則這
個攻擊場景就越可能會成功。
基於攻擊場景的模式識別技術關聯分析技術,在明確地分析出各個網絡安全
信息之間的關系上具有很大優勢,但是也並不是完美的,比如無法識別出未知的
攻擊場景,無法窮舉攻擊場景、較難識別人類攻擊者的復雜性、不確定性和不可
預期性攻擊。
2.1.3.3 基於網絡安全事件因果關系的關聯分析技術
網絡安全事件存在固有的因果關系是基於網絡安全事件因果關系的關聯分析
技術的理論基礎,通過這種固有的因果關系的關聯,可以將這些描述網絡安全事
件的網絡安全事件較好地關聯起來,接下來就可以形成攻擊場景圖,在攻擊場景
圖中描述了各個網絡安全事件之間的關系。具體實現時,會逐個尋找並分析一個
攻擊事件的前因與另一個攻擊事件的后果之間是否存在邏輯聯系,如果它們之間
存在着聯系,就能表明這兩個攻擊事件之間存在關聯[
30]。
基於因果關聯技術進行實現的有:Peng Ning 領導的 TIAA 項目[
31]、 ONERA
的 Frederic Cuppens 領導的 MIRADOR 項目[
32]、 UCDavis 的 Steven Templeton 和
Karl Levitt 領導的 JIGSAW 項目[
33]。
Ning[
34]和 Cuppens
[35]則是使用關聯規則來表示攻擊場景,基於謂詞對每種類
型攻擊進行編碼,用於進行攻擊前提和結果的描述。
基於網絡安全事件因果關系的關聯分析技術,較好地利用了攻擊序列之間存
在的前后因果關系[
23],如何實時高效地在線分析、攻擊場景的缺損和攻擊場景的
高噪聲則是需要克服的問題。
2.1.3.4 基於序列模式的關聯分析挖掘方法
序列模式挖掘[
36]是指挖掘頻繁場景,也就是挖掘相對的時間窗口內或者是在
其它的模式中出現的某些頻率較高的模式。經過序列模式的挖掘[
37,38],發現了攻
擊事件之間的理論上的有價值的關聯模式:
1.發現基於特征的攻擊方式的場景:來自同一攻擊源的攻擊事件在一個攻擊
場景中,如果只是攻擊的目標不同但是告警序列相同,通常這樣的攻擊場景可以
表明該攻擊者在使用同一攻擊方式或者同一種工具對不同的目標進行攻擊;
2.發現場景規則:分析已發生的攻擊事件,可以對攻擊者的行為進行預測,
從而采取適當的措施進行防御;
3.對合法的系統操作行為進行過濾:異常並不一定意味着入侵,對非入侵行
為進行建模,對其所產生的類似攻擊事件進行單獨的預處理,這樣可以減少挖掘
過程的負擔。
序列模式挖掘方法存在的缺點是:方法的自動化程度較低;其產生的攻擊場
景相對難以理解,定位操作會花費很長時間,因而需要尋找到實用性更強的的報
警序列模式挖掘算法[
39]。另外,基於該算法可以進行拓展,用於進行報警信息的
關聯分析。
2.1.3.5 基於網絡安全信息統計因果關系的關聯分析技術
基於網絡安全信息統計因果關系的關聯分析技術的基本思想是,網絡安全事
件之間存在的某種統計因果關系能夠把不同的網絡安全信息關聯起來,因此可以
通過統計因果分析當前的網絡安全信息流,從而識別出網絡安全事件間的因果關
系。
Xinzhou Qin 和 Wenke Lee 提出了一種 Granger Causality Test(GCT) [
40]的算法
來關聯網絡安全事件。該算法用統計函數來計算兩個時序事件的 Granger Causality
Index(GCI)值,並將該值與 Fisher 分布的特定值進行對比,從而確定出這兩個時序
事件之間的統計因果關系。 (靠譜???)
基於網絡安全信息統計因果關系的關聯分析技術具有很強的技術創新和突
破,它的出現給網絡安全關聯分析技術的發展開拓了一個新的方向。然而該技術
本身發展得並不成熟,其有效性還有待時間的檢驗。
2.1.3.6 基於過濾器的關聯分析方法
基於過濾器的關聯分析方法[
41]的主要思想,是把網絡安全事件和主機的脆弱
性(即漏洞)、主機的資產進行關聯分析。其理論來源是,當發生一個針對某個
主機漏洞進行的攻擊時,如果該主機恰好具有該漏洞,或者是當發生一個針對某
類資產的服務進行的攻擊時,如果該服務恰好運行了符合這次攻擊的軟件版本,
那么,我們就可以認為該攻擊真實發生了。
此算法的優點是能過濾掉大量的虛假警報,其缺點是對網絡安全事件之間的
關系缺乏進一步關聯。
[19] 羅寧,喻莉.入侵檢測技術研究發展[J].計算機與數字工程,2005,33(6):52-57.
[20] Alfonso V, Keith S. Probabilistic Alert Correlation[C]. Proc. of the 4th
International Symposium on Recent Advances in Intrusion Detection.
Springer-Verlag, 2001.
[21] Valdes A., Simmer K. Probabilistic Alert Correlation. In: 4th Workshop on
Recent Advances in Intrusion Detection(RAID), LNCS, Springer Verlag,
2001:54-68.
[22] Cai Y,Cercone N,Han J.Attribute-Oriented induction in relational database.
In:G.Piatetsky-Shapiro and W.J.Frawley.eds.Knowledge Discovery in Database,
Cambridge,MA:AAAI/MIT Press,1991.213~328
[23] 楊智君,田地,馬駿驍等.入侵檢測技術研究綜述[J].計算機工程與設計,2006,
27(12):2119-2123,2139.
[24] Chenfeng Vincent Zhou, Christopher Leckie, Shanika Karunasekera. A survey of
coordinated attacks and collaborative intrusion detection. Computers &
Security,29(2010):124-140.
[25] Fredrik Valeur, Giovanni Vigna, Christopher Krügel, Richard A. Kemmerer: A
Comprehensive Approach to Intrusion Detection Alert Correlation. IEEE Trans.
Dependable Sec. Comput. 1(3): 146-169 (2004).
[26] Porras P AA.Penetration state transition arialysis l^rule basedintrusion detection
approach[c].Proceedings of the Eighth AnnnalComputer Security Applications
Conference,1992.220-229.
[27] An extensible stateful intrusion detection system[EB/OL]. http://www.ca.
ucsb.edu/kenun/NetSTAT/dor/indeLhtml. 2005.
[28] Benjamin M, Herve D. Correlation of Intrusion Symptoms: An Application of
Chronicles[C]. Proc. of the 6th International Symposium on Recent Advances in
Intrusion Detection, Pittsburgh, PA. USA: Springer-Verleg, 2003.
[29] Christopher K, Thomas T, Clemens K. Decentralized Event Correlation for
Intrusion Detection[D]. Technical University of Vienna Information Systems
Institute, 2002.
[30] 張翔,胡昌振,尹偉等.基於事件關聯的網絡威脅分析技術研究[J].計算機工程與
應用,2007,43(4):143-145.
[31] Peng N. Techniques and Tools for Analyzing Intrusion Alerts[J]. ACM Trans. on
Inf. Syst. Secur., 2004, 7(2): 274-318.
[32] Frederic C, Alexandre M. Alert Correlation in a Cooperative Intrusion Detection
Framework[C]. Proc. of IEEE Symposium on Security and Privacy, Oakland,
California, USA, 2002.
[33] Steven T, Karl L. A Requires/provides Model for Computer Attacks[C]. Proc. of
Workshop on New Security Paradigms. Ballycotton, County Cork, Ireland, 2000.
[34] Ning P.Cui Y.An intrusion alert correlator based on prerequisites of intrusions:
[Technical Report TR-2002-01].North Carolina State University.Department of
Computer Science,2002.
[35] Cuppens F,Miege A.Alart correlation in a cooperative intrusiondetection
framework.In:Proc.of the 2002 IEEE Symposium onSecurity and Privacy,2002.
[36] Mannila H., Toivonen H., verkamo A. Discovering frequent episodes in sequences.
In: proc. of the 1st intl. conf. on knowledge discovery in databases and data
mining, Montreal, Canada, Aug. 1995.
[37] Julisch K. Mining A1arm Clusters to Improve Alarm Handling ef-ficiency. In:
17th Annual Computer Security Applications Conf.(ACSAC), Dec. 2001.12~21.
[38] Julisch K., Dacier M. Mining intrusion detection alarms for actionable knowledge.
[39] Wespi A., Dacier M. An intrusion-detection system based on the Teiresias
pattern-discovery algorithm. EICAR In: Proc. 1999.
[40] Qin Xinzhou , Lee Wenke. Statistical Causality Analysis of INFOSEC Alert
Data[C]. Proc. of the 6th International Symposium on Recent Advances in
Intrusion Detection, Pittsburgh, PA, 2003.
目前,網絡安全事件關聯主要有漏洞掃描、聚合分析,因果關聯分析、基於
統計的關聯和安全事件嚴重度分析等。
等提出了一種形式化模型考慮信息源包括被檢測系統的描述、
漏洞信息、檢測工具的有關信息以及被觀測事件的信息來對告警進行關聯,這種
方法在理想狀況下能有效識別誤告警。還有一些研究者提出利用漏洞分析信息來
進行告警確認的方法一。然而關於該方法的研究尚未深入,難以整合到完整的
關聯分析過程中,並且這種方法依賴於對受保護網絡的早期漏洞分析結果,無法
適應動態的告警確認。
聚合分析目前主要采用基於告警屬性相似度的計算方法。的
等【和一在項目中用手工定義的入侵事件間概率相似度和
極小匹配規則來構建安全事件關聯分析系統。等【」和在文獻
【一中同樣用到了相似度計算的方法。等在法國國防部的科研項目
中的告警聚合部分也使用了類似的方法。這類方法的優點是在對相似
告警進行聚類時非常有效,能夠有效地合並相似度很大的告警,缺點是不能充分
發掘出相關告警之間的因果關系,並不能把屬於不同種類卻之間存在着某種聯系
的兩種告警有效地關聯起來。和』提出的用聚類和關聯兩種方法
用於報警的關聯分析,綜合考慮了相似性和因果兩種關系,部分解決了該
問題。聚合過程能有效的減少告警數據量,但是不能去除誤告警和無用告警,而
這些多余告警會對后續的關聯分析過程產生很大的影響【。
為了挖掘告警間的因果關系,研究者們提出了通過分析攻擊間因果關系的方
法來進行多步關聯分析。該方法最早由介等根據〔一提出。隨后,美
國北卡羅萊納州大學的即等【一根據這一思想對該方法做了深入和系
統的研究,全面提出了基於先決條件的網絡安全事件關聯,將告警表示為用三元
組,提出了基於三元組的知識表示的關聯算法和攻擊場景構建技術。等
提出了語言用於多步攻擊建模。等也利用這一方法對
系統做出了改進〔。而這種方法的缺陷就在於因果關系的定義太過
復雜且只能關聯存在因果關系、的告警,因此不適合在關聯分析過程中單獨使用。
另有一些研究利用己知的攻擊場景和從現有的數據集中挖掘出來的知識進行安
全事件關聯分析。的等提出了使用專家知識庫進行關聯分析
的方法,該方法已經用於的事件關聯分析系統中。等〔
對該方法中的規則生成過程進行了優化。和【川提出了基於資
料挖掘的方法,並通過實驗比較指出數據挖掘方法優於原始匹配方法和啟發式關
聯方法。
在統計方面,佐治亞理工學院的、等利用時間序列之
間的統計關系對安全事件做關聯分析「中科院計算所的肖政等利用分
類器對告警進行聚類【。
在安全事件嚴重度分析的研究方面,公司的等在
項目的研究中提出了基於一的事件優先級計算方法。
國內,西安交通大學的李輝博士等提出了一個基於人機交互式知識發現的入
侵事件關聯方法毛〕,華中科技大學的李家春博士對分布式入侵檢測系統中分級
告警關聯技術進行了研究【一〕,提出了一種基於改進增量貝葉斯分類器的概率
關聯方法。根據文獻情況來看,國內大部分的工作者都側重於介紹國外的方法和
技術,並沒有關於新的關聯方法的探討,網絡安全事件關聯分析方法上還未有足
夠深入的研究。
參考文獻見《網絡安全事件關聯引擎的研究與設計》附錄部分
探針每天要從網絡上收集到成千上萬的事件,如果對這些海量的事件信息不
加任何處理就直接報告或生成報警,這種做法是沒有意義的。而在報告之前通過
關聯分析可以將這些成千上萬的事件進行濃縮並確認成數十個甚至數個事件,以
一種智能的方式將這些復雜而抽象的海量事件轉化成我們可以理解的警告。
網絡安全事件關聯分析能將不同功能的網絡安全檢測工具產生的報警信息進
行綜合統一、去偽存真,從而挖掘出真正的網絡攻擊事件,是網絡安全監控的重
要部分。關聯分析技術發展至今,歸納起來主要有以下幾種:
1. 基於特征相似的概率關聯方法[
3]
利用報警信息特征的相似性來解決該問題,其方法描述如下:
(1) 定義特征相似函數。即對報警信息的共同特征(如攻擊主機、被攻擊
主機、攻擊的類型、發生時間等)分別定義相似函數;
(2) 定義特征相似期望。相似期望表示的是對報警信息特征相似的先驗期
望,這個相似期望的大小依賴於特定上下文。因為不同的特征對於報警信息是否
整體相似的作用是不一樣的,所以采用不同特征的相似度的加權值來計算整體相
似度。
(3) 定義特征最小相似度。如果某特征的相似度小於最小相似度,則兩條
報警信息的該特征不具有相似性。
(4) 定義報警相似度閾值域。如果兩條報警信息的相似度不包含在相似度
闊值域,則兩條報警不相似。
(5) 計算報警相似度。
基於此方法的網絡安全關聯分析技術在最小相似度和相似度閾值域取值適當
的情況下能夠較好地實現對網絡安全事件信息的有效聚集和關聯。但是由於這些
取值是由用戶自行調整的,因此該技術在使用中其使用效果嚴重依賴於使用者所
掌握的安全知識。
2. 基於攻擊場景構建的關聯方法[
4][5]
通過對攻擊過程的研究發現,一次完整的攻擊過程通常經歷五個步驟,即:
目標主機信息收集、目標主機漏洞探測、用戶權限獲取、實施攻擊破壞、攻擊痕
跡清除。因此,同屬一個攻擊場景的報警信息可以進行關聯分析。
采用原子模型方法[
6]:每從 NIDS 接收到一個攻擊事件,就與經構建的攻擊場
景進行關聯分析,即計算該攻擊事件是否屬於已知攻擊場景,並根據預先設定的
可信度值確定在這個時間點上該攻擊場景的可信度值。一旦改攻擊事件歸為一個
攻擊場景,就不再改變。最后通過設定閾值來判斷,改攻擊場景是否發生,並因
此產生攻擊警報。其缺點是:由於場景的分配基於原子模型,一旦一個攻擊場景
出錯,就會影響到后續報警信息的關聯,因此該方法需要在減少錯誤場景創建上
進行改進。
Benjamin Morin 和 Herve Debar 提出了一種基於時序模式識別的攻擊場景識
別技術[
7]。所謂時序模式識別技術(Chronicle Recognition)是指按照一定的時序邏輯
推理方法基於一定的時序模式規則對輸入的時序信息流進行匹配,從而將網絡安
全信息按照預定義的時序模式進行關聯並識別出符合時序模式的輸入信息流。時
序模式識別技術對自動機技術而言的優勢在於它能夠靈活地描述事件間的時序關
系並能夠隨着時間的推移自動地取消對一些不可能成立的時序模式的識別。
Steven Cheung 等提出了一種基於專家系統的攻擊場景識別技術[
8]。改方法主
要是將攻擊場景描述為一些模塊,每個模塊代表了一個攻擊場景,攻擊場景由一
系列攻擊子場景和攻擊事件組成。當攻擊子場景或事件滿足一定的約束條件則認
為特定的攻擊場景已發生並形成一個描述該攻擊場景的報警。
3. 面向屬性歸納的概念聚類方法
由 Cai, Cercone 和 Han[
9]於 1991 年首次提出的面向屬性歸納 AOI(Attribute—
Oriented Induction),它是數據概化的一種方法。概念聚類[
10][11][12]依據對對象的概
念描述從而形成聚類簇,一般分兩步進行:首先發現合適的簇,其次形成對每個
簇的描述。
概念聚類主要優點是:①通過對聚類簇的可理解性描述,方便了聚類解釋;
②概念聚類擅長於處理類別屬性特征數據,例如 IP 地址、端口號和報警類型等。
AOI 首先是作為一種數據總結技術被提出,后來建立起與概念聚類之間的聯系
[12][13],成為概念聚類的工具。
4. 序列模式挖掘方法
序列模式挖掘[
15]是指挖掘在相對時間或在其他模式中出現頻率高的模式,即
頻繁場景。通過序列模式的挖掘[
11][12],從理論上發現了攻擊事件間的有價值的關
聯模式:①發現攻擊方式的特征場景:如在一個攻擊場景中,來自同一攻擊源的
攻擊事件,如果攻擊目標不同但是報警序列相同,通常這樣的攻擊場景表明攻擊
者使用同一攻擊方式或者工具在對不同目標進行攻擊;②發現場景規則:通過對
已發生的攻擊事件的分析,可以對攻擊者的行為進行預測,並可采取適當措施防
御;③對合法系統操作引起的操作行為進行過濾:異常並不一定意味着入侵,因
此,對非入侵行為所產生的攻擊事件進行預處理,可以減少分析的負擔。
該方法的缺點是:自動化程度較低;產生的攻擊場景難以理解,定位操作很
耗時,需要尋找更實用的報警序列模式挖掘算法[
16]。該算法可以進行拓展,用於
報警信息關聯分析。
5. 基於因果關系的分析技術
基於因果關系的分析技術[
17],其基本思想是網絡安全事件之間存在固有的因
果關系,基於這種固有的因果關系可以將網絡安全事件信息很好地關聯起來,從
而形成可以描述網絡安全事件之間關系的攻擊場景圖。
實現方法[
18][19][20]主要是首先為各種網絡安全事件定義因果關聯知識,並通過
因果關聯算法,識別出各事件之間的關聯關系,最終形成攻擊場景圖。
優點是揭示了安全事件間的聯系,缺點是關聯后的場景可能和實際場景有一
定差異。
6. 基於過濾器的關聯分析方法[
21]
主要方法是把網絡安全事件和主機脆弱性、主機資產進行關聯分析。因為當
發生一個針對某主機的漏洞進行的攻擊,如果該主機具有該漏洞,或者當發生一
個針對某資產的服務進行的攻擊時,該服務正好運行了符合這個攻擊的軟件版本,
那么我們認為該攻擊真實發生。
優點是能過濾大量虛假警報,缺點是對事件間的關系缺乏關聯。
[3] Valdes A., Simmer K. Probabilistic Alert Correlation. In: 4th Workshop on
Recent Advances in Intrusion Detection(RAID), LNCS, Springer Verlag,
2001:54-68.
[4] Dain O., Cunningham R. Building Scenarios from a Heterogeneous Alert
Stream. In: Proc. Of the 2001 IEEE.
[5] Dan O., Cunningham R. Fusing a heterogeneous alert stream into scenarios. In:
Proc. Of the 2001 ACM workshop on Data Mining for Security Applications,
2001:1-13.
[6] Chenfeng Vincent Zhou, Christopher Leckie, Shanika Karunasekera. A survey
of coordinated attacks and collaborative intrusion detection. Computers &
Security,29(2010):124-140.
[7] Benjamin M., Herve D. Correlation of Intrusion Symptoms: An Application of
Chronicles[C]. Proc. of the 6th International Symposium on Recent Advances
in Intrusion Detection, Pittsburgh, PA. USA: Springer Verleg, 2003.
[8] Steven C., Ulf L., Martin F. Modeling Multistep Cyber Attacks for Scenario
Recognition[C]. Proc. of Third DARPA Information Survivability Conference
and Exposition, Washington, 2003.
[9] Cai Y., Cercone N., Han J. Attribute-Oriented induction in relation database. In:
G.. Piatetsky-Shapiro and W. J. Frawley, eds. Knowledge Discovery in
Database, Cambridge, MA: AAAI/MIT Press, 1991. 213~328.
[10] J. whan, Micheline K. Data mining concepts and techniques. China Machine
Press, 2001.
[11] Julisch K. Mining A1arm Clusters to Improve Alarm Handling ef-ficiency. In:
17t
h
Annual Computer Security Applications Conf.(ACSAC), Dec.
2001.12~21.
[12] Julisch K., Dacier M. Mining intrusion detection alarms for actionable
knowledge.
[13] Han J., Fu Y. Exploration of the power of attribute-oriented induction in data
mining. In: U. M. Fayyad, G. Piatetsky-Shapiro, P. Smyth, and R. Uthrusamy,
eds. Advances in Knowledge Discovery and Data Mining. AAAI Press/MIT
Press. 1996.
[14] Heinonen. O., Mannila H. Attribute-Oriented induction and conceptual
clustering: [Technical Report Report-C-1996-2]. University of Helsinki, 1996.
[15] Mannila H., Toivonen H., verkamo A. Discovering frequent episodes in
sequences. In: proc. of the 1s
t
intl. conf. on knowledge discovery in databases
and data mining, Montreal, Canada, Aug. 1995.
[16] Wespi A., Dacier M. An intrusion-detection system based on the Teiresias
pattern-discovery algorithm. EICAR In: Proc. 1999.
[17] 彭雪娜,聞英友,趙宏.網絡安全信息關聯與分析技術的研究進展.計算機工
程,2006, 32(17): 1~3.
[18] Peng N.. Techniques and Tools for Analyzing Intrusion Alerts [J]. ACM Trans.
on Inf. Syst. Secur. , 2004, 7(2): 274-318.
[19] Frederic C., Alexandre M. Alert Correlation in a Cooperative Intrusion
Detection Framework[C]. Proc. of IEEE Symposium on Security and Privacy,
Oakland, California, USA, 2002.
[20] Steven T., Karl L. A Requires/provides Model for Computer Attacks[C]. Proc.
of Workshop on New Security Paradigms. Ballycotton, County Cork, Ireland,
2000.
[21] Chenfeng Vincent Zhou, Christopher Leckie, Shanika Karunasekera. A survey
of coordinated attacks and collaborative intrusion detection. Computers &
Security,29(2010):124-140.
美國北卡羅萊納州大學的等人匯用三元組幾,,
描述攻擊行為,稱為。是報警屬性的集合,
說明攻擊成功的必需條件,描述如果攻擊成功可能導致的結果。這樣,
將入侵檢測系統的原始報警信息定義為前提集和結果集,以描述報警之間的因果關
系。法國學者等人提出一個攻擊描述語言,以邏輯為基礎描述
攻擊情景事前必要條件一與事后造成影響一,再根據
這些攻擊描述產生關聯規則,發現報警之間的關聯關系。等提出了
語言用於多步攻擊建模,以模塊化的方式描述多步驟攻擊。各模塊采用前提
、活動與結果三段式的語法來描述攻擊行為。語言【'
ADeLe: An Attack Description Language for Knowledge-Based Intrusion Detection
ADeLe is an attack description language designed to model a database of known
attack scenarios. As the descriptions might contain executable attack code, it
allows one to test the efficiency of given Intrusion Detection Systems (IDS).
Signatures can also be extracted from the descriptions to configure a particular
IDS.