[摘 要]DDOS是一種基于DOS的分布、協作的大規模網絡攻擊手段,對網絡的安全已經構成了極大的威脅。文章分析了DDOS的工作原理,介紹了三類常見的DDOS攻擊方法,并提出了DDOS攻擊的防御策略。
[關鍵詞]DDOS 網絡攻擊 防范策略
[中圖分類號]TP [文獻標識碼]A [文章編號]1009-5489(2008)09-0242-02
隨著計算機網絡的日益普及,針對網絡的攻擊也越來越多。分布式拒絕服務攻擊(Distributed Denial of Service,簡稱DDOS)作為一種新型的、分布式、大規模的網絡攻擊手段,對網絡的安全已經構成了極大的威脅。黑客曾經采用DDOS攻擊成功地攻擊了幾個著名的網站,如雅虎、微軟以及SCO,mazon.com、ebuy、CNN.com、BUY.com、ZDNet、Excite.com等國外知名網站,致使網絡服務中斷了數小時,造成的經濟損失達數百萬美元。DDOS攻擊由于破壞性大,而且難于防御,因此它已經引起了全世界的廣泛關注。
一、DDOS攻擊原理及常用攻擊方法
1.DDOS攻擊原理
如圖1所示,一個完整的DDOS攻擊體系由攻擊者、主控端、代理端和攻擊目標四部分組成。主控端和代理端分別用于控制和實際發起攻擊,其中主控端只發布命令而不參與實際的攻擊,代理端發出DDOS的實際攻擊包。對于主控端和代理端的計算機,攻擊者有控制權或者部分控制權,并把相應的DDOS程序上傳到這些平臺上,這些程序與正常的程序一樣運行并等待來自攻擊者的指令,當然,它在運行過程中會利用各種手段隱藏自己不被別人發現。一般情況下,主控端和代理端不會有什么異常。真正的攻擊者一旦將攻擊的命令傳送到主控端,攻擊者就可以關閉或離開網絡,而由主控端將命令發布到各個代理主機上,這樣攻擊者可以逃避追蹤。每一個攻擊代理主機都會向目標主機發送大量的服務請求數據包,這些數據包經過偽裝,無法識別它的來源,而且這些包所請求的服務往往要消耗大量的系統資源,如CPU資源或網絡帶寬。如果數百臺甚至上千萬臺攻擊代理主機同時攻擊一個目標,就會導致目標主機網絡和系統資源的耗盡,造成目標主機無法為用戶提供正常服務,甚至導致系統崩潰。

DDOS主要利用Internet上現有機器及系統的漏洞,攻占大量聯網主機,使其成為攻擊者的代理。真正攻擊者的位置非常靈活,發布命令的時間短而隱蔽,難以定位,而且攻擊者所用的協議都是一些非常常見的協議和服務(如TCP、UDP),系統管理員難以區分惡意請求和正常連接請求,從而無法有效地分離出攻擊數據包。這就使得DDOS攻擊防御變得非常困難。
2.DDOS常用攻擊方法
DDOS攻擊行為的定性特征是:要么大流量數據包以至壓垮網絡設備和服務器,要么有意制造大量無法完成的不完全請求來快速消耗服務器資源。
DDOS的攻擊主要有三類。
第一類是是利用TCP/IP協議的漏洞的攻擊。此類攻擊典型的例子就是Ping of D eath攻擊:.根據TCP/IP的規范,一個包的長度最大為65536字節。盡管一個包的長度不能超過65536字節,但是一個包分成的多個片段的疊加卻能做到。當一個主機收到了長度大于65536字節的包時,就是受到了Ping of Death攻擊,該攻擊會造成主機的宕機。此類攻擊的另一個典型攻擊就是Teardrop攻擊:IP數據包在網絡傳遞時,數據包可以分成更小的片段。攻擊者可以通過發送兩段(或者更多)數據包來實現TearDrop攻擊。第一個包的偏移量為0,長度為N,第二個包的偏移量小于N。為了合并這些數據段,TCP/IP堆棧會分配超乎尋常的巨大資源,從而造成系統資源的缺乏甚至機器的重新啟動。
第二類是利用給定的TCP/IP協議棧軟件的弱點的攻擊。此類攻擊最流行的是SYN攻擊。SYN工作的原理就是利用TCP協議的“三次握手”過程進行攻擊。該攻擊以多個隨機的源主機地址向目的主機發送SYN包,而在收到目的主機的SYN ACK后并不回應,這樣,目的主機就為這些源主機建立了大量的連接隊列,而且由于沒有收到ACK一直維護著這些隊列,造成了資源的大量消耗而不能向正常請求提供服務。
第三類是不斷嘗試的野蠻攻擊。Smurf是一種野蠻但簡單有效的DDOS攻擊技術:它利用了ICM P(Internet Control M essage Protocol Internet控制信息協議)。該攻擊向一個子網的廣播地址發一個帶有特定請求(如ICMP回應請求)的包,并且將源地址偽裝成想要攻擊的主機地址。子網上所有主機都回應廣播包請求而向被攻擊主機發包,使該主機受到攻擊。
二、DDOS攻擊檢測及防范策略
1.DDOS攻擊檢測方法
DDOS與DOS在攻擊本質上并沒有區別,無非是發送海量數據包淹沒目標主機,耗盡目標主機的帶寬與資源。所不同的是,DDOS攻擊在手段上更為隱蔽,成功率也更高,使得對其的檢測十分困難,也更難以防范。
進行DDOS攻擊檢測有異常檢測和誤用檢測兩種方式。
異常檢測(Anomaly Detection)也稱為基于行為的入侵檢測。通過為用戶、進程或網絡流量等處于正常狀態時的特征建立參考模型(Profile),然后將其當前行為特征同已建立的正常行為模型比較,若存在較大偏差,則認為發生異常,存在攻擊行為。誤用檢測(Misuse Detection)也稱為基于知識的入侵檢測或基于簽名的入侵檢測。首先建立已知各種攻擊的特征(也稱為攻擊簽名)庫,然后將用戶的當前行為依次同庫中的各種攻擊簽名(Attack Signature)進行比較,如果匹配,則可以確定發生入侵行為。
這二種檢測技術各有優缺點,所以,在近年來,有不少專家提出將這兩種檢測技術結合,即混合檢測,用以檢測新的,未知的攻擊方法。
2.DDOS攻擊防范策略
DDOS攻擊給網絡安全帶來的嚴峻形勢及頻頻出現的攻擊事件引起了人們的普遍關注。最近幾年出現了大量的DDOS攻擊防御機制,這些防御機制有一些是專門針對具體的攻擊種類設計的,有一些試圖從整體上解決DDOS攻擊防御問題。然而,相關的研究表明,完全防御或阻止DDOS攻擊是不可能的,但通過一些技術手段,可以有效地阻止DDOS攻擊,降低攻擊的危害。
從前面對DDOS攻擊的原理和方法分析中可以看出,防范DDOS攻擊可以從提高系統的整體性能和追蹤攻擊源兩個方面入手進行。
防范DDOS攻擊首先要保持良好的心態,“從戰略上藐視敵人”,不必因DDOS攻擊而成天擔驚受怕。當然得從“戰術上重視亂人”,為防范DDOS攻擊要保持高度的警惕性、責任心和創造性;黑客入侵用來作為攻擊工具的主機是DDOS攻擊的中間環節,加強中間環節的網絡安全對防范DDOS攻擊非常重要;優化路由及網絡結構,加強與網絡服務商的合作,優化對外提供服務的主機、使用密碼并經常性的檢查系統等都是從提高系統的整體性能的角度防范DDOS攻擊。
一旦遭受DDOS攻擊,應立即斷開服務器與internet的連接或者關閉系統,并盡快追蹤攻擊包,通過統計的方法或與ISP聯系,獲得攻擊源,通過法律的方法來保障系統的安全。
三、小結
預防和控制DDOS不是某一方面的力量單獨可以完成的,需要ISP、用戶及中間各環節的通力合作。雖然目前沒有辦法從根本上解決DDOS攻擊問題,但是我們可以盡量減少DDOS攻擊的發生,或者將DDOS所產生的危害盡量減至最小。
[參考文獻]
[1]胥秋華:《DDOS攻擊防御關鍵技術的研究》,申請上海交通大學碩士學位論文。
[2]楊洪春:《DDOS原理、現象及防御方法》,《黃石教育學院學報》第23卷第3期。
[3]劉克勝等:《一種新的DDOS攻擊及其防護措施》,《網絡安全技術與應用》2003年3月。
[4]崔永君、張永花:《基于DDOS攻擊的研究》,《計算機時代》2007年3月。
[5]吳虎等:《對DDOS攻擊防范策略的研究及若干實現》,《計算機應用研究》2002年8月。