周廣剛 尉永清
(1.山東師范大學信息科學與工程學院,山東 濟南250014;2.山東警察學院公共基礎(chǔ)部,山東 濟南250014;3.山東省分布式計算機軟件新技術(shù)重點實驗室,山東 濟南250014)
隨著互聯(lián)網(wǎng)的普及和網(wǎng)民數(shù)量的增加,網(wǎng)絡(luò)攻擊事件頻繁發(fā)生,在通過入侵檢測系統(tǒng)對這些攻擊事件進行檢測時,會產(chǎn)生海量報警,這些報警零星雜亂、難以理解與管理,因此網(wǎng)絡(luò)安全管理員要想從海量的數(shù)據(jù)中發(fā)現(xiàn)入侵者的攻擊過程并對其做出相應(yīng)的防御是非常困難的。
目前已有的很多異常數(shù)據(jù)分析方法都難以解決場景重構(gòu)時的誤報和漏報,本文提出了基于場景重構(gòu)和報警融合的異常數(shù)據(jù)分析方法。在場景重構(gòu)中通過去冗余技術(shù)來減少攻擊失敗報警對場景重構(gòu)過程的干擾;采用因果關(guān)聯(lián)的方法,從時間、狀態(tài)、參數(shù)3個方面對報警進行關(guān)聯(lián);利用反向搜索來補充遺漏的報警事件。因此,本文提出的方法可以在很大程度上消除了場景重構(gòu)時的漏報和誤報。在實驗中,采用DARPA 2000的入侵檢測數(shù)據(jù)集,并利用基于Snort網(wǎng)絡(luò)入侵檢測系統(tǒng)的報警,對本文提出的方法進行了驗證。
異常數(shù)據(jù)分析技術(shù)是入侵檢測系統(tǒng)中對報警信息進行處理的核心技術(shù),通過異常數(shù)據(jù)的分析可以將入侵者的攻擊流程直觀的展示給人們。異常數(shù)據(jù)分析技術(shù)主要包括場景重構(gòu)和報警融合。場景重構(gòu)解決了傳統(tǒng)入侵檢測中存在著較高誤報率和漏報率的問題,報警融合將大量的低級報警進行融合,確保攻擊場景的完整性。
Han[1]等設(shè)計了基于關(guān)聯(lián)規(guī)則的入侵檢測算法,通過對頻繁子集的挖掘,成功檢測出了已知攻擊的變種。趙寧[2]等人提出了基于流程化攻擊場景重構(gòu)技術(shù),采用不同的關(guān)聯(lián)模型對來源不同的報警進行關(guān)聯(lián),重構(gòu)入侵者的入侵場景。Daisuke[3]提出了一種基于日志分析方法,通過對計算機網(wǎng)絡(luò)日志進行分析,構(gòu)建攻擊者的攻擊場景。H.Achi[4]把計算機網(wǎng)絡(luò)安全的一些技術(shù)應(yīng)用到入侵檢測,得出攻擊者的網(wǎng)絡(luò)攻擊流程。
本文提出的基于場景重構(gòu)和報警融合的異常數(shù)據(jù)分析方法,其主要思路是:首先去除攻擊失敗的報警;然后反向關(guān)聯(lián),減少場景重構(gòu)中一些不必要的數(shù)據(jù);最后對一些孤立報警進行必要的補充,來保證場景圖的完整性。具體流程如下:
1)依據(jù)報警屬性的重要程度,保留了五種報警屬性:(1)報警ID號Alert_id;(2)報警時間Alert_time;(3)報警類型Alert_type;(4)報警源地址Alert_source;(5)報警目的地址Alert_dest。
2)對報警進行精簡與合并,此項工作主要由以下兩個步驟完成:(1)對具有重復(fù)關(guān)系的報警進行合并;(2)刪除攻擊失敗的報警。
3)通過尋找各個攻擊步驟之間存在的因果關(guān)系,將那些大量的、離散的報警合并成同一攻擊的不同攻擊階段。本文所使用的算法是在文章[5]的基礎(chǔ)上添加了時間約束條件,即兩條報警能進行關(guān)聯(lián)的前提是這兩條報警的時間差在一定范圍之內(nèi)。該算法的流程為:
S 1:遍歷每一條報警,將報警與詞典庫中的數(shù)據(jù)進行匹配。
S 2:若該報警與其匹配成功,將其保存到關(guān)聯(lián)表中。經(jīng)過多次實驗,發(fā)現(xiàn)時間閾值T=20min為最佳時間段。
S 3:如果該報警與詞典庫的報警都無法匹配,則將該條報警保存在獨立報警表中。
4)對于某一個入侵場景,首先找到該場景中報警類型級別比較高且時間靠后的五條報警,就從這些報警開始向前補充,將這些報警補充完后,判斷此場景是否完整,若該場景圖還存在遺漏,需要再進行一次遺漏報警的補充,直至場景圖相對最完整。
5)本文提出的報警融合方法,結(jié)合了相似性和抽象性,通過該技術(shù)得到一個完整的攻擊場景圖。我們把報警融合算法分成兩大步:(1)將新產(chǎn)生的報警融合到攻擊者的攻擊流程中;(2)將不同的場景圖,再次合并形成一個更加完整的攻擊場景,具體算法如下:
S 1:提取各完整入侵場景中的報警MA1,MA2,…,MAn。
S 2:對于新報警A,尋找可以與其融合的報警Find(A,MAi)。
S 2.1:若A.Alert_type=MAi.Alert_type,則轉(zhuǎn)S 2.2,否則插入融合隊列。
S 2.2:若IP地址相似度Sim IP(A.source,MAi.source)>IP閾值,則轉(zhuǎn)S 2.4,否則轉(zhuǎn)S 2.3。
S 2.3:若Sim IP(A.dest,MAi.dest)>IP閾值,則轉(zhuǎn)S 2.6,否則轉(zhuǎn)S 2.4。
S 2.4:若Sim IP(A.dest,MAi.source)>IP閾值,則將A的dest與source互換,并轉(zhuǎn)S2.5,否則插入融合隊列。
S 2.5:若Simtime(A.begintime,MAi.begintime)>time閾值,則轉(zhuǎn)S 2.6,否則插入融合隊列。
S 2.6:若全局相似度SimAll(A,MAi)>AllSim最小閾值,則轉(zhuǎn)S 3,否則插入融合隊列。
S 3:融合生成一個新報警N,有N.begintime=min{MAi.begintime,A.begintime},N.endtime=max{MAi.endtime,A.endtime};IP地址取A和MAi合并的IP地址。
S 4:刪除場景中重復(fù)的報警。
S 5:比較各入侵場景是否相同,將相同的入侵場景合并。
6)然而,在實際的環(huán)境下,如果僅僅通過分析報警,很難得到完整的攻擊場景圖,這時如果再對系統(tǒng)日志、cookies記錄等進行分析,將其融合到攻擊場景中,所得到的攻擊場景將會更加完整。
上一節(jié)介紹了基于場景重構(gòu)和報警融合的異常數(shù)據(jù)分析方法的具體流程,在本小節(jié)中,主要是將此方法得到的實驗結(jié)果進行分析,驗證本文所提出方法的必要性與可行性。
1)報警融合步驟的必要性
報警融合的主要目的是去除原始報警中冗余的報警,通過多次的實驗,結(jié)果表明了在對報警信息進行關(guān)聯(lián)分析時,必須要采取報警融合技術(shù)。
由表1,可以清晰的看出各個不同規(guī)模的報警集經(jīng)過報警融合后,其報警數(shù)量都大大地減少了。因此,報警融合這一步驟是很有用的。
表1 報警融合前后的報警數(shù)量對比圖
2)基于異常數(shù)據(jù)進行入侵檢測的可行性
通過上面的實驗,可以看出,通過報警融合確實減少了報警數(shù)量,但去掉的這些報警是否會影響場景圖的完整性,下面對其進行分析。
通過上圖可以很清晰的看出攻擊者的主要攻擊步驟,即首先通過主機進行端口掃描,然后通過asp注入,添加超級用戶,然后通過該用戶對該網(wǎng)站進行操作管理,最后入侵網(wǎng)站成功。實際檢測出的攻擊場景圖由圖中虛線表示,即成功關(guān)聯(lián)出了具有關(guān)聯(lián)關(guān)系的報警信息,進行MSSQL注入時,會通過pangolin在主機增加一個用戶,然后將此用戶加入到管理員分組,提升此用戶的權(quán)限,通過本文設(shè)計的系統(tǒng)進行關(guān)聯(lián)時,將此步驟關(guān)聯(lián)出來了。由此可以看出,本文的方法很大程度上避免了漏報,證明了該方法在可行性方面是沒問題的。
在攻擊場景重構(gòu)中,報警融合能有效的抽象出不同主機的行為,場景重構(gòu)對每臺主機可以實現(xiàn)攻擊場景的重現(xiàn)。本文把這兩者結(jié)合起來,提出了基于場景重構(gòu)和報警融合的異常數(shù)據(jù)分析技術(shù),先進行場景重構(gòu)再進行報警融合,既保證了攻擊場景圖的全面性又保證了準確性,有利于從宏觀上了解攻擊者的攻擊動機和過程。在下一步工作中,將對提出的算法進行進一步的優(yōu)化,并對入侵知識庫進行完善。
[1]MoradiM,Zulkemine M.A neural network based system for intrusion detection and classification ofattacks[J].Queen University,Canada,2004:1008-1015.
[2]趙寧.基于流程化攻擊場景重構(gòu)的網(wǎng)絡(luò)風險評估[D].華中師范大學,2011.
[3]Daisuke Takahashi,Yang Xiao.ComPlexity Analysis of Retrieving Knlowledge from Auditing Log Files for ComPuter and Network Forensics and Accountability[C]//IEEE International Conference on Communieations,IEEE.May,2008:1474-1478.
[4]Achi H,Hellany A,Nagrial M.Network security approach for digital forensics analysis[C]//Computer Engineering&Systems,2008.ICCES 2008.International Conference on.IEEE,2008:263-267.
[5]Peng N,Yun C,Douglas S.Techniques and tools for analyzing intrusion alerts[J].ACM Trans on Information and System Security,2004,7(2):274-318.