[摘 要]分布式拒絕服務攻擊(Dist ributed Denial of Service,DDoS)是近年來對Internet具有巨大影響的惡意攻擊方式,給互聯網業務帶來了不可估量的損失。互聯網的攻擊手段層出不窮,而分布式拒絕服務攻擊是其中的佼佼者,由于其簡單、破壞性很大,而被攻擊者廣泛使用。DDoS攻擊分析和防御方法是當前網絡安全領域的重要前沿。本文闡述了DoS攻擊的原理和DDoS攻擊的原理,提出了DDoS的防御措施。
[關鍵詞]DoS DDoS TCP/IP
[中圖分類號]TP [文獻標識碼]A [文章編號]1009-5489(2009)02-0077-02
一、DDoS攻擊和防御的國內外現狀
DDoS攻擊最早出現在1999年夏天,Minnes2sota大學一臺服務器遭到攻擊,超過200個系統參與攻擊,系統服務中斷2天。在各種攻擊手段中,拒絕服務攻擊是最常用的攻擊手段。表1為常見的攻擊種類及其所占比例。

DDoS攻擊由于實現簡單,難于防范和破壞極大而廣泛被應用。其主要應用了TCP/IP協議的本身漏洞和不足,通過大量消耗受攻擊者的資源或網絡帶寬,導致網絡或系統不勝負荷以至于癱瘓而停止提供正常的網絡服務,使合法用戶不能訪問或使用該資源,造成拒絕服務攻擊。2000年1月下旬,來自全美國的網絡安全專家們在加利福尼亞舉行的第6次RSA安全會議上討論了這種攻擊并試圖制定對付措施。
二、DDoS攻擊
1.DDoS攻擊的定義和過程
分布式拒絕服務(DDoS:DistributedDenial of Service)攻擊指借助于客戶/服務器技術,將多個計算機聯合起來作為攻擊平臺,對一個或多個目標發動DoS攻擊,從而成倍地提高拒絕服務攻擊的威力。
分布式拒絕服務攻擊由真正的攻擊者、攻擊控制機(能夠控制多個代理機)、攻擊代理機(負責向目標主機發送大量的數據報流)、目標主機四個部分構成。DDoS攻擊過程如下:①探測。攻擊者掃描大量主機,以尋找可入侵的主機目標,用來實施攻擊;②入侵。攻擊者入侵有安全漏洞的主機并獲取控制權,在每臺入侵主機中安裝攻擊程序,同時進行偽裝,防止被發現;③通信。攻擊代理機會通過攻擊控制機告訴攻擊者它們已經準備就緒,隨時等待攻擊命令;④攻擊。攻擊者發布攻擊命令,開始對目標主機攻擊。復雜有效的DDoS工具包對于潛在的攻擊者很容易得到,網站遭受DoS或DDoS攻擊的危險性越來越大。比較著名的DDoS工具有Trinoo,TFN,Stacheldraht,TFNZK,mstream and Shaft。
2.DDoS攻擊的分類
目前DDoS攻擊主要分為帶寬耗盡型和資源耗盡型兩類(見附圖):帶寬耗盡型主要是指以極大的通信量沖擊網絡,使得所有可用網絡資源都被消耗殆盡,最后導致合法的用戶請求無法通過。帶寬攻擊又可以分為洪泛攻擊和放大攻擊;資源耗盡型是攻擊者利用服務器的處理能力是有限的,盡可能多的發送數據報,接近服務器的處理消息的極限,消耗目標服務器的關鍵資源,例如CPU、內存等,導致無法提供正常服務。這種攻擊也分為利用協議攻擊和非法包結構攻擊兩種類型。DDoS攻擊還可以根據兩種不同的攻擊策略來進行分類,即直接攻擊和反射攻擊。直接攻擊已經在前面敘述過。反射攻擊是利用中間結點作為反射器,間接發動
攻擊。反射器是具有合法IP的主機,當向它發送一個消息包時,它將立即回應一個消息包。
三、DDoS防范相關應用技術
1.DDoS難以跟蹤原因
網站被DDoS攻擊后,卻很難跟蹤到攻擊的來源。這是因為入侵者使用了一種叫“偽IP(IP spoofing)”的技術。當計算機之間相互通信時,會將信息打成“包”,每一個包中都包含源IP地址和目的IP地址。當數據包在Internet中傳遞時,首先會遇到最近的一個路由器,此路由器位于局域網與Internet的連接處,又叫邊界路由器。當數據包到達邊界路由器后,再由此路由器傳遞到上一級核心路由器上,這個路由器可能位于主干網上,連接著所有其他的核心路由器。數據包在路由器之間傳遞,直到目的地址為止。在每次傳遞時,源IP目的地址通常被路由器忽略,僅僅是保留在數據包中不作處理,路由器只關心數據的目的地址。因此才產生了現在面臨的問題:所有的DDoS攻擊,都使用偽IP技術。
2.DDoS攻擊檢測方法
DDoS攻擊的表現形式主要有兩種,一種為流量攻擊,主要是針對網絡帶寬的攻擊,即大量攻擊包導致網絡帶寬被阻塞,合法網絡包被虛假的攻擊包淹沒而無法到達主機;另一種為資源耗盡攻擊,主要是針對服務器主機的攻擊,即通過大量攻擊包導致主機的內存被耗盡或CPU被內核及應用程序占完而造成無法提供網絡服務。如何判斷網站是否遭受了DDoS攻擊?
(1)安裝入侵檢測系統
可以在網絡系統內安裝入侵檢測系統,通過它對網絡數據流的檢測或對主機的活動情況進行監測來發現系統是否受到攻擊,當受到攻擊時,系統自動報警。
(2)使用Ping、Netstat-na命令來測試
相對于流量攻擊,資源耗盡攻擊較容易判斷。假如平時Ping網站主機和訪問網站都是正常的,突然發現網站訪問非常緩慢或無法訪問,而還可以Ping通,則很可能遭受了資源耗盡攻擊。此時若在服務器上用Netstat-na命令觀察到有大量的SYN_RECEIVED、TIME_WA IT、F IN _WA IT_1等狀態存在,而ESTABL ISHED很少,則可判定肯定是遭受了資源耗盡攻擊。還有一種屬于資源耗盡攻擊的現象,Ping不通自己的網站主機或是丟包嚴重,而Ping接在同一交換機上的服務器則正常。原因是網站主機遭受攻擊后,導致系統內核或某些應用程序CPU利用率達到100%無法回應Ping命令。
3.抵御DDoS攻擊的措施
完全杜絕DDoS攻擊目前是不可能的,基于攻擊和防御都有的成本開銷,通過適當的辦法增強抵御DDoS的能力,也就意味著加大了攻擊者的攻擊成本,那么絕大多數攻擊者將無法繼續下去而放棄,相當于成功的抵御了DDoS攻擊。以下為抵御DDoS比較有效的方法。
(1)采用高性能的網絡設備
首先在選擇路由器、交換機、硬件防火墻等設備的時候要盡量選用知名度高、口碑好的產品。假如和網絡提供商(ISP)有特殊關系或協議的話就更好了,當大量攻擊發生的時候請他們在網絡接點處做一下流量限制來對抗某些種類的DDoS攻擊是非常有效的。
(2)盡量避免采用NAT的使用
無論是路由器還是硬件防護墻設備要盡量避免采用網絡地址轉換NAT的使用,因為NAT需要對地址來回轉換,轉換過程中需要對網絡包的校驗和進行計算,浪費了很多CPU的時間,會降低網絡通信能力。
(3)充足的網絡帶寬保證
網絡帶寬直接決定了能抗受攻擊的能力,假若僅僅有l0m帶寬的話,無論采取什么措施都很難對抗現在的SYNFlood攻擊,當前至少要選擇loom的共享帶寬,最好的當然是掛在l00M的主干上了。
(4)把網站做成靜態頁面
網站做成靜態頁面,不僅能大大提高抗攻擊能力,而且還給黑客入侵帶來不少麻煩。若一定需要動態腳本調用,建議把它裝到另外一臺單獨主機去,免得受攻擊時連累主服務器。
(5)增強操作系統的TCP/IP棧
TCP/IP堆棧負責處理傳入和傳出的IP數據包,并將數據包中的數據路由轉到要處理它們的應用程序。MicrosoftWin2000版本允許配置其操作系統,以抵御網絡級別的大多數拒絕服務攻擊。啟用SYN攻擊保護值位于HKEY_LOCAL_MACH INE\SYSTEM\CurrentControlSet\Services下面,設置建議值如表1所示,使用表中的值可獲得最大程度的保護。抵御ICMP攻擊值位于注冊表HKLM\System\CurrentControlSet\信息化論壇信息技術與信息化。
(6)安裝專業防火墻
防火墻是防御DDoS攻擊最有效的辦法。防火墻中防御DDoS攻擊的主流技術主要有兩種:連接監控(TCP Interception)和同步網關(SYN Gateway)兩種。從性能上相比,同步網關方式的防火墻的工作性能相對好些。
(7)速率限制法
Ratul等人從流量控制的角度研究了阻止DDoS攻擊的方法。當發生DDoS攻擊時,被攻擊網絡的邊界路由器會發生擁塞,從而產生丟包現象。從被丟棄的包中提取流量的特征,將符合此特征的網絡包匯聚成一個或多個數據流,通過限制這些數據流的速率,從而達到阻止DDoS攻擊的目的。
四、結束語
目前,DDoS攻擊已成為網絡安全的主要威脅。隨著各種DDoS攻擊的不斷出現,DDoS的防御技術也在不斷發展。雖然由于TCP/IP協議本身和網絡開放式架構,還沒有一種能從根本上解決DDoS攻擊的方法,但通過應用各種安全和保護策略,可以在一定程度上減少被攻擊的可能性以及在一定程度上防御DDoS攻擊。
[參考文獻]
[1]林棟:《拒絕服務攻擊(DOS)的攻與防》,《廣東通信技術》2006年4月。
[2]朱良:《DOS攻擊與防范》,《計算機應用研究》2006年7月。
[3]葛麗娜、賀忠華:《拒絕服務攻擊行為的分析與防范》,《廣西民族學院學報》2007年2月。
[4]楊學良、張占軍:《分布式多媒體計算機系統教程》,電子工業出版社2006年版。
[5]《計算機工程與應用》,2007年12月。
[6]劉利、蘇德富:《基于路由器的DDoS攻擊防御系統的設計》,《計算機應用》2008年8月。
[7]曹愛娟、劉寶旭、許榕生:《抵御攻擊的陷阱系統DDoS》,《計算機工程》2007年1月。