作者:巫宗翰 / 計算機及資訊網路中心網路組幹事
DDoS(Distributed Denial of Service)中文翻譯為分散式阻斷服務攻擊,為DoS(Denial of Service)(譯:阻斷服務攻擊)的延伸,通常會伴隨Botnet(殭屍網路)進行。大量的殭屍電腦接收攻擊者控制命令,同時間對同一目標發動特定類型攻擊,將被攻擊者網路資源及系統資源耗盡,導致無法提供真正的使用者服務,伺服器看似異常停擺,因此稱作阻斷服務攻擊。由大量殭屍電腦造成的阻斷服務攻擊則稱做分散式阻斷服務攻擊。
DDoS攻擊介紹
如下圖所示,攻擊者取得他人電腦控制權後,他人電腦即成為殭屍電腦(BOT)。攻擊者在同一時間對大量被控制的殭屍電腦下達指令(Control),指令內容為攻擊某台電腦,此被攻擊電腦即受到所有攻擊者轄下的殭屍電腦攻擊, 讓網路使用將近滿載,進而癱瘓該電腦。
DDoS種類可分成下列幾種:
1. SYN flood
此攻擊利用TCP連線「三向式交握(Three-Way Handshake)」特性缺陷,由攻擊者產生不正確的來源端IP位址SYN封包,因此目的端對該位址送出SYN ACK之後,根本就不可能收到請求端的ACK,導致目的端不斷重複發送SYN ACK,大量的SYN ACK會將目的端的網路資源、系統內存、處理器資源耗盡, 進而影響到一般使用者正常存取該系統。
(二) UDP Flood
UDP是一種非連線型的傳輸協定,攻擊者產生任意埠號的UDP封包,目的端接收UDP封包後,須選擇由哪個應用程式來處理此一封包。若無程式可處理UDP封包,目的端主機即會回傳給來源IP—無法到達的ICMP封包,但攻擊者會隱藏自己的來源IP,造成此ICMP封包充斥著整個網路且影響網路頻寬,也造成受攻擊者一直處於尋找可處理UDP封包應用程式及回傳ICMP給錯誤的來源端的忙碌狀態,被攻擊者的網路資源、系統內存、處理器資源也因此耗盡,進而影響到一般使用者正常存取該系統。
(三) ICMP Flood
ICMP的全稱是Internet Control Message Protocol,是一個「錯誤偵測與回報機制」,其目的就是讓我們能夠檢測網路的連線狀況,也能確保連線的準確性。ICMP Flood的攻擊方式是利用Ping of Death,利用Ping的方式,產生超過65536 Bytes的封包攻擊別的主機,65536 Bytes 封包格式超出IPv4規定最大封包大小,導致大部分電腦無法處理,若沒有在交換器上限制這種類非法封包的流動,被攻擊者收到該封包後將導致緩衝區溢出,可能會造成系統當機或是重開。
(四) LAND attack
與 TCP SYN Flood相似,在LAND攻擊的封包中來源和目的端的IP是同一個,導致被攻擊的主機回傳訊息給主機自己本身,造成無窮迴圈的傳輸循環,終至耗盡系統資源而導致系統當機或是重開機。
參考資料
維基百科:分散式阻斷服務攻擊
資安人INFO SECURITY
http://www.informationsecurity.com.tw/article/article_detail.aspx?aid=5477