[摘要] 隨著Internet互聯(lián)網(wǎng)絡(luò)帶寬的增加和多種DDoS工具的不斷發(fā)布,DDoS拒絕服務(wù)攻擊的實(shí)施越來越容易,DDoS攻擊隨處可見,人們?yōu)榭朔﨑DoS攻擊進(jìn)行了大量研究,提出了多種解決方案。本文系統(tǒng)分析了DDoS攻擊的原理和攻擊思路,從管理和技術(shù)兩個(gè)方面提出一些關(guān)于減少DDoS攻擊方法。
[關(guān)鍵詞] DDoS拒絕服務(wù) 網(wǎng)絡(luò)攻擊
隨著Internet互聯(lián)網(wǎng)絡(luò)帶寬的增加和多種DDoS工具的不斷發(fā)布,DDoS拒絕服務(wù)攻擊的實(shí)施越來越容易,DDoS攻擊事件正在呈上升趨勢(shì)。出于商業(yè)競(jìng)爭(zhēng)、打擊報(bào)復(fù)和網(wǎng)絡(luò)敲詐等多種因素,導(dǎo)致很多IDC托管機(jī)房、商業(yè)站點(diǎn)、游戲服務(wù)器、聊天網(wǎng)絡(luò)等網(wǎng)絡(luò)服務(wù)商長(zhǎng)期以來一直被DDoS攻擊所困擾,隨之而來的是客戶投訴、同虛擬主機(jī)用戶受牽連、法律糾紛、商業(yè)損失等一系列問題,因此,解決DDoS攻擊問題成為網(wǎng)絡(luò)服務(wù)商必須要考慮的頭等大事。
在探討DDoS之前我們首先要對(duì)DoS有所了解,DoS即Denial Of Service,拒絕服務(wù)的縮寫。DoS是指故意的攻擊網(wǎng)絡(luò)協(xié)議實(shí)現(xiàn)的缺陷或直接通過野蠻手段殘忍地耗盡被攻擊對(duì)象的資源,目的是讓目標(biāo)計(jì)算機(jī)或網(wǎng)絡(luò)無法提供正常的服務(wù)或資源訪問,使目標(biāo)系統(tǒng)服務(wù)系統(tǒng)停止響應(yīng)甚至崩潰,而在此攻擊中并不包括侵入目標(biāo)服務(wù)器或目標(biāo)網(wǎng)絡(luò)設(shè)備。通常而言,DoS的網(wǎng)絡(luò)數(shù)據(jù)包是利用TCP/IP協(xié)議在Internet傳輸,這些數(shù)據(jù)包本身一般是無害的,但是如果數(shù)據(jù)包異常過多,就會(huì)造成網(wǎng)絡(luò)設(shè)備或者服務(wù)器過載,迅速消耗了系統(tǒng)資源,造成服務(wù)拒絕,這就是DoS攻擊的基本工作原理。
DoS攻擊之所以難于防護(hù),其關(guān)鍵之處就在于非法流量和合法流量相互混雜,防護(hù)過程中無法有效的檢測(cè)到DoS攻擊。加之許多DoS攻擊都采用了偽造源地址IP的技術(shù),從而成功的躲避了基于統(tǒng)計(jì)模式工具的識(shí)別。
具體DoS攻擊實(shí)現(xiàn)有如下幾種方法:
1.SYN FLOOD
利用服務(wù)器的連接緩沖區(qū),設(shè)置特殊的TCP包頭,向服務(wù)器端不斷地發(fā)送大量只有SYN標(biāo)志的TCP連接請(qǐng)求。當(dāng)服務(wù)器接收的時(shí)候,認(rèn)為是沒有建立起來的連接請(qǐng)求,于是這些請(qǐng)求建立會(huì)話,排到緩沖區(qū)隊(duì)列中。如果發(fā)送的SYN請(qǐng)求超過了服務(wù)器能容納的限度,緩沖區(qū)隊(duì)列占滿,那么服務(wù)器就不再接收新的請(qǐng)求了,因此其他合法用戶的連接都會(huì)被拒絕掉。如下圖所示:
本來正常的TCP連接是需要三次握手協(xié)議完成的,攻擊者先向目的主機(jī)發(fā)出一個(gè)SYN請(qǐng)求,由于目的主機(jī)不能判斷對(duì)方是否惡意,所以會(huì)回復(fù)一個(gè)SYN/ACK,這樣在目的主機(jī)就需要維護(hù)一個(gè)這樣的半連接,等待對(duì)方回復(fù)ACK后,完成整個(gè)連接的建立。攻擊者正是利用了這一點(diǎn),他只發(fā)送大量的SYN報(bào)文,并不回復(fù)ACK,這樣在目的主機(jī)中就維護(hù)了大量的半連接隊(duì)列,由于主機(jī)的資源是有限的,攻擊者通過持續(xù)不斷的發(fā)送SYN報(bào)文,耗盡了目的主機(jī)的資源,使得正常的服務(wù)連接得不到建立,網(wǎng)絡(luò)處于癱瘓狀態(tài)。
2.IP欺騙DoS攻擊
這種攻擊利用RST位來實(shí)現(xiàn)。假設(shè)現(xiàn)在有一個(gè)合法用戶(1.1.1.1)已經(jīng)同服務(wù)器建立了正常的連接,攻擊者構(gòu)造攻擊的TCP數(shù)據(jù),偽裝自己的IP為1.1.1.1,并向服務(wù)器發(fā)送一個(gè)帶有RST位的TCP數(shù)據(jù)段。服務(wù)器接收到這樣的數(shù)據(jù)后,會(huì)認(rèn)為從1.1.1.1發(fā)送的連接有錯(cuò)誤,從而清空緩沖區(qū)中建立好的連接。這時(shí),如果合法用戶1.1.1.1再發(fā)送合法數(shù)據(jù),服務(wù)器就已經(jīng)沒有這樣的連接了,該用戶就必須從新開始建立連接。攻擊者偽造大量的IP地址,向目標(biāo)主機(jī)發(fā)送RST數(shù)據(jù),從而使服務(wù)器不對(duì)合法用戶服務(wù)。
3.帶寬DoS攻擊(UDP Flood,ICMP Flood)
這類攻擊完全利用連接帶寬足夠大,持續(xù)向目標(biāo)服務(wù)器發(fā)送大量請(qǐng)求,如UDP的包,ICMP的ping包,來消耗服務(wù)器的緩沖區(qū),或者僅消耗服務(wù)器的連接帶寬,從而達(dá)到網(wǎng)絡(luò)擁塞,使服務(wù)器不能正常提供服務(wù)。
單一的DoS攻擊一般是采用一對(duì)一方式的,而“分布式拒絕服務(wù)攻擊”(Distributed Denial ofService,簡(jiǎn)稱DDoS)是建立在傳統(tǒng)的DoS攻擊基礎(chǔ)之上一類攻擊方式。當(dāng)計(jì)算機(jī)與網(wǎng)絡(luò)的處理能力加大了,用一臺(tái)攻擊機(jī)來攻擊不再能起作用的話,攻擊者就使用10臺(tái)甚至100臺(tái)攻擊機(jī)同時(shí)攻擊。這就是DDoS。DDoS就是利用更多的傀儡機(jī)“肉雞”來同時(shí)發(fā)起進(jìn)攻,更大規(guī)模的來進(jìn)攻受害者,破壞力更強(qiáng)。DDoS(分布式拒絕服務(wù))攻擊是利用TCP/IP協(xié)議漏洞進(jìn)行的一種簡(jiǎn)單而致命的網(wǎng)絡(luò)攻擊,由于TCP/IP協(xié)議的這種會(huì)話機(jī)制漏洞無法修改,因此缺少直接有效的防御手段。大量實(shí)例證明利用傳統(tǒng)設(shè)備被動(dòng)防御基本是徒勞的,而且現(xiàn)有防火墻設(shè)備還會(huì)因?yàn)橛邢薜奶幚砟芰ο萑氚c瘓,成為網(wǎng)絡(luò)運(yùn)行瓶頸;另外,攻擊過程中目標(biāo)主機(jī)也必然陷入癱瘓。
現(xiàn)在,高速網(wǎng)絡(luò)給大家?guī)砹朔奖?,但同時(shí)也為DDoS攻擊創(chuàng)造了極為有利的條件。在低速網(wǎng)絡(luò)時(shí)代時(shí),黑客占領(lǐng)攻擊用的傀儡機(jī)時(shí),總是會(huì)優(yōu)先考慮離目標(biāo)網(wǎng)絡(luò)距離近的機(jī)器,因?yàn)榻?jīng)過路由器的跳數(shù)少,效果好。而現(xiàn)在電信骨干節(jié)點(diǎn)之間的連接都是以G為級(jí)別的,大城市之間更可以達(dá)到2.5G的連接,這使得攻擊可以從更遠(yuǎn)的地方或者其他城市發(fā)起,攻擊者的傀儡機(jī)位置可以在分布在更大的范圍,選擇起來更靈活了,攻擊也更加隱蔽。
當(dāng)主機(jī)服務(wù)器被DDoS攻擊時(shí),通常會(huì)有如下現(xiàn)象:
●被攻擊主機(jī)上有大量等待的TCP連接
●網(wǎng)絡(luò)中充斥著大量的無用的數(shù)據(jù)包,源地址一般為偽造的
●高流量無用數(shù)據(jù)造成網(wǎng)絡(luò)擁塞,使受害主機(jī)無法正常和外界通訊
●反復(fù)高速的發(fā)出特定的服務(wù)請(qǐng)求,使受害主機(jī)無法及時(shí)處理所有正常請(qǐng)求
●系統(tǒng)服務(wù)器CPU利用率極高,處理速度緩慢,甚至宕機(jī)
到目前為止,進(jìn)行DDoS攻擊的防御還是比較困難的,主要是由于這種攻擊的特點(diǎn)是它利用了TCP/IP協(xié)議的漏洞,除非你不用TCP/IP,才有可能完全抵御住 DDoS攻擊。不過這不等于我們就沒有辦法阻擋DDoS攻擊,我們可以從管理和技術(shù)兩個(gè)方面減少DDoS的攻擊:
首先,要加強(qiáng)每個(gè)網(wǎng)絡(luò)用戶的安全意識(shí),安裝殺毒軟件,安裝軟件或者硬件防火墻,不從不名網(wǎng)站下載軟件,不訪問一些不名網(wǎng)站,不打開不名郵件,盡量避免木馬的種植。
其次,要求國(guó)家立法單位,對(duì)網(wǎng)絡(luò)犯罪進(jìn)行立法,對(duì)傳播病毒,木馬,和進(jìn)行黑客攻擊的行為進(jìn)行定性,并有法可依,保障國(guó)家信息高速網(wǎng)絡(luò)平臺(tái)的安全,為國(guó)內(nèi)信息化建設(shè)保駕護(hù)航。對(duì)我們的一些網(wǎng)絡(luò)運(yùn)營(yíng)平臺(tái)用戶,如經(jīng)營(yíng)性網(wǎng)站,門戶網(wǎng)站,網(wǎng)上交易平臺(tái),網(wǎng)絡(luò)游戲提供商,網(wǎng)吧,VOIP提供商等,也要加強(qiáng)網(wǎng)絡(luò)出口的防護(hù),發(fā)現(xiàn)和舉證攻擊行為,做好日志記錄,并利用硬件防護(hù)設(shè)備,最大程度的減少黑客攻擊的危害,保障經(jīng)營(yíng)性平臺(tái)的正常運(yùn)行。
在技術(shù)的手段上,我們還應(yīng)加強(qiáng)以下幾點(diǎn):
(1)確保服務(wù)器的系統(tǒng)文件是最新的版本,并及時(shí)更新系統(tǒng)補(bǔ)丁。
(2)關(guān)閉不必要的服務(wù)。
(3)限制同時(shí)打開的SYN半連接數(shù)目。
(4)縮短SYN半連接的time out 時(shí)間。
(5)正確設(shè)置防火墻
禁止對(duì)主機(jī)的非開放服務(wù)的訪問,限制特定IP地址的訪問,啟用防火墻的防DDoS的屬性,或者使用專用的抗DDoS設(shè)備。嚴(yán)格限制對(duì)外開放的服務(wù)器的向外訪問,運(yùn)行端口映射程序禍端口掃描程序,要認(rèn)真檢查特權(quán)端口和非特權(quán)端口。
(6)認(rèn)真檢查網(wǎng)絡(luò)設(shè)備和主機(jī)/服務(wù)器系統(tǒng)的日志。只要日志出現(xiàn)漏洞或是時(shí)間變更,那這臺(tái)機(jī)器就可能遭到了攻擊。
(7)限制在防火墻外與網(wǎng)絡(luò)文件共享。這樣會(huì)給黑客截取系統(tǒng)文件的機(jī)會(huì),主機(jī)的信息暴露給黑客,無疑是給了對(duì)方入侵的機(jī)會(huì)。
(8)路由器,以Cisco路由器為例,Cisco Express Forwarding(CEF),使用unicast reverse-path ,訪問控制列表(ACL)過濾,設(shè)置SYN數(shù)據(jù)包流量速率,升級(jí)版本過低的ISO ,為路由器建立log server。我們的運(yùn)營(yíng)商有義務(wù)在網(wǎng)絡(luò)平臺(tái)升級(jí)和建設(shè)的過程中,有效在各個(gè)節(jié)點(diǎn)抵御黑客惡意攻擊的行為,以凈化我們的網(wǎng)絡(luò)。不光僅僅是只加強(qiáng)可以看到效益的終端平臺(tái),如IDC機(jī)房的抗DDoS防護(hù),而是應(yīng)該在網(wǎng)絡(luò)的各個(gè)節(jié)點(diǎn)都加強(qiáng)防護(hù),在接入端進(jìn)行DDoS防護(hù)和源地址檢測(cè),使得黑客的主機(jī)或者占領(lǐng)的“肉雞”,無法拉起大量帶寬,有效記錄各種用戶(特別是網(wǎng)吧用戶)的網(wǎng)絡(luò)行為,建立電子檔案,以協(xié)助公安部門對(duì)網(wǎng)絡(luò)犯罪進(jìn)行調(diào)查,為指證犯罪提供證據(jù)。
對(duì)DDoS的原理與應(yīng)付方法的研究一直在進(jìn)行中,找到一個(gè)既有效又切實(shí)可行的方案不是一朝一夕的事情,因此此時(shí)要求我們的公安機(jī)關(guān),運(yùn)營(yíng)商和網(wǎng)絡(luò)安全廠商和網(wǎng)絡(luò)的用戶,在意識(shí)到網(wǎng)絡(luò)攻擊問題的嚴(yán)重性前提下,多方配合,共同加強(qiáng)網(wǎng)絡(luò)平臺(tái)安全性的建設(shè)性,凈化我們的網(wǎng)絡(luò),不給黑客以生存的攻擊,保障我們十幾年來信息網(wǎng)絡(luò)平臺(tái)建設(shè)的成果,為我國(guó)的經(jīng)濟(jì)建設(shè)提供堅(jiān)固安全的網(wǎng)絡(luò)信息化平臺(tái)。
參考文獻(xiàn):
[1]賈月琴?gòu)垖幩螘院?對(duì)網(wǎng)絡(luò)安全技術(shù)的討論 [J].微計(jì)算機(jī)信息.2005,3:108-110
[2]吳虎云超:對(duì)DDoS攻擊防范策略的研究及若干實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究,2002,38(11):24-26
[3]趙江巖:DDOS及防御DDOS攻擊[J].《商場(chǎng)現(xiàn)代化》2008年6月(中旬刊)總第542
[4]陳明奇:分布式拒絕服務(wù)攻擊處理實(shí)侈IJ分析.信息網(wǎng)絡(luò)安全,2007.6
[5]喬書建:DDoS攻擊的原理與防范.科教文匯(下旬刊),2007、5
[6]DDOS真是無可防范嗎?http://tech.ddvip.com/2008-09/122103997463194.html