李際磊
摘 要 目前的入侵檢測系統(tǒng)(IDS)采用的分析技術(shù)主要為兩種,誤用檢測(Misuse Detection)與異常檢測(Anomaly Detection)[1-2]。誤用檢測的不足是無法檢測未知的異常行為或惡意代碼。異常入侵檢測不需要事先知道入侵行為的特征,其假設(shè)當(dāng)用戶系統(tǒng)被攻擊或者入侵時,會表現(xiàn)出不同往常的行為特點(diǎn),作為檢測依據(jù)。檢測效率高,不依賴先驗(yàn)知識庫,能夠檢測未知異常。本文提出了一種通過統(tǒng)計(jì)分析IP、端口、流量、周期、時間等因子來判定網(wǎng)絡(luò)行為異常的檢測方法。通過算法優(yōu)化和實(shí)驗(yàn)驗(yàn)證,該方法針對常見的DDOS攻擊、蠕蟲掃描、木馬竊密等網(wǎng)絡(luò)行為都有較高的檢測準(zhǔn)確度。
關(guān)鍵詞 誤用檢測;異常檢測;惡意代碼;DDOS攻擊;蠕蟲掃描;木馬竊密
中圖分類號:TP751 文獻(xiàn)標(biāo)識碼:A 文章編號:1671-7597(2014)23-0041-02
1 研究背景
最早由Denning提出了基于異常的入侵檢測的思想[3],網(wǎng)絡(luò)異常檢測方法又分為兩類[4]:有指導(dǎo)異常檢測(supervised anomaly detection)和無指導(dǎo)異常檢測(unsupervised anomaly detection)。有指導(dǎo)檢測,需要輸入已經(jīng)過判斷的正常和異常的樣本集合,無指導(dǎo)檢測的輸入是一個未經(jīng)過判斷的樣本集,由系統(tǒng)自動區(qū)分以發(fā)現(xiàn)異常數(shù)據(jù)。網(wǎng)絡(luò)異常檢測方法主要包括概率統(tǒng)計(jì)、模式預(yù)測、機(jī)器學(xué)習(xí)、數(shù)據(jù)挖掘等,本文在對多種網(wǎng)絡(luò)異常事件和惡意代碼行為詳細(xì)分析的基礎(chǔ)上提出了一種基于概率統(tǒng)計(jì)的網(wǎng)絡(luò)異常檢測方法。
2 異常特征選取
概率統(tǒng)計(jì)方法的思想是假設(shè)用戶在一段時間段內(nèi)的行為是有一定統(tǒng)計(jì)規(guī)律性的,然后借助概率統(tǒng)計(jì)理論來計(jì)算相關(guān)的特征量,根據(jù)特定的環(huán)境設(shè)定閾值參數(shù),在檢測過程中將計(jì)算得到的用戶統(tǒng)計(jì)數(shù)據(jù)與閾值進(jìn)行比較,以此判斷異常。該方法的特征量的選擇比較難選取,閾值也比較難確定。本文的方法為了盡量降低誤報(bào)率,提出了包括報(bào)文異常、規(guī)模異常以及流異常在內(nèi)的多種異常,各種異?;パa(bǔ)構(gòu)成更大的異常集合,而且構(gòu)建了一個普通用戶的正常網(wǎng)絡(luò)行為模型,以此模型來發(fā)現(xiàn)更多未知的異常。
1)報(bào)文異常。
TCP/IP協(xié)議標(biāo)準(zhǔn)對個協(xié)議的報(bào)文長度、協(xié)議字段、做了嚴(yán)格的規(guī)定,并且許多常用服務(wù)的端口一般都是固定的。有些惡意程序?yàn)榱硕惚艹S脵z測軟件或設(shè)備的審查,偽裝成常用協(xié)議,從而造成正常報(bào)文的異常。
2)規(guī)模異常。
規(guī)模異常是指在指定的統(tǒng)計(jì)間隔內(nèi)對指定的某些特征量的規(guī)模進(jìn)行統(tǒng)計(jì),然后與正常的閾值進(jìn)行比較,當(dāng)統(tǒng)計(jì)值超越閾值時則判斷為異常,異常程度的度量為與閾值的偏離度。當(dāng)網(wǎng)內(nèi)用戶被攻擊和被掃描時,或者網(wǎng)內(nèi)大量主機(jī)被植入僵尸程序時,短時間內(nèi)用戶的統(tǒng)計(jì)數(shù)據(jù)中會出現(xiàn)某些規(guī)模上的激增。我們將規(guī)模上的異常分為包數(shù)規(guī)模異常、IP/PORT規(guī)模異常、流量規(guī)模異常三類。
3)流異常。
流異常是指針對流特征進(jìn)行統(tǒng)計(jì)發(fā)現(xiàn)的異常,具體包括IP新鮮度異常、流周期性異常、流持續(xù)時間異常、進(jìn)出流量比異常、連接從屬關(guān)系異常、進(jìn)入平均包長異常。圖1為實(shí)驗(yàn)中使用的Gh0st木馬的網(wǎng)絡(luò)周期性,圖2為實(shí)驗(yàn)統(tǒng)計(jì)得到的常用應(yīng)用的進(jìn)出流量比。
3 用戶正常網(wǎng)絡(luò)行為模型
本文中所述用戶是指該被保護(hù)的局域網(wǎng)中的一臺正常使用的網(wǎng)絡(luò)終端,用戶的網(wǎng)絡(luò)行為是極具規(guī)律性的,只要選取恰當(dāng)?shù)奶卣髁考纯杀M量完整的描述用戶的正常網(wǎng)絡(luò)行為。本文選取了如下特征來描述用戶的正常網(wǎng)絡(luò)行為。
1)活躍時間段。
一般的單位是有固定的上下班時間的,因此單位內(nèi)部用戶的網(wǎng)絡(luò)活躍時間段也是呈現(xiàn)一定的規(guī)律的。
2)活躍IP-TopK。
根據(jù)實(shí)驗(yàn)分析,由于人訪問網(wǎng)絡(luò)的習(xí)慣性,每個網(wǎng)絡(luò)用戶訪問度較高的IP是可數(shù)的,登錄的網(wǎng)站、登錄的郵箱、對話的聯(lián)系人等是可度量的,因此我們可以通過一定的算法建立一個用戶的常用IP列表,通過該列表可以發(fā)現(xiàn)新鮮度較大的IP地址,這也是發(fā)現(xiàn)異常的途徑。
3)常用域名、郵箱名。
每個用戶訪問的網(wǎng)頁、使用的郵箱名是可數(shù)的,因此常訪問域名和郵箱名也是可以用來描述用戶網(wǎng)絡(luò)行為習(xí)慣的特征量,當(dāng)盜號型木馬利用郵箱發(fā)送竊取到的秘密數(shù)據(jù)時使用的郵箱是非常用的。網(wǎng)絡(luò)型木馬用來獲得黑客地址的域名也是用戶非常用的域名。
4)常用服務(wù)的IP地址。
這個特征量的選擇與(1)和(2)的原理是相似的。
4 異常檢測方法
1)碎片重組。
IP報(bào)文傳送過程中當(dāng)長度超過了中轉(zhuǎn)路由器等設(shè)備的最大傳輸單元(MTU)時會被分片傳輸,報(bào)文到達(dá)接收方由協(xié)議棧進(jìn)行重組,因此檢測系統(tǒng)接收到報(bào)文的首要任務(wù)是判斷是否為IP分片包,不同IP數(shù)據(jù)包具有不同標(biāo)識,因此在實(shí)現(xiàn)IP協(xié)議重組時采用雙向鏈表來完成對IP分片重組的數(shù)據(jù)緩沖。
2)解析統(tǒng)計(jì)。
解析統(tǒng)計(jì)模塊的功能分為解析和統(tǒng)計(jì),分出入兩個方向和單用戶、群用戶兩個層次進(jìn)行如下步驟:
①解析協(xié)議字段(IP、ICMP、TCP、UDP、DNS、SMTP、HTTP等)。
②檢查字段是否異常(IP_ADDR、TTL、TOTAL_LENGTH、PROTOCOL、應(yīng)用層字段)。
③分出入兩個方向進(jìn)行統(tǒng)計(jì):
ICMP包、SYN包、長度低于設(shè)定值的UDP包、碎片包、上層非常用協(xié)議包規(guī)模;
對用戶統(tǒng)計(jì)其聯(lián)絡(luò)的IP規(guī)模、內(nèi)部縱向端口規(guī)模、進(jìn)出流量比;
統(tǒng)計(jì)外向SYN包的周期性和DNS包的周期性。
3)異常檢測。
網(wǎng)絡(luò)異常行為包括攻擊行為、掃描行為、遠(yuǎn)程控制行為和用戶異常行為,異常檢測模塊同樣按照這幾種行為進(jìn)行了功能劃分:endprint
①統(tǒng)計(jì)數(shù)據(jù)檢測攻擊行為和掃描行為,在統(tǒng)計(jì)線程中根據(jù)用戶設(shè)定的時間間隔統(tǒng)計(jì)累加各個特征量,當(dāng)檢測間隔到達(dá)時,該線程去判斷統(tǒng)計(jì)數(shù)據(jù)結(jié)構(gòu)中的特征量是否超出閾值;
②通過流還原檢測遠(yuǎn)程控制行為,在流還原的過程中,記錄流的持續(xù)時間、進(jìn)入包長分布、進(jìn)出流量、包間隔的周期性,以及IP對之間的多條流之間的關(guān)系等特征量,當(dāng)流正常結(jié)束或者通過還原算法判斷超時結(jié)束時,判斷上述特征量是否符合遠(yuǎn)程控制的行為模式,如果符合則認(rèn)為是異常行為。
③通過網(wǎng)絡(luò)用戶行為模型檢測用戶異常行為,對網(wǎng)絡(luò)用戶異常行為的檢測是對前兩種檢測的補(bǔ)充。
5 結(jié)束語
本文在閱讀相關(guān)的國內(nèi)外文獻(xiàn)和大量的分析實(shí)驗(yàn)工作基礎(chǔ)上,提出了一種基于概率統(tǒng)計(jì)的網(wǎng)絡(luò)異常檢測方法,并提出了包括:1)報(bào)文異常;2)規(guī)模異常;3)流異常;4)用戶行為異常等多種異常特征,針對每種特征都設(shè)計(jì)了高效的統(tǒng)計(jì)分析算法,并取得了較理想的實(shí)驗(yàn)效果。
參考文獻(xiàn)
[1]楊智君,田地,馬駿驍,等.入侵檢測技術(shù)研究綜述[J].計(jì)算機(jī)工程與設(shè)計(jì),2006,27(12):2119-2123.
[2]Bykova M,Ostermann S,Tjaden B.Detecting network intrusions via a statistical analysis of network packet characteristics. In: Proc. of the 33rd Southeastern Symp on.
[3]Dorothy E Denning. An Intrusion Detection Model[M].IEEE Transactionson Software Engineering.1987,SE-13(2):222-232.
[4]Eskin E,Arnold A,Prerau M,Portnoy L,Stolfo SJ.A geometric framework for unsupervised anomaly detection: detecting intrusions in unlabeled data. In: Barbarà D,Jajodia S,eds.Applications of Data Mining in Computer Security.Boston: Kluwer Academic Publishers,2002:78-99.endprint
①統(tǒng)計(jì)數(shù)據(jù)檢測攻擊行為和掃描行為,在統(tǒng)計(jì)線程中根據(jù)用戶設(shè)定的時間間隔統(tǒng)計(jì)累加各個特征量,當(dāng)檢測間隔到達(dá)時,該線程去判斷統(tǒng)計(jì)數(shù)據(jù)結(jié)構(gòu)中的特征量是否超出閾值;
②通過流還原檢測遠(yuǎn)程控制行為,在流還原的過程中,記錄流的持續(xù)時間、進(jìn)入包長分布、進(jìn)出流量、包間隔的周期性,以及IP對之間的多條流之間的關(guān)系等特征量,當(dāng)流正常結(jié)束或者通過還原算法判斷超時結(jié)束時,判斷上述特征量是否符合遠(yuǎn)程控制的行為模式,如果符合則認(rèn)為是異常行為。
③通過網(wǎng)絡(luò)用戶行為模型檢測用戶異常行為,對網(wǎng)絡(luò)用戶異常行為的檢測是對前兩種檢測的補(bǔ)充。
5 結(jié)束語
本文在閱讀相關(guān)的國內(nèi)外文獻(xiàn)和大量的分析實(shí)驗(yàn)工作基礎(chǔ)上,提出了一種基于概率統(tǒng)計(jì)的網(wǎng)絡(luò)異常檢測方法,并提出了包括:1)報(bào)文異常;2)規(guī)模異常;3)流異常;4)用戶行為異常等多種異常特征,針對每種特征都設(shè)計(jì)了高效的統(tǒng)計(jì)分析算法,并取得了較理想的實(shí)驗(yàn)效果。
參考文獻(xiàn)
[1]楊智君,田地,馬駿驍,等.入侵檢測技術(shù)研究綜述[J].計(jì)算機(jī)工程與設(shè)計(jì),2006,27(12):2119-2123.
[2]Bykova M,Ostermann S,Tjaden B.Detecting network intrusions via a statistical analysis of network packet characteristics. In: Proc. of the 33rd Southeastern Symp on.
[3]Dorothy E Denning. An Intrusion Detection Model[M].IEEE Transactionson Software Engineering.1987,SE-13(2):222-232.
[4]Eskin E,Arnold A,Prerau M,Portnoy L,Stolfo SJ.A geometric framework for unsupervised anomaly detection: detecting intrusions in unlabeled data. In: Barbarà D,Jajodia S,eds.Applications of Data Mining in Computer Security.Boston: Kluwer Academic Publishers,2002:78-99.endprint
①統(tǒng)計(jì)數(shù)據(jù)檢測攻擊行為和掃描行為,在統(tǒng)計(jì)線程中根據(jù)用戶設(shè)定的時間間隔統(tǒng)計(jì)累加各個特征量,當(dāng)檢測間隔到達(dá)時,該線程去判斷統(tǒng)計(jì)數(shù)據(jù)結(jié)構(gòu)中的特征量是否超出閾值;
②通過流還原檢測遠(yuǎn)程控制行為,在流還原的過程中,記錄流的持續(xù)時間、進(jìn)入包長分布、進(jìn)出流量、包間隔的周期性,以及IP對之間的多條流之間的關(guān)系等特征量,當(dāng)流正常結(jié)束或者通過還原算法判斷超時結(jié)束時,判斷上述特征量是否符合遠(yuǎn)程控制的行為模式,如果符合則認(rèn)為是異常行為。
③通過網(wǎng)絡(luò)用戶行為模型檢測用戶異常行為,對網(wǎng)絡(luò)用戶異常行為的檢測是對前兩種檢測的補(bǔ)充。
5 結(jié)束語
本文在閱讀相關(guān)的國內(nèi)外文獻(xiàn)和大量的分析實(shí)驗(yàn)工作基礎(chǔ)上,提出了一種基于概率統(tǒng)計(jì)的網(wǎng)絡(luò)異常檢測方法,并提出了包括:1)報(bào)文異常;2)規(guī)模異常;3)流異常;4)用戶行為異常等多種異常特征,針對每種特征都設(shè)計(jì)了高效的統(tǒng)計(jì)分析算法,并取得了較理想的實(shí)驗(yàn)效果。
參考文獻(xiàn)
[1]楊智君,田地,馬駿驍,等.入侵檢測技術(shù)研究綜述[J].計(jì)算機(jī)工程與設(shè)計(jì),2006,27(12):2119-2123.
[2]Bykova M,Ostermann S,Tjaden B.Detecting network intrusions via a statistical analysis of network packet characteristics. In: Proc. of the 33rd Southeastern Symp on.
[3]Dorothy E Denning. An Intrusion Detection Model[M].IEEE Transactionson Software Engineering.1987,SE-13(2):222-232.
[4]Eskin E,Arnold A,Prerau M,Portnoy L,Stolfo SJ.A geometric framework for unsupervised anomaly detection: detecting intrusions in unlabeled data. In: Barbarà D,Jajodia S,eds.Applications of Data Mining in Computer Security.Boston: Kluwer Academic Publishers,2002:78-99.endprint