阻斷服務攻擊

阻斷服務攻擊(英語:denial-of-service attack,簡稱DoS攻擊),是一種網路攻擊手法,其目的在於使目標電腦的網路系統資源耗盡,使服務暫時中斷或停止,導致其正常用戶無法訪問。

「阻斷服務攻擊」的各地常用名稱
中國大陸拒絕服務攻擊
臺灣阻斷服務攻擊

駭客使用網絡上兩個或以上電腦向特定的目標發動「拒絕服務」式攻擊時,稱為分散式阻斷服務攻擊distributed denial-of-service attack,簡稱DDoS攻擊)亦稱洪水攻擊,意在使阻止攻擊變得更加困難。據2014年統計,被確認為大規模DDoS的攻擊已達平均每小時28次。[1]DDoS發起者一般針對重要服務和知名網站進行攻擊,如銀行、信用卡支付網關、甚至根域名服務器等。

DDoS 攻擊示意圖。請注意多台計算機如何攻擊一台計算機

DoS也常見於部分網絡遊戲,被心懷不滿的玩家或是競爭對手廣泛使用。DoS也常被用於抗議,自由軟體基金會創辦人理查德·斯托曼曾表示,DoS是「網絡街頭抗議」的一種形式。[2]

攻擊現象

美國國土安全部旗下的美國電腦緊急應變小組英語United States Computer Emergency Readiness Team(US-CERT)[3]定義的拒絕服務攻擊症狀包括:

  1. 網絡異常緩慢(打開文件或訪問網站)
  2. 特定網站無法訪問
  3. 無法訪問任何網站
  4. 垃圾郵件的數量急劇增加

拒絕服務的攻擊也可能會導致目標計算機同一網絡中的其他計算機被攻擊,互聯網局域網之間的帶寬會被攻擊導致大量消耗,不但影響目標計算機,同時也影響局域網中的其他電腦。如果攻擊的規模較大,整個地區的網絡連接都可能會受到影響。

攻擊方式

DoS攻擊可以具體分成三種形式:頻寬消耗型、資源消耗型、漏洞觸發型。前兩者都是透過大量合法或偽造的請求占用大量網絡以及器材資源,以達到癱瘓網絡以及系統的目的。而漏洞觸發型,則是觸發漏洞導致系統崩潰癱瘓服務。

頻寬消耗型攻擊

DDoS頻寬消耗攻擊可以分為兩個不同的層次;洪泛攻擊或放大攻擊。洪泛攻擊的特點是利用殭屍程序發送大量流量至受損的受害者系統,目的在於堵塞其寬帶。放大攻擊與其類似,是通過惡意放大流量限制受害者系統的寬帶;其特點是利用殭屍程序通過偽造的源IP(即攻擊目標IP)向某些存在漏洞的服務器發送請求,服務器在處理請求後向偽造的源IP發送應答,由於這些服務的特殊性導致應答包比請求包更長,因此使用少量的寬帶就能使服務器發送大量的應答到目標主機上。

UDP洪水攻擊(User Datagram Protocol floods)
UDP(用戶數據報協議)是一種無連接協議,當數據包通過UDP發送時,所有的數據包在發送和接收時不需要進行握手驗證。當大量UDP數據包發送給受害系統時,可能會導致帶寬飽和從而使得合法服務無法請求訪問受害系統。遭受DDoS UDP洪泛攻擊時,UDP數據包的目的端口可能是隨機或指定的端口,受害系統將嘗試處理接收到的數據包以確定本地運行的服務。如果沒有應用程序在目標端口運行,受害系統將對源IP發出ICMP數據包,表明「目標端口不可達」。某些情況下,攻擊者會偽造源IP地址以隱藏自己,這樣從受害系統返回的數據包不會直接回到殭屍主機,而是被發送到被偽造地址的主機。有時UDP洪泛攻擊也可能影響受害系統周圍的網絡連接,這可能導致受害系統附近的正常系統遇到問題。然而,這取決於網絡體系結構和線速。
ICMP洪水攻擊(ICMP floods)
ICMP(互聯網控制消息協議)洪水攻擊是通過向未良好設置的路由器發送廣播信息占用系統資源的做法。

資源消耗型攻擊

協議分析攻擊(SYN flood,SYN洪水)
傳送控制協議(TCP)同步(SYN)攻擊。TCP進程通常包括發送者和接受者之間在數據包發送之前建立的完全信號交換。啟動系統發送一個SYN請求,接收系統返回一個帶有自己SYN請求的ACK(確認)作為交換。發送系統接着傳回自己的ACK來授權兩個系統間的通訊。若接收系統發送了SYN數據包,但沒接收到ACK,接受者經過一段時間後會再次發送新的SYN數據包。接受系統中的處理器和內存資源將存儲該TCP SYN的請求直至超時。DDoS TCP SYN攻擊也被稱為「資源耗盡攻擊」,它利用TCP功能將殭屍程序偽裝的TCP SYN請求發送給受害服務器,從而飽和服務處理器資源並阻止其有效地處理合法請求。它專門利用發送系統和接收系統間的三向信號交換來發送大量欺騙性的原IP地址TCP SYN數據包給受害系統。最終,大量TCP SYN攻擊請求反覆發送,導致受害系統內存和處理器資源耗盡,致使其無法處理任何合法用戶的請求。
LAND攻擊
這種攻擊方式與SYN floods類似,不過在LAND攻擊包中的原地址和目標地址都是攻擊對象的IP。這種攻擊會導致被攻擊的機器死循環,最終耗盡資源而死機。
CC攻擊(Distributed HTTP flood,分布式HTTP洪水攻擊)
向受害服務器發送大量貌似合法的請求(通常為HTTP GET)。攻擊者創造性地使用代理服務器,利用廣泛可用的免費代理服務器發動DDoS攻擊。許多免費代理服務器支持匿名,這使追蹤變得非常困難。
2004年,一位匿名為KiKi的中國黑客開發了一種用於發送HTTP請求的DDoS攻擊工具以攻擊名為「Collapsar」的NSFOCUS防火牆,因此該黑客工具被稱為「Challenge Collapsar」(挑戰黑洞,簡稱CC),這類攻擊被稱作「CC攻擊」。[4]
殭屍網絡攻擊
殭屍網絡是指大量被命令與控制英語command and control (malware)(C&C)服務器所控制的互聯網主機群。攻擊者傳播惡意軟件並組成自己的殭屍網絡。殭屍網絡難於檢測的原因是,殭屍主機只有在執行特定指令時才會與服務器進行通訊,使得它們隱蔽且不易察覺。殭屍網絡根據網絡通訊協議的不同分為IRCHTTPP2P類等。
應用程序級洪水攻擊(Application level floods)
與前面敘說的攻擊方式不同,應用程序級洪水攻擊主要是針對應用軟件層的,也就是高於OSI的。它同樣是以大量消耗系統資源為目的,通過向IIS這樣的網絡服務程序提出無節制的資源申請來破壞正常的網絡服務。

漏洞觸發型

這類攻擊手法,透過嘗試觸發緩衝區溢位等漏洞[5],使作業系統發生核心錯誤藍屏死機,達到阻斷服務攻擊。

死亡之Ping(ping of death)
死亡之Ping是產生超過IP協定能容忍的封包數,若系統沒有檢查機制,就會宕機。
淚滴攻擊
每個資料要傳送前,該封包都會經過切割,每個小切割都會記錄位移的資訊,以便重組,但此攻擊模式就是捏造位移資訊,造成重組時發生問題,造成錯誤。

防禦方式

拒絕服務攻擊的防禦方式通常為入侵檢測,流量過濾和多重驗證,旨在堵塞網絡帶寬的流量將被過濾,而正常的流量可正常通過。

防火牆

防火牆可以設置規則,例如允許或拒絕特定通訊協議,端口或IP地址。當攻擊從少數不正常的IP地址發出時,可以簡單的使用拒絕規則阻止一切從攻擊源IP發出的通信。

複雜攻擊難以用簡單規則來阻止,例如80端口(網頁服務)遭受攻擊時不可能拒絕端口所有的通信,因為其同時會阻止合法流量。此外,防火牆可能處於網絡架構中過後的位置,路由器可能在惡意流量達到防火牆前即被攻擊影響。然而,防火牆能有效地防止用戶從啟動防火牆後的計算機發起攻擊。

網絡交換設備自有能力

大多數交換機有一定的速度限制和存取控制能力。有些交換機提供自動速度限制、流量整形、後期連接、深度包檢測和假IP過濾功能,可以檢測並過濾拒絕服務攻擊。例如SYN洪水攻擊可以通過後期連接加以預防。基於內容的攻擊可以利用深度包檢測阻止。

和交換機類似,路由器也有一定的速度限制和存取控制能力。

黑洞引導

黑洞引導指將所有受攻擊計算機的通信全部發送至一個「黑洞」(空接口或不存在的計算機地址)或者有足夠能力處理洪流的網絡設備商,以避免網絡受到較大影響。

流量清洗

當獲取到流量時,通過DDoS防禦軟件的處理,將正常流量和惡意流量區分開,正常的流量則回注回客戶網站,反之則屏蔽。這樣一來可站點能夠保持正常的運作,僅僅處理真實用戶訪問網站帶來的合法流量。

歷史

Panix是世界上第三古老的ISP,被認為是首個 DoS 攻擊的目標。 1996年9月6日,Panix 遭受了SYN 洪水攻擊,導致其服務中斷數日,而硬件供應商(尤其是思科)找到了適當的防禦措施。 DoS攻擊的另一個早期例子是 Khan C. Smith 在1997年的DEF CON活動期間進行的,導致拉斯維加斯大道的互聯網訪問中斷一個多小時。活動期間發布的示例代碼引發了次年對斯普林特、地球連線、E-Trade等大公司的網絡攻擊。 迄今為止最大規模的DDoS攻擊發生在2017年9月,當時谷歌雲遭受了一次峰值量為2.54Tb/s 的攻擊(Google於2020年10月17日透露)。[6]

2020年2月,亞馬遜雲遭受了一次攻擊,攻擊量峰值為2.3Tb/s。  2021年7月,CDN提供商Cloudflare宣稱能夠保護其客戶免受來自全球Mirai殭屍網絡[7]的DDoS攻擊,該攻擊每秒發出高達1720萬個請求。俄羅斯DDoS防禦提供商Yandex表示,它於2021年9月5日阻止了一次HTTP管道DDoS攻擊,該攻擊源自未修補的Mikrotik網絡設備。  2022年上半年,俄烏戰爭極大地影響了網絡威脅格局,各個國家的支持和全球黑客趁機活動導致網絡攻擊大量增加。最引人注目的事件是2月份發生的DDoS攻擊,這是烏克蘭遭遇的最大規模的攻擊,擾亂了政府和金融部門的服務。這波攻擊也波及了英、美、德等西方盟國。

2023年2月,Cloudflare面臨每秒7100萬次請求的攻擊,Cloudflare聲稱這是當時最大的HTTP DDoS 攻擊。(HTTP DDoS 攻擊是通過每秒 HTTP 請求數而不是每秒數據包或每秒位數來衡量的。 )2023年7月10日,同人小說平台Archive of Our OwnAO3)遭遇 DDoS 攻擊,服務中斷。AO3和專家們對一個匿名蘇丹組織表示懷疑,聲稱此次襲擊是出於宗教和政治原因。2023年8月,黑客組織NoName057執行緩慢的DoS攻擊,目標針對多家意大利金融機構。2024年1月14日,在澤倫斯基總統出席達沃斯世界經濟論壇的推動下,他們對瑞士聯邦網站發起了DDoS攻擊。瑞士國家網絡安全中心迅速緩解了此次攻擊,確保聯邦核心服務保持安全,儘管某些網站暫時出現訪問問題。  2023年10月,利用 HTTP/2協議中的新漏洞導致最大HTTP DDoS攻擊記錄被兩度打破,其中一次是Cloudflare觀察到的每秒2.01億次請求的攻擊[8],另一次則是由Google觀察到的每秒3.98億次請求的攻擊[9]

參見

參考來源

  1. ^ Preimesberger, Chris. DDoS Attack Volume Escalates as New Methods Emerge. eWeek. 2014-05-28 [2015-05-09]. (原始內容存檔於2019-07-13). 
  2. ^ The Philosophy of Anonymous. Radicalphilosophy.com. 2010-12-17 [2013-09-10]. (原始內容存檔於2015-09-24). 
  3. ^ McDowell, Mindi. Cyber Security Tip ST04-015 - Understanding Denial-of-Service Attacks. United States Computer Emergency Readiness Team. 2009-11-04 [2013-12-11]. (原始內容存檔於2013-11-04). 
  4. ^ 史上最臭名昭著的黑客工具 CC的前世今生. NetEase. 驅動中國網(北京). 2014-07-24 [2019-03-05]. (原始內容存檔於2019-03-05) (中文(簡體)). 
  5. ^ Denial of Service Software Attack | OWASP Foundation. OWASP. [2022-01-25]. (原始內容存檔於2022-06-27). 
  6. ^ Catalin Cimpanu. Google says it mitigated a 2.54 Tbps DDoS attack in 2017, largest known to date. [2024-12-13]. (原始內容存檔於2024-12-13). 
  7. ^ 什么是 Mirai 僵尸网络?. Cloudflare. [2024-06-26]. (原始內容存檔於2024-06-26) (中文). 
  8. ^ Lucas Pardue; Julien Desgats. HTTP/2 Rapid Reset: deconstructing the record-breaking attack. Cloudflare. [2024-12-13]. (原始內容存檔於2024-12-14). 
  9. ^ Emil Kiner; Tim April. Google mitigated the largest DDoS attack to date, peaking above 398 million rps. Google Cloud. [2024-12-13]. (原始內容存檔於2024-12-13).