鄭明明,梁鴻
(1.中國石油大學(xué)(華東)后勤保障處,山東 東營 257061;2.中國石油大學(xué)(華東)計算機與通信工程學(xué)院,山東 青島 266580)
近年來,隨著互聯(lián)網(wǎng)技術(shù)的大規(guī)模社會化應(yīng)用,網(wǎng)上銀行、電子商務(wù)、遠(yuǎn)程監(jiān)視監(jiān)控等大量涌現(xiàn),使人們的生產(chǎn)、生活與網(wǎng)絡(luò)的聯(lián)系越發(fā)密切。互聯(lián)網(wǎng)在給人們生產(chǎn)、生活帶來便利的同時,各類互聯(lián)網(wǎng)安全事件也時有發(fā)生。因此,如何維護(hù)互聯(lián)網(wǎng)的安全、穩(wěn)定運行,已成為人們關(guān)注的焦點。
通常情況下,拒絕服務(wù)(Denial of Service,DoS)攻擊是一臺計算機通過網(wǎng)絡(luò)數(shù)據(jù)流,消耗對方反應(yīng)時間和資源的特殊數(shù)據(jù)流對另一臺計算機發(fā)動的泛洪攻擊,最終造成阻塞接收方通訊通道,使其無法響應(yīng)外界正常訪問信息。[1]據(jù)《計算機犯罪和安全調(diào)查報告》顯示,DoS攻擊已由2008年的21%上升至29.2%,并有蔓延的趨勢,其造成的損失始終位于前列[2],已成為當(dāng)今互聯(lián)網(wǎng)最主要的威脅之一。[3]
作為DoS的一種高級形式,分布式拒絕服務(wù)(Distributed Denial of Service,DDoS)攻擊是一種破壞力巨大的網(wǎng)絡(luò)攻擊形式。在DDoS攻擊中,成千上萬臺攻擊代理在幾乎同一時刻向目標(biāo)機發(fā)送海量數(shù)據(jù)數(shù)據(jù)包,從而在較短時間內(nèi)耗盡目標(biāo)機資源。
本文是基于流量自相似算法基礎(chǔ)上,通過對傳統(tǒng)算法進(jìn)行改進(jìn),提出一個基于動態(tài)判據(jù)的改良型DDoS檢測方法,以提高DDoS的檢測效率。
與其他DoS攻擊不同,DDoS攻擊主要利用互聯(lián)網(wǎng)與目標(biāo)機之間資源的不對稱性[4],通過組建數(shù)量巨大的僵尸網(wǎng)絡(luò),采用“多對一”的攻擊方式,以海量數(shù)據(jù)迅速占領(lǐng)目標(biāo)機資源,從而阻斷合法用戶對目標(biāo)機的訪問。
一個典型的DDoS攻擊系統(tǒng)通常由三部分組成,如圖1所示。
圖1 DDoS攻擊示意圖
1)攻擊源(Attacker),即真正的攻擊者。
2)僵尸網(wǎng)絡(luò)(BotNet)。“僵尸網(wǎng)絡(luò)”由國家計算機網(wǎng)絡(luò)應(yīng)急技術(shù)處理協(xié)調(diào)中心(CNCERT/CC)于2005年1月4日命名[5],是指由黑客集中控制的被僵尸程序感染的計算機群。[6]這些被感染的計算機被稱為僵尸機(Zombie),主要有兩種類型,一是主控機(Handle),主要用于監(jiān)聽攻擊源的攻擊指令,并根據(jù)指令向其控制的攻擊代理下達(dá)攻擊命令。一般情況下,主控機可控制多臺攻擊代理。二是攻擊代理(Agent),主要根據(jù)主控機指令開始或停止攻擊。
3)目標(biāo)機(Victim)。目標(biāo)機即為DDoS攻擊對象,可以是服務(wù)器、路由器、普通計算機,甚至是連入互聯(lián)網(wǎng)的子網(wǎng)。
由于攻擊方與被攻擊方往往處于不同的網(wǎng)絡(luò)中,同時攻擊方又采用了攻擊源—主控機—攻擊代理的3層結(jié)構(gòu),使得追溯攻擊源變得非常困難,因此,怎樣快速有效地檢測到DDoS攻擊就變得異常重要。
DDoS的攻擊主要是組建僵尸網(wǎng)絡(luò)和發(fā)動攻擊,MIT(麻省理工)的林肯實驗室給出了5個詳細(xì)步驟:
Step1:掃描網(wǎng)絡(luò),以發(fā)現(xiàn)可入侵的在線主機。
Step2:從在線主機中篩選適合安裝僵尸程序的主機,通常是有安全漏洞的主機。
Step3:入侵Step2中選定的主機,并植入代碼,以檢測主機是否已被占領(lǐng)。
Step4:在被占領(lǐng)的主機中安裝攻擊軟件,組建僵尸網(wǎng)絡(luò)。
Step5:發(fā)動攻擊。
DDoS攻擊在目標(biāo)機處的明顯特征是出現(xiàn)海量信息,資源被迅速消耗。由于DDoS攻擊多采用合法請求,所以普通的查殺系統(tǒng)并不會做出反應(yīng)。目標(biāo)機處的資源消耗則主要體現(xiàn)在以下兩方面:
1)本機資源。由于攻擊方發(fā)送的數(shù)據(jù)流遠(yuǎn)遠(yuǎn)超出目標(biāo)機的處理能力,造成目標(biāo)機無力響應(yīng)其他合法用戶請求,甚至宕機。
2)帶寬資源。主要針對具有帶寬瓶頸的目標(biāo)機。由于帶寬不足,使得通往目標(biāo)機的通道被攻擊數(shù)據(jù)占據(jù),隔絕了外界與目標(biāo)機的聯(lián)系。
由于上述特征在攻擊末端即目標(biāo)機處較為明顯,所以本文研究的是基于末端的檢測方法,在攻擊源端可能不具有檢測能力。
1993年,Leland等[7]提出網(wǎng)絡(luò)流量具有自相似性(self-similar)和漸近自相似性(asymptotic self-similarity),并且是長相關(guān)(long-range dependence)的。當(dāng)出現(xiàn)DDoS攻擊時,其海量的攻擊數(shù)據(jù)流會破壞這種相似性,所以,通過檢測網(wǎng)絡(luò)流量是否具有相似性就可以判斷網(wǎng)絡(luò)中是否存在DDoS攻擊流。
赫斯特參數(shù)(Hurst)是用于表征自相似性的唯一參數(shù)[8],通過測算網(wǎng)絡(luò)流量的赫斯特參數(shù)值,就可以判斷此時的網(wǎng)絡(luò)流量是否具有相似性,若具有相似性,則證明網(wǎng)絡(luò)安全;若不具有相似性,則判定含有DDoS攻擊流量。
傳統(tǒng)的檢測方法首先對目標(biāo)機的正常流量進(jìn)行長時間的采集,進(jìn)而測算該流量的赫斯特參數(shù)值Hn,并以Hn作為檢測依據(jù);其次,對檢測周期內(nèi)的流量進(jìn)行赫斯特參數(shù)測算,得到Hd;最后,計算差值dh=Hn-Hd。當(dāng)dh>δ時,δ為設(shè)定閾值,判定流量屬于正常流量;否則,判定流量中含有攻擊流。
當(dāng)H∈(0.5,1)時,網(wǎng)絡(luò)流量可判定具有自相似性[9],典型的網(wǎng)絡(luò)流量的赫斯特參數(shù)值H=0.75[10],但在實際網(wǎng)絡(luò)流量赫斯特參數(shù)測算中,H值往往不固定,甚至和典型值具有較大差異。
LLDOS1.0是MIT的林肯實驗室為DARPA創(chuàng)建的攻擊場景,其中包含了1個由初級攻擊者進(jìn)行的DDoS攻擊數(shù)據(jù)。攻擊出現(xiàn)在7 574 s,結(jié)束于7 580 s,表1為其前6 000 s的 H值測算結(jié)果。由測算結(jié)果可以發(fā)現(xiàn),使用傳統(tǒng)的自相似檢測方法得到的正常網(wǎng)絡(luò)流量H值往往不適合作為判據(jù),甚至達(dá)不到自相似的條件。
表1 LLDOS1.0 H值測算
針對傳統(tǒng)方法中判據(jù)Hn生成時間過長,對正常網(wǎng)絡(luò)流量判定誤差過大的情況,本文進(jìn)行了以下改進(jìn):①采用較短的時間作為檢測周期;②以動態(tài)的實時Hn代替?zhèn)鹘y(tǒng)方法中的固定Hn。
具體方法如下:設(shè)定0.75作為Hn的初始值,如果檢測周期判定不含DDoS攻擊流,則用該檢測周期檢測值Hd頂替0.75作為下一檢測周期的判據(jù)Hn;如果檢測周期判定含有DDoS攻擊流,則重新將0.75作為下一檢測周期的判據(jù)Hn。過程如圖2所示。
圖2 Hn設(shè)定過程
數(shù)據(jù)來源:MIT林肯實驗室的入侵檢測數(shù)據(jù)集DARPA LLDOS 1.0,如圖3所示。
圖3 LLS-DDOS 1.0-inside流量圖
分析工具:①Wireshark。用于離線分析數(shù)據(jù),其前身是Ethereal。②Matlab。用于數(shù)據(jù)測試。
檢測算法:如圖2所示。
參數(shù)選取:①單次采樣時間t=0.1 s。②檢測周期T=100 s。③判定閾值Δh=0.2。
測試方法:對LLDOS 1.0中DDoS攻擊前的流量進(jìn)行連續(xù)10個周期的采樣,并對采樣結(jié)果進(jìn)行判斷。由于檢測開始時間遠(yuǎn)早于DDoS攻擊,所以本測試中大膽假設(shè)第1個檢測周期的檢測結(jié)果不含DDoS攻擊流,結(jié)果如表2所示。
由表2測試結(jié)果可見,本文方法取得良好效果。通過對不同連續(xù)10周期采樣的反復(fù)測試,均取得類似表2的測試結(jié)果。
表2 測試結(jié)果
作為網(wǎng)絡(luò)安全專家最為關(guān)注的問題之一,DDoS以其易操作性和巨大的攻擊力威脅著互聯(lián)網(wǎng)安全。本文通過對DDoS攻擊特性和傳統(tǒng)基于流量自相似的檢測方法進(jìn)行分析,提出了一種利用動態(tài)赫斯特參數(shù)作為判據(jù)的改進(jìn)型算法,取得了良好的檢測效果。由于本文方法對第1個檢測周期進(jìn)行假設(shè),因此下一步工作目標(biāo)是尋求輔助判據(jù)對流量自相似結(jié)果進(jìn)行二次判定。
[1]Elliott John.Distributed Denial of Service Attacks and the Zombie Ant Effect[J].IT Prfessional,2000,2(2):55-57.
[2]Computer Security Institute.14th Annual CSI Computer Crime and Security Survey Executive Summary[EB/OL].(2009-12-01).http://pathmaker.biz/whitepapers/CSISurvey2009.pdf.
[3]Douligeris Christos,Mitrokotsa Aikaterini.DDoS Attacks and Defense Mechanisms:Classification and State-of-the-art[J].Computer Networks,2004,44(5):643-666.
[4]Li Lan,Lee Gyungho.DDoS Attack Detection and Wavelets[C]//Computer Communications and Networks,2003.ICCCN 2003.Proceedings.The 12th International Conference on,2003:421-427.
[5]徐圖.超球體多類支持向量機及其在DDoS攻擊檢測中的應(yīng)用[D].成都:西南交通大學(xué),2008.
[6]國家計算機網(wǎng)絡(luò)應(yīng)急技術(shù)處理協(xié)調(diào)中心.中國互聯(lián)網(wǎng)網(wǎng)絡(luò)安全報告(2008年上半年)[R],北京:2009.
[7]Stilian Stoev,Murad S Taqqu,Cheolwoo Park,et al.LASS:A Tool for the Local Analysis of Self-similarity[J].Computational Statistics & Data Analysis,2006,50(9):2447-2471.
[8]任勛益,王汝傳,王海艷,等.基于自相似檢測DDoS攻擊的小波選擇[J].南京航空航天大學(xué)學(xué)報,2007,39(5):588-592.
[9]Cheng Xiaorong,Xie Kun,Wang Dong.Network Traffic Anomaly Detection Based on Self-Similarity Using HHT and Wavelet Transform[C]//Information Assurance and Security,2009.IAS'09.Fifth International Conference on,2009,1:710-713.
[10]任勛益,王汝傳,王海艷.基于自相似檢測DDoS攻擊的小波分析方法[J].通信學(xué)報,2006,27(5):6-11.