程 偉(1.宜賓學(xué)院網(wǎng)管中心,四川宜賓644007;2.成都柒零后科技有限公司,四川成都610000)
一種部署在鄰近路由器上的DDoS二維防御模型
程偉1,2
(1.宜賓學(xué)院網(wǎng)管中心,四川宜賓644007;2.成都柒零后科技有限公司,四川成都610000)
面對DDoS對網(wǎng)絡(luò)的嚴(yán)重威脅,提出一種二維防御模型來抵御DDoS對網(wǎng)絡(luò)中主機(jī)(主要對象是服務(wù)器)的攻擊,該防御模型以鄰近服務(wù)器的路由器為平臺,采用雙重手段抵御DDoS攻擊,從而實(shí)現(xiàn)目標(biāo)服務(wù)器的安全保護(hù).該防御模型基于鄰近路由器,主要包括兩個功能層次:第一層,限流保護(hù)層,即限制流向服務(wù)器的數(shù)據(jù)流量;第二層,攻擊包篩除層,在限流的情況下,將不符合路由規(guī)則的攻擊包篩選出來并丟棄,有效地緩解了流向服務(wù)器的數(shù)據(jù)流量,從而保證信道的合理負(fù)載及服務(wù)器的正常工作.通過仿真和實(shí)驗(yàn),該二維防御模型對DDoS的攻擊具有較好的防御效果,能有效地減少流向服務(wù)器的攻擊包數(shù)量,保護(hù)目標(biāo)服務(wù)器并使之正常運(yùn)行.
DDoS;分布式拒絕服務(wù);網(wǎng)絡(luò)攻擊;網(wǎng)絡(luò)安全
ChengW.Two-DimensionalDefenseModel AgainstDDoSBased on AdjacentRouter[J].Journal of Yibin University, 2015,15(6):70-75.
DDoS(Distributed Denial of Service),即分布式拒絕服務(wù),來源于DoS且在DoS的基礎(chǔ)上采用了分布式攻擊技術(shù),DDoS可以說是DoS分布式升級版.攻擊者在因特網(wǎng)中的多個節(jié)點(diǎn)上植入傀儡程序,這些被植入了傀儡程序的節(jié)點(diǎn)在攻擊者主控端的控制下,同時(shí)向網(wǎng)絡(luò)中的某一攻擊目標(biāo)(攻擊目標(biāo)一般為具有重要作用的服務(wù)器,簡稱目標(biāo)服務(wù)器)發(fā)送大量的數(shù)據(jù)包,這些數(shù)據(jù)包會導(dǎo)致兩方面的嚴(yán)重后果:一方面,攻擊者首先將攻擊客戶端(即傀儡程序)植入因特網(wǎng)的節(jié)點(diǎn)上,這些節(jié)點(diǎn)可能是一般用戶的主機(jī),也可能是服務(wù)器,一旦被植入攻擊客戶端,該節(jié)點(diǎn)就成了攻擊者的傀儡節(jié)點(diǎn).攻擊者發(fā)出遠(yuǎn)程組播攻擊指令,傀儡節(jié)點(diǎn)收到攻擊指令后,便向指令中的目標(biāo)服務(wù)器發(fā)送大量的數(shù)據(jù)包,這些數(shù)據(jù)包將阻塞連接目標(biāo)服務(wù)器的信道;另一方面,由于這些數(shù)據(jù)包符合協(xié)議規(guī)范,從根本上來說是合法的數(shù)據(jù)包,因此,目標(biāo)服務(wù)器就會對這些數(shù)據(jù)包進(jìn)行響應(yīng)處理,但由于數(shù)據(jù)量巨大,超過了目標(biāo)服務(wù)器的處理能力,使得目標(biāo)服務(wù)器嚴(yán)重超載而癱瘓,導(dǎo)致合法用戶正當(dāng)?shù)恼埱蠓?wù)無法得到響應(yīng)而超時(shí),即拒絕服務(wù).至此,攻擊者的攻擊目標(biāo)實(shí)現(xiàn),其攻擊案例屢見不鮮[1-4].因此,DDos成了因特網(wǎng)所面臨的一種危害大、防御難、范圍廣的攻擊手段,其攻擊原理如圖1所示.
圖1 DDoS攻擊原理示意圖
DDoS防御之所以難,是因?yàn)樗昧薚CP/IP協(xié)議本身的安全缺陷,就攻擊包本身而言,它是符合協(xié)議規(guī)范的;對目標(biāo)服務(wù)器來說,這些攻擊包也是合法的,從而使得目標(biāo)服務(wù)器義無反顧地處理和響應(yīng),致使其因嚴(yán)重負(fù)荷而崩潰.顯而易見,DDoS攻擊成功的根本原因在于數(shù)據(jù)量龐大,因此不必去分辨攻擊包,應(yīng)重點(diǎn)控制攻擊包的流量,只要能將攻擊包的流量控制在信道的正常負(fù)載范圍內(nèi),控制在目標(biāo)服務(wù)器的處理能力之內(nèi),那么信道就不會被阻塞,目標(biāo)服務(wù)器不會癱瘓且有余力處理合法用戶請求.
文獻(xiàn)[5]采用了在“節(jié)點(diǎn)對”之間進(jìn)行流量檢測的方式,對異常流量進(jìn)行記錄,構(gòu)建了流量記錄矩陣,將流量分為異常流量和正常流量,但是這種方法只能判定是否發(fā)生DDoS攻擊,沒有提出有效的抵御方法.文獻(xiàn)[6]中的研究者在骨干網(wǎng)上進(jìn)行流量分析發(fā)現(xiàn),流量大小相對穩(wěn)定,一經(jīng)發(fā)現(xiàn)突發(fā)性流量暴增,則認(rèn)為發(fā)生了DDoS攻擊,其功效和文獻(xiàn)[5]一樣,且存在誤判的可能.但眾多的研究者已經(jīng)發(fā)現(xiàn),對流量的研究有助于找到抵御DDoS攻擊的辦法.
此外,還有研究者致力于DDoS攻擊包的檢測研究,在文獻(xiàn)[7]中,采用對包的長度、包頭信息、協(xié)議等進(jìn)行對比,從而判別出攻擊包,這種方法存在不可忽略的誤差.文獻(xiàn)[8]路徑認(rèn)證PI(path identification)技術(shù)要求數(shù)據(jù)包攜帶路徑中的各節(jié)點(diǎn)指紋,從而通過指紋來判定該包是否為攻擊包,但是這種方法的開銷大.顯然,攻擊包的檢測也是DDoS的另一研究熱點(diǎn).
流量控制和攻擊包檢測都是有效的方法,應(yīng)充分發(fā)揮這兩類研究方法的優(yōu)勢,因此,在文中,提出了一種全新的防御模型,該模型基于流量控制和攻擊包檢測篩除的雙重策略,從兩方面對DDoS進(jìn)行抵御,故稱之為二維防御模型.
1.1模型的結(jié)構(gòu)
二維防御模型的結(jié)構(gòu)簡單,避免了結(jié)構(gòu)復(fù)雜帶來的內(nèi)耗和開銷,主要包含兩個功能層:第一層為限流保護(hù)層,負(fù)責(zé)對流向目標(biāo)服務(wù)器的數(shù)據(jù)流量進(jìn)行合理限制;第二層為攻擊包篩除層,在限流保護(hù)后,啟動包篩除功能,從進(jìn)入鄰近路由器的流量中,判定出攻擊包并篩除,如圖2所示.
1.2模型的基本原理
該模型工作在鄰近目標(biāo)服務(wù)器路由器上(以下簡稱鄰近路由器),鄰近路由器是目標(biāo)服務(wù)器的最后屏障,所有數(shù)據(jù)包的轉(zhuǎn)發(fā)都通過鄰近路由器完成,是流向目標(biāo)服務(wù)器的數(shù)據(jù)轉(zhuǎn)發(fā)中心,因此,二維防御模型的工作平臺為鄰近路由器.其工作的基本原理如圖3所示.
圖3 二維防御模型的工作原理示意圖
在限流保護(hù)層,通過檢測進(jìn)入鄰近路由器的流量進(jìn)行采樣,根據(jù)采樣信息判定是否限流,如果達(dá)到限流條件,則啟動限流保護(hù),否則繼續(xù)循環(huán)采樣.在限流后,再對所有通過鄰近路由器流向目標(biāo)服務(wù)器的數(shù)據(jù)流進(jìn)行攻擊包判定,符合篩除條件的則被認(rèn)為是攻擊包而被篩除,符合不篩除條件的數(shù)據(jù)包被轉(zhuǎn)發(fā)到目標(biāo)服務(wù)器.攻擊包篩除層和限流保護(hù)層的協(xié)同處理降低了流向服務(wù)器的流量,避免了信道的阻塞和服務(wù)器的癱瘓,能有效抵御DDoS的攻擊.
從圖3可以看出,二維防御模型主要有兩個功能模塊,即限流保護(hù)層和攻擊包篩除層.二者既各司其職,又協(xié)同統(tǒng)一地完成DDoS的防御任務(wù).
2.1二維防御模型的限流保護(hù)
限流保護(hù)的首要條件是確定限流的標(biāo)準(zhǔn),即,在單位時(shí)間內(nèi),通過鄰近路由器流向服務(wù)器的流量是否達(dá)到上限極值,該極值為閾值,超過該閾值,目標(biāo)服務(wù)器便會因超載而癱瘓;低于閾值,數(shù)據(jù)流量處于服務(wù)器正常處理范圍內(nèi),服務(wù)器便保持正常的工作狀態(tài).
2.1.1流量閾值的獲取
閾值是該防御模型啟動限流保護(hù)的關(guān)鍵指標(biāo),閾值的設(shè)定必須以目標(biāo)服務(wù)器的實(shí)際處理能力為第一要素,文獻(xiàn)[8]中采用了統(tǒng)計(jì)歷史數(shù)據(jù)流量的方法來判定DDoS攻擊,該方法對于判定DDoS攻擊具有較好的作用,但是存在大數(shù)據(jù)訪問的誤判,即不能區(qū)分突發(fā)的大數(shù)據(jù)訪問和DDoS攻擊.
在該防御模型中,為了獲得流量閾值,采用了模擬DDoS攻擊的方式,檢測出服務(wù)器能承受的極限數(shù)據(jù)流量.在模擬DDoS攻擊方法中,以目標(biāo)服務(wù)器為攻擊目標(biāo),對其進(jìn)行DDoS攻擊,直到目標(biāo)服務(wù)器的內(nèi)存、CPU等核心設(shè)備達(dá)到極限處理能力時(shí),記錄下目標(biāo)服務(wù)器能處理的最大數(shù)據(jù)流量值,該流量值便是服務(wù)器的限流閾值J,它是防御模型進(jìn)行限流保護(hù)的唯一依據(jù).
2.1.2模型的限流保護(hù)
根據(jù)圖3,L是每次測得的經(jīng)過鄰近路由器流向服務(wù)器的實(shí)際流量值;J是服務(wù)器的流量閾值,超過該值,服務(wù)器就超載,低于該值,服務(wù)器就能正常處理數(shù)據(jù)包;d是誤差常量,它的取值由閾值決定,小于等于閾值的10%,也可以根據(jù)具體的需要進(jìn)行設(shè)置,它的存在是為了保證攻擊包的流量永遠(yuǎn)達(dá)不到閾值,因?yàn)橐坏┻_(dá)到閾值,服務(wù)器就存在危險(xiǎn),所以d不能為0;Δt為流量采集間隔時(shí)間,該值太小,會造成采集頻繁而開銷大,該值太大又會導(dǎo)致發(fā)生DDoS攻擊時(shí),不能及時(shí)發(fā)現(xiàn)流量暴增而作出反應(yīng),因此,Δt的取值以檢測攻擊為準(zhǔn),它的取值為:
其中:T是閾值流量J在路由器上的周轉(zhuǎn)時(shí)間,δ是常量,它的存在使得Δt恒小于T,即檢測時(shí)間間隔永遠(yuǎn)小于限流閾值J在路由器上的周轉(zhuǎn)時(shí)間,也就是說,當(dāng)最大的攻擊流量J到達(dá)路由器,還沒有被完全轉(zhuǎn)發(fā)給目標(biāo)服務(wù)器時(shí),路由器已經(jīng)檢測到暴增的攻擊數(shù)據(jù)流了,使得路由器來得及進(jìn)行限流保護(hù).而δ的取值比較關(guān)鍵,如果取得太小,那么攻擊數(shù)據(jù)流的大部分?jǐn)?shù)據(jù)都通過了,路由器才檢測到攻擊;取得太大,又會造成路由器過于頻繁的檢測產(chǎn)生較大的內(nèi)耗.因此,δ的取值應(yīng)結(jié)合實(shí)際路由器的性能參數(shù)而制定,使得路由器能及時(shí)發(fā)現(xiàn)攻擊數(shù)據(jù)流.
可見,模型的限流保護(hù)主要是根據(jù)周期檢測鄰近路由器端口流向目標(biāo)服務(wù)器的數(shù)據(jù)流量,當(dāng)流量L的值小于J-d時(shí),流量不能構(gòu)成威脅,從而每隔Δt繼續(xù)檢測;當(dāng)流量L≥J-d,也就是說流量迫近了閾值J,應(yīng)立即啟動限流保護(hù),保證服務(wù)器不被過多的攻擊包淹沒.
2.2模型的攻擊包篩除
DDoS攻擊數(shù)據(jù)包本身符合協(xié)議規(guī)范,即數(shù)據(jù)包的本質(zhì)是合法的.因此,從數(shù)據(jù)包本身來鑒別一個數(shù)據(jù)包是否為攻擊包是不可取的,但是,攻擊包中的包頭中攜帶了源IP地址,從路由器中的路由機(jī)制可以根據(jù)源IP地址篩選出一部分不符合路由規(guī)則的數(shù)據(jù)包,而這部分被篩除的數(shù)據(jù)包則是攻擊者為了不被回溯追蹤而發(fā)出的偽IP數(shù)據(jù)包.
2.2.1偽IP攻擊包
圖1顯示,攻擊者在實(shí)施攻擊時(shí),主要是利用傀儡節(jié)點(diǎn)發(fā)送巨量的數(shù)據(jù)包,而各種回溯檢測技術(shù)能輕易地檢測出攻擊者,所以,為了防止被回溯追蹤,這些節(jié)點(diǎn)在發(fā)送數(shù)據(jù)包的時(shí)候采用了偽IP地址,即節(jié)點(diǎn)所發(fā)送的攻擊包中,源IP地址并不是節(jié)點(diǎn)的真實(shí)IP地址,而是偽造的其他節(jié)點(diǎn)的IP地址,這樣的數(shù)據(jù)包稱為偽IP包,一旦采用這種方法,IP回溯檢測也無濟(jì)于事.真實(shí)IP包和偽IP包對比見圖4.
圖4 真實(shí)IP包和偽IP包對比圖
在圖4a中,主機(jī)的IP地址為IP1,采用真實(shí)IP地址發(fā)送數(shù)據(jù)給服務(wù)器時(shí),一旦采用回溯檢測,便很容易回溯追蹤到主機(jī);在圖4b中,主機(jī)的IP地址為IP2,如果主機(jī)采用偽IP x地址(x是不為2的任何值)發(fā)送數(shù)據(jù)包,服務(wù)器收到IP x數(shù)據(jù)包時(shí),即使回溯追蹤也不成功,使得攻擊節(jié)點(diǎn)IP2具有較好的隱蔽性.
而DDoS攻擊當(dāng)前主要采用圖4b中的方式進(jìn)行偽IP包攻擊,攻擊節(jié)點(diǎn)具有很好的隱秘性,回溯追蹤已經(jīng)無效,使得DDoS的攻擊更加難以防御.
2.2.2偽IP包篩除方法
從DDoS攻擊的本質(zhì)來看,它之所以攻擊成功是因?yàn)榭芄?jié)點(diǎn)多,流向目標(biāo)服務(wù)器的攻擊包多,防御關(guān)鍵還是在于卸掉過多的攻擊包流量.基于此,防御模型在路由器中對攻擊包進(jìn)行判定并篩除一部分攻擊包,使得攻擊包流量減少,即使有一部分攻擊包通過,它的流量也不足以使得服務(wù)器超載癱瘓,因此,從流量中篩除攻擊包,降低流量是一種有效的防御手段.
偽IP包篩除的原理在于根據(jù)路由器的最短路由機(jī)制,將那不符合最短路由機(jī)制、不經(jīng)過該路由器的偽IP包篩選丟棄,從而降低了流向服務(wù)器的流量,減輕了服務(wù)器的負(fù)擔(dān),使之有余力處理網(wǎng)絡(luò)中合法用戶的請求服務(wù).其原理如圖5所示.
圖5 偽IP包攻擊拓?fù)鋱D
圖5是一個隨機(jī)的網(wǎng)絡(luò)拓?fù)鋱D的一部分,通過該圖來分析說明偽IP包的攻擊及篩除過程,在圖中,任意假設(shè)3個研究對象,分別是5、9、10號節(jié)點(diǎn),其中5為目標(biāo)服務(wù)器,9是目標(biāo)服務(wù)器的鄰近路由器,負(fù)責(zé)轉(zhuǎn)發(fā)流向服務(wù)器5的數(shù)據(jù)流,也是防御模型的工作平臺,10為攻擊節(jié)點(diǎn).當(dāng)10對5發(fā)起攻擊的時(shí)候,它所發(fā)出的攻擊包的源IP地址不是IP10,而是除開IP10以外的任何一個節(jié)點(diǎn)的IP地址,用以下攻擊函數(shù)表示攻擊者、目標(biāo)服務(wù)器、偽造IP之間的關(guān)系:
式2表示10攻擊5時(shí),10能通過偽造1、2、3、4、6、7、8、9這些節(jié)點(diǎn)的IP地址來偽造數(shù)據(jù)包,即,除開它自己的IP10外,其余所有的IP地址都是可以用來偽造它的數(shù)據(jù)包.
攻擊開始后,路由器9收到了大量的攻擊包,這些攻擊包是偽IP攻擊包,它們的IP地址是IP x,其中x={1、2、3、4、6、7、8、9},路由器9收到數(shù)據(jù)包以后,根據(jù)最短路徑規(guī)則判斷,按照最短路徑,該節(jié)點(diǎn)的數(shù)據(jù)包是否會經(jīng)過路由器轉(zhuǎn)發(fā),即路由表中是否含有該路由信息,如果有就轉(zhuǎn)發(fā)給服務(wù)器,如果沒有就判定為攻擊包并丟棄.
以上過程用類C代碼表示如下:
Struct packet
{
Char*ip;
String data;//用結(jié)構(gòu)體來存儲數(shù)據(jù)包信息
……
}
router(){//路由器上的篩選模塊
void*pointer,*p;//pointer指向路由表,P指向數(shù)據(jù)包
pointer=address(router-table);
*p=malloc(sizeof(packet()));
While(end){//循環(huán)結(jié)束的條件是指針pointer已經(jīng)指向路由表末尾
If(mess.ip=*pointer.aimip)//如果路由表中有此IP地址,則說明該信息為合法包,否則被認(rèn)為是攻擊包并丟棄
{Accept(packet());Send(packet());}
else
{Release(malloc(packet()));Pointer++;}
}
}
如攻擊者偽造IP1給服務(wù)器發(fā)送攻擊包,根據(jù)最短路由規(guī)則,1發(fā)給5的數(shù)據(jù)包的路徑是path1(1、4、5),即1號節(jié)點(diǎn)的數(shù)據(jù)包不會經(jīng)過路由器9轉(zhuǎn)發(fā),因此,路由器9判定IP1是攻擊包并丟棄;路由器9收到IP2數(shù)據(jù)包時(shí),同樣根據(jù)最短路徑規(guī)則,對IP2進(jìn)行最短路由規(guī)則判定,發(fā)現(xiàn)2發(fā)給5的數(shù)據(jù)包路徑是path2(2、6、5),不需要經(jīng)過路由器9轉(zhuǎn)發(fā),同樣判定IP2數(shù)據(jù)包是偽造數(shù)據(jù)包并丟棄;以此類推,在模仿3、4、6節(jié)點(diǎn)的IP地址發(fā)送偽IP包的時(shí)候,路由器采用最短路徑規(guī)則進(jìn)行判定并丟棄.在采用IP9和IP5偽造數(shù)據(jù)包時(shí)因不符合路由規(guī)則而同樣被丟棄.
但是,攻擊者在模仿節(jié)點(diǎn)7和8的時(shí)候,路由器收到的數(shù)據(jù)包分別是IP7和IP8,根據(jù)最短路徑的路由規(guī)則,7的路徑path7(7、8、9、5),8的路徑是path8 (8、9、5),這符合最短路徑規(guī)則而被轉(zhuǎn)發(fā)給服務(wù)器5,也就是說在所有的節(jié)點(diǎn)中,只有模仿7、8的偽IP包流向了服務(wù)器,而模仿其余節(jié)點(diǎn)的偽IP包都沒能到達(dá)服務(wù)器就被鄰近路由器9丟棄了.
因此,在以上拓?fù)浣Y(jié)構(gòu)中,通過以上最短路徑篩除規(guī)則,偽IP包的丟包率達(dá)到了70%,即在所有發(fā)送到鄰近路由器9的數(shù)據(jù)包中,有70%的偽IP包因?yàn)椴环献疃搪窂铰酚梢?guī)則而被丟棄,卸掉了一部分的攻擊流量,減少了服務(wù)器的負(fù)擔(dān).尤其是在限流的基礎(chǔ)上,采用上述方法便能降低攻擊流量,使服務(wù)器能在正常的負(fù)載下,有余地完成部分正當(dāng)用戶的請求服務(wù),從而有效地抵御了DDoS的攻擊.
為了檢驗(yàn)二維防御模型的效能,進(jìn)行了以NS2 (network simulator version 2)為仿真模擬平臺的模擬仿真實(shí)驗(yàn).在試驗(yàn)中,模擬的鄰近路由器為企業(yè)級的華為R2220可限流路由器;模擬的服務(wù)器為常用的商業(yè)服務(wù)器IBM System X3550(797831C);以15個隨機(jī)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)為實(shí)驗(yàn)案例;采用100個流量發(fā)生器模擬每個網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的節(jié)點(diǎn);所模擬的網(wǎng)絡(luò)協(xié)議為TCP/IP,實(shí)驗(yàn)分為3個部分,分別是:①模擬攻擊獲取服務(wù)器的流量閾值J;②限流保護(hù)策略驗(yàn)證服務(wù)器的工作狀態(tài);③最短路徑規(guī)則篩除偽IP包的效用.
3.1模擬攻擊獲取閾值J
實(shí)驗(yàn)的主要目的在于獲得目標(biāo)服務(wù)器能處理的閾值流量J,它是模型限流保護(hù)的主要依據(jù).對其中的模擬服務(wù)器節(jié)點(diǎn)按照IBM System X3550 (797831C)的實(shí)際標(biāo)準(zhǔn)進(jìn)行配置,從而該節(jié)點(diǎn)被模擬成了一臺虛擬的目標(biāo)服務(wù)器.在實(shí)驗(yàn)過程中,100個流量發(fā)生器模擬DDoS傀儡節(jié)點(diǎn)向目標(biāo)服務(wù)器發(fā)送攻擊數(shù)據(jù)包,數(shù)據(jù)包流量基數(shù)以1MB/s開始,每經(jīng)過5 s便以2倍的方式遞增,通過觀察模擬服務(wù)器的運(yùn)行狀態(tài)判定其是否正常.經(jīng)過一段時(shí)間的模擬攻擊后,便能觀察出目標(biāo)服務(wù)器的狀態(tài)發(fā)生了變化,為閾值的確定提供了直接依據(jù).其流量和服務(wù)器性能的對比如圖6所示.
圖6 流量、性能對比曲線圖
從圖6可以看出,在t=45 s時(shí),即流量達(dá)到50 GB時(shí),CPU的利用率和內(nèi)存的占用率基本達(dá)到了極限,即100%;t=50 s時(shí),當(dāng)流量繼續(xù)增加2倍,CPU和內(nèi)存的占用率為100%;t=55 s時(shí),二值保持恒定.從以上曲線可得,流量的閾值應(yīng)該為t=45 s時(shí)的流量值,此時(shí)閾值J=50GB,當(dāng)流量超過50 GB時(shí),仿真系統(tǒng)中設(shè)定的IBM System X3550(797831C)服務(wù)器內(nèi)存和CUP即將達(dá)到極限,一旦流量突破極限,則該服務(wù)器就因?yàn)樨?fù)載過大而癱瘓.因此,必須要保證流量低于閾值就開始限流保護(hù).根據(jù)限流保護(hù)的規(guī)定,L=J-d,d=10%×J,所以,流量L=45 GB時(shí)必須限流,一旦超過45GB,則馬上達(dá)到閾值,服務(wù)器便崩潰.
采用實(shí)驗(yàn)方法可以獲得所有服務(wù)器能處理數(shù)據(jù)流量的閾值,為后續(xù)的限流保護(hù)提供直接的依據(jù).
3.2限流保護(hù)仿真
當(dāng)流量L逼近J-d時(shí),必須對路由器的轉(zhuǎn)發(fā)流量進(jìn)行限制,否則,到達(dá)服務(wù)器的數(shù)據(jù)包流量將突破閾值而使服務(wù)器崩潰,在4.1節(jié)的仿真試驗(yàn)中已經(jīng)得到了驗(yàn)證,圖6進(jìn)行了直接的展示.因此,限流保護(hù)是將數(shù)據(jù)流量控制在服務(wù)器的安全范圍內(nèi),目的在于保證服務(wù)器的正常運(yùn)行而不致崩潰.
在模型中,所有的服務(wù)器鄰近路由器均為可限流路由器,采用和4.1節(jié)相同的仿真實(shí)驗(yàn)環(huán)境,路由器為華為R2220可限流路由器,當(dāng)100個流量發(fā)生器向經(jīng)過路由器向服務(wù)器發(fā)送數(shù)據(jù)流時(shí),嚴(yán)格控制L的極限值為J-d,即L=45GB時(shí),流量逼近服務(wù)器閾值J(J=50GB),在限流和不限流的情況下,服務(wù)器出現(xiàn)了兩種不同的運(yùn)行狀態(tài),其狀態(tài)對比如圖7所示.
圖7 有無限流保護(hù)的服務(wù)器狀態(tài)對比
從圖7可知,當(dāng)流量增加到45GB時(shí),無論有無限流控制,服務(wù)器的狀態(tài)顯示為正常,當(dāng)流量逼近50GB時(shí),1為有限流保護(hù),此時(shí)限流為45GB,雖然外部流量不斷增加,但是限流路由器的流量限制為45 GB,所以服務(wù)器保持正常的工作狀態(tài);2為無限流保護(hù)的情況,當(dāng)流量達(dá)到45GB時(shí),服務(wù)器狀態(tài)正常,當(dāng)超過45GB,逼近50GB時(shí),服務(wù)器狀態(tài)顯示癱瘓,沒有任何數(shù)據(jù)響應(yīng).
因此,采用限流保護(hù)能將流向服務(wù)器的數(shù)據(jù)流限制在閾值J之下,即L.此時(shí),無論外部的數(shù)據(jù)流以什么樣的比例增長,限流保護(hù)的流量依然是L,都能保證服務(wù)器的正常工作而不會發(fā)生癱瘓;如果不限流保護(hù),那么一旦數(shù)據(jù)流量達(dá)到閾值,則服務(wù)器在瞬間被數(shù)據(jù)流阻塞而陷入癱瘓.
3.3最短路徑路由篩除偽IP包仿真實(shí)驗(yàn)
防御模型的第二層次是基于第一層限流保護(hù)的基礎(chǔ)上,對經(jīng)過鄰近路由器流向服務(wù)器的數(shù)據(jù)流進(jìn)行偽IP包篩除,利用3.2.2節(jié)中的最短路徑篩除偽IP包的方法,能將一部分偽IP包刪掉,降低了流向服務(wù)器的數(shù)據(jù)流,使得服務(wù)器有余力去處理一部分正當(dāng)?shù)捻憫?yīng)請求(不是所有的正當(dāng)請求都能得到響應(yīng)),緩解了DDoS的攻擊.
在實(shí)驗(yàn)中,將15個隨機(jī)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)進(jìn)行2.2.2節(jié)中的偽IP包篩除,對于每一個拓?fù)浣Y(jié)構(gòu),算出其偽IP包的篩除率,結(jié)果如表1所示.
其最終的統(tǒng)計(jì)結(jié)果如圖8所示.
表1 拓?fù)浣Y(jié)構(gòu)丟包率
圖8 偽IP包篩除率統(tǒng)計(jì)
從表1和圖8可知,對于隨機(jī)的15個拓?fù)浣Y(jié)構(gòu)而言,采用偽IP包篩除方法,都能成功地將偽IP包篩除一部分,最小值為30%,最大值為70%,平均效率為51%,即限流保護(hù)后,51%的偽IP包因不符合路由規(guī)則而被防御模型篩除.從而極大地緩解了服務(wù)器的負(fù)擔(dān),使得服務(wù)器有能力去響應(yīng)部分正當(dāng)用戶的請求,達(dá)到了防御DDoS的目的.
根據(jù)DDoS的攻擊特性,二維防御模型從限流保護(hù)和偽IP包篩除兩方面著手抵御DDoS攻擊,限流保護(hù)旨在限制流向服務(wù)器的數(shù)據(jù)流量,使得數(shù)據(jù)流控制在服務(wù)器能處理的閾值之下,保證了服務(wù)器的正常工作而不會癱瘓;偽IP包篩除的目的在于限流后,利用路由規(guī)則篩除不符合路由規(guī)則的偽IP包,從而降低流向服務(wù)器的數(shù)據(jù)流量,使得服務(wù)器有余力去響應(yīng)合法用戶的正當(dāng)請求,從而有效地抵御DDoS的攻擊.
以上兩個層次既獨(dú)立工作,又相互協(xié)同,實(shí)現(xiàn)了對服務(wù)器的保護(hù),經(jīng)過仿真實(shí)驗(yàn),在抵御DDoS的攻擊方面具有良好的效果.
[1]51CTO.com.2013年熱點(diǎn)DDoS攻擊事件深度剖析[EB/OL].(2013-10-15)[2015-03-03].http://netsecurity.51cto.com/art/2013 10/413127.htm.
[2]北京中聯(lián)互動科技發(fā)展有限公司.2014年DDoS攻擊事件[EB/OL].[2015-03-08].http://www.fwqtg.net/2014ddos.htm l.
[3]太平洋電腦網(wǎng).黑客常規(guī)攻擊方式之DDoS攻擊[EB/OL].(2014-01-08)[2015-03-12].http://network.pconline.com.cn/412/412500 0_2.html.
[4]防護(hù)寶.2014年DDoS攻擊事件[EB/OL].[2015-03-16].https://www.fanghubao.com/help/98.
[5]Luo H,Hu G,Yao X.DDoS attack detection based on global net?work properties of network traffic anomaly[J].Computer Applica?tions,2007,27(2):314-317.
[6]Yuan J,Mills K.Monitoring themacroscopic effectof DDoS flood?ing attacks.IEEE Trans on Dependable and Secure Computing[J].2005,2(4):324-335.doi:10.1109/TDSC.2005.50.
[7]Lakhina A,Crovella M,Diot C.Mining anomalies using traffic fea?ture distributions[J].Proc of the ACM SIGCOMM Philadelphia, 2005.doi:10.1145/1080091.1080118.
[8]Zhuang X,Lu K,Wang L,et al.A detectingmethod of DDoS at?tacks based on traffic statistics[J].Computer Engineering(in Chi?nesewith English abstract),2004,30(22):127-129.
(編校:李青)
Tw o-Dimensional Defense Model Against DDoSBased on Ad jacent Router
CHENGWei1,2
(1.Network Management Center,Yibin University,Yibin,Sichuan 644007,China;2.Chengdu Qilinghou Technology Co.,Ltd.,Cheng?du,Sichuan 610000,China)
Faced with the serious threatDDoSposes to the network,a two-dimensional defensemodelagainstDDoSwas proposed,which wasbased on the router close to the server and defenses the DDoSby Dual strategy.It includes two func?tional architectures,the first one is traffic limited protection layerwhich controls the traffic that flows to the server;the second one is attack-packets screening layerwhich filters the bogus IP packets by routing rules,thus reducing the pack?ets flowing to server and providing a guarantee to channel for reasonable load and normalwork.Simulation and experi?ments show that the two-dimensional defensemodel plays a good effectagainstDDoS,especially in reducing the traffic to the serverand supporting it to functionwell.
DDoS;distributed denialofservice;network attack;network security
TP393.08
A
1671-5365(2015)06-0070-06
2015-04-29修回:2015-05-18
程偉(1972-),男,高級實(shí)驗(yàn)師,本科,研究方向?yàn)樾畔⑻幚怼⒕W(wǎng)絡(luò)通信及安全
網(wǎng)絡(luò)出版時(shí)間:2015-05-20 09:39網(wǎng)絡(luò)出版地址:http://www.cnki.net/kcms/detail/51.1630.Z.20150520.0939.002.html
引用格式:程偉.一種部署在鄰近路由器上的DDoS二維防御模型[J].宜賓學(xué)院學(xué)報(bào),2015,15(6):70-75.