DDoS 攻擊技術分析與防禦

隨着 COVID-19 的出現,各行各業需要適應遠程工作以及對互聯網連接變得日益依賴,越來越多類型的企業成爲了 DDoS 攻擊組織誘人且有利可圖的目標。根據提供分佈式拒絕服務攻擊(DDoS)緩解服務的多家公司統計,2020 年疫情驅動之下,DDoS 攻擊規模、頻率,以及受害者數量和多樣性均突破歷史極值,2020 年是 DDoS 攻擊紀錄頻頻被破的一年。阿卡邁公司在報告中表示:2020 年出現了全球最大型 DDoS 敲詐勒索攻擊,受害客戶比以往任何一年都多,每秒百萬包數(Mpps)突破歷史紀錄,正在遭受或即將遭受攻擊而急需防護的新客戶數量也創了歷史新高。本文系統的對 DDoS 攻擊進行技術分析和檢測防禦方法介紹,以便提升企業網絡安全防護水平。

(1) DoS 攻擊:(Denial of Service) 拒絕服務攻擊,這種攻擊行爲是使目標服務器充斥大量要回復的信息,消耗網絡帶寬或系統資源,導致網絡或系統不勝負荷而停止提供正常的網絡服務。

( 2 ) DDoS 攻擊:(Distributed Denial of Service) 分佈式拒絕服務攻擊,這種是攻擊者利用 Internet 上現有機器及系統的漏洞,攻佔大量聯網主機 (俗稱肉雞),使其成爲攻擊者的代理。當被控制的機器達到一定數量後,攻擊者通過發送指令操縱這些攻擊機同時向目標主機或網絡發起 DoS 攻擊,大量消耗其網絡帶寬和系統資源,導致該網絡或系統癱瘓或停止提供正常的網絡服務。由於 DDoS 的分佈式特徵,它具有了比 DoS 遠爲強大的攻擊力和破壞性。

圖 1  DDoS 攻擊示意圖

如圖 2 所示,一個比較完善的 DDoS 攻擊體系分成四大部分,分別是攻擊者 (attacker 也可以稱爲 master)、控制傀儡機( handler)、攻擊傀儡機(demon,又可稱 agent) 和受害着(victim)。第 2 和第 3 部分,分別用做控制和實際發起攻擊。第 2 部分的控制機只發布令而不參與實際的攻擊,第 3 部分攻擊傀儡機上發出 DDoS 的實際攻擊包。對第 2 和第 3 部分計算機,攻擊者有控制權或者是部分的控制權,並把相應的 DDoS 程序上傳到這些平臺上,這些程序與正常的程序一樣運行並等待來自攻擊者的指令,通常它還會利用各種手段隱藏自己不被別人發現。在平時,這些傀儡機器並沒有什麼異常,只是一旦攻擊者連接到它們進行控制,併發出指令的時候,攻擊愧儡機就成爲攻擊者去發起攻擊了。

圖 2  分佈式拒絕服務攻擊體系結構

之所以採用這樣的結構,一個重要目的是隔離網絡聯繫,隱藏保護攻擊者,使其不會在攻擊進行時受到監控系統的跟蹤。同時也能夠更好地協調進攻,因爲攻擊執行器的數目太多,同時由一個系統來發布命令會造成控制系統的網絡阻塞,影響攻擊的突然性和協同性。而且,流量的突然增大也容易暴露攻擊者的位置和意圖。整個過程可分爲:

( 1 ) 掃描大量主機以尋找可入侵主機目標;

( 2 ) 有安全漏洞的主機並獲取控制權;

當受控制的攻擊代理機達到攻擊者滿意的數量時,攻擊者就可以通過攻擊主控機隨時發出擊指令。由於攻擊主控機的位置非常靈活,而且發佈命令的時間很短,所以非常隱蔽以定位。一旦攻擊的命令傳送到攻擊操縱機,主控機就可以關閉或脫離網絡,以逃避追蹤要着,攻擊操縱機將命令發佈到各個攻擊代理機。在攻擊代理機接到攻擊命令後,就開始向目標主機發出大量的服務請求數據包。這些數據包經過僞裝,使被攻擊者無法識別它的來源面,並且這些包所請求的服務往往要消耗較大的系統資源,如 CPU 或網絡帶寬。如果數百臺甚至上千臺攻擊代理機同時攻擊一個目標,就會導致目標主機網絡和系統資源的耗盡,從而停止服務。有時,甚至會導致系統崩潰。

另外,這樣還可以阻塞目標網絡的防火牆和路由器等網絡設備,進一步加重網絡擁塞狀況。於是,目標主機根本無法爲正常用戶提供任何服務。攻擊者所用的協議都是一些非常常見的協議和服務。這樣,系統管理員就難於區分惡意請求和正常連接請求,從而無法有效分離出攻擊數據包,提升防禦難度。

分佈式拒絕服務攻擊的精髓是:利用分佈式的客戶端,向目標發起大量看上去合法的請求,消耗或者佔用大量資源,從而達到拒絕服務的目的。按照攻擊對象的不同,將 DDoS 的攻擊方式分成 4 類,分別是攻擊網絡帶寬、攻擊系統、攻擊應用、混合攻擊。

由於網絡帶寬是有限的,攻擊者利用分佈式的傀儡主機向目標網絡發送大量的網絡數據包,佔滿被攻擊者的全部帶寬,從而造成正常請求無法響應。具體內容如圖 2.1。

直接攻擊是指攻擊者利用控制的大量主機對受害者發送大量的數據流量,使得受害者的網絡帶寬被佔據,並大量消耗服務器和網絡設備的處理能力,達到拒絕服務攻擊的目的。例如 ICMP/IGMP 洪水攻擊,UDP 洪水攻擊等都是典型的 DDoS 直接攻擊方式。

直接攻擊不僅效率低而且容易被追蹤,所以攻擊者更多地選擇反射攻擊。反射攻擊又稱 DRDoS(DistributedReflectionDenialofService,分佈式反射拒絕服務),是指攻擊者利用路由器、服務器等設施對請求產生應答,從而反射出大量的流量對受害者進行攻擊的一種 DDoS 攻擊方式。這種攻擊方式隱蔽,更大危害還來自於使用反射過程的放大。放大是一種特殊的反射攻擊,其特殊之處在於反射器對於網絡流量具有放大作用,可以將攻擊者較小的流量放大成較大流量,從而造成更加嚴重的帶寬消耗。

攻擊鏈路與前面提到的攻擊方法不同,攻擊對象不是服務器而是骨幹網絡上的帶寬資源。一種典型的鏈路攻擊方式是 Coremelt 攻擊。首先,攻擊者通過 traceroute 等手段確定各個殭屍主機與攻擊鏈路之間的位置關係。然後,由攻擊者將殭屍網絡分成兩部分,並控制這兩部分之間通過骨幹網絡進行通信。大量的數據包通過骨幹網絡,將會造成骨幹網絡的擁堵和延時。從骨幹網絡上來看,通過網絡的數據包是真實存在的,並沒有任何有效的方式將真正的數據包與拒絕服務攻擊的數據區分開來,這樣使得這種攻擊方式更加隱蔽和難以防範。

圖 3  攻擊網絡帶寬資源

2.2 攻擊系統資源

TCP 是一種面向連接的、可靠的、基於字節流量的傳輸層控制協議。由於在設計之初考慮更多的是協議的可用性,缺乏對協議的安全性進行周密比較和詳細描述,因此 TCP 協議存在許多安全缺陷和安全問題。TCP 連接洪水攻擊的原理,就是在建立三次握手過程中,服務器會創建並保存 TCP 連接信息,該信息會被保存在連接表中。但是,連接表中的空間是有限的,一旦連接表中存儲的數據超過了其最大數目,服務器就無法創建新的 TCP 連接。攻擊者利用大量的受控主機,佔據連接表中所有空間,使得目標無法建立新的 TCP 連接。當大量的受控主機進行攻擊時,其攻擊效果非常明顯。攻擊手段主要有:SYN 洪水攻擊、PSH+ACK 洪水攻擊、RST 攻擊、Sockstress 攻擊等。

2.2.2  攻擊 SSL 連接

安全套接字 (SecureSocketsLayer,SSL) 是爲網絡通信協議提供安全及數據完整性的一種安全協議。其在傳輸層對數據進行加密,然而 SSL 協議在加密、解密和密鑰協商的過程中會消耗大量的系統資源。SSL 洪水攻擊的原理,就是在 SSL 握手過程中,無論接收的數據是否有效,只能先進行解密才能進行驗證,所以攻擊者利用這個特性,向被攻擊者發送大量的無用數據,消耗目標大量的計算資源。

圖 4  攻擊系統資源

2.3.1  攻擊 DNS 服務

DNS 服務是網絡服務中一項核心服務,對 DNS 服務器攻擊造成的影響更具威脅性。針對 DNS 服務器的攻擊,主要有 DNSQUERY 洪水攻擊和 DNSNXDOMAIN 攻擊兩類。DNSQUERY 洪水攻擊是利用大量的查詢請求,使得 DNS 服務器進行大量查詢,消耗其大量的計算和存儲資源,使得 DNS 服務器的服務質量下降,甚至完全停止服務。在發起該攻擊方式時,考慮到 DNS 服務器的查詢方式,需要發送大量的不同域名的地址查詢,而且儘量不要選擇存儲在 DNS 緩存記錄裏面的域名。DNSNXDO-MAIN 攻擊是 DNSQUERY 洪水攻擊的一種變種,後者攻擊時發送的是真實的域名地址,前者則發送大量不存在的域名地址,使得 DNS 服務器進行大量遞歸查詢,從而使得正常的請求速度變慢,甚至是拒絕服務。

2.3.2  攻擊 Web 服務

隨着 Web 的迅速發展,人們的生活因此而變得方便快捷,大量的商務也因此更加方便。所以一旦 Web 服務器遭到拒絕服務攻擊,那麼就會對其承載的大量服務造成巨大的影響。攻擊 Web 服務器,常用的手段包括 HTTP(s) 洪水攻擊、Slowloris 攻擊、慢速 POST 請求攻擊、數據處理過程攻擊等。

圖 5  攻擊應用資源

3.1 檢測原理

常見的入侵檢測方法分爲誤用檢測和異常檢測兩種。

誤用檢測主要是根據已知的攻擊特徵直接檢測入侵行爲。首先對異常信息源建模分析提取特徵向量,根據特徵設計針對性的特徵檢測算法,若新數據樣本檢測出相應的特徵值,則發佈預警或進行反應。

優點:特異性,檢測速度快,誤報率低,能迅速發現已知的安全威脅。

缺點:需要人爲更新特徵庫,提取特徵碼,而攻擊者可以針對某一特徵碼進行繞過。

異常檢測主要是檢測偏離正常數據的行爲。首先對信息源進行建模分析,創建正常的系統或者網絡的基準輪廓。若新數據樣本偏離或者超出當前正常模式輪廓,異常檢測系統就發佈預警或進行反應。由於檢測系統是根據正常情況定製描繪出系統或網絡的正常輪廓,對於外部攻擊,攻擊者很難在攻擊時不偏離正常輪廓,因此很容易被異常檢測系統偵測到;同理,異常檢測系統也可以檢測來自內部的攻擊。另外,異常檢測系統還有能力檢測以前未知的攻擊。

優點:異常檢測旨在發現偏離,而不是具體入侵特徵,因而通用性較強,對突發的新型異常事件有很好的預警作用,利於人們宏觀防禦,目前大部分網絡異常流量檢測系統均採用異常檢測系統。

缺點:首先只有對初始系統進行訓練,才能創建正常的輪廓模型;其次,調整和維護輪廓模型也較爲複雜和耗時,創建錯誤的輪廓模型可能導致較高的誤報率。最後,一些精心構造惡意攻擊,可利用異常檢測訓練系統使其逐漸接受惡意行爲,造成漏報。

3.2 檢測方法

一般檢測 DDoS 攻擊依靠網絡流量實時監測系統或者業務系統本身運行狀態參數。具體檢測方法如下:

3.2.1  基於網絡流量實時監測系統

(1) 發現網絡流量突然暴增,出現異常變化。

( 2 ) 個別網絡協議(如:ICMP、UDP、TCP;HTTP、DNS 等)突然暴增。

( 3 ) 出現相同源地址的大量數據包、大量垃圾數據包。

3.2.2  基於設備運行狀態

( 1 ) 監控業務系統性能,網絡設備、服務器 CUP 佔用率突然增高。

( 2 ) 業務系統的業務請求連接突然大量增加。

( 3 ) 服務器出現大量垃圾數據包。

( 4 ) 將服務器網絡斷開後,異常狀態消失。

3.3 防禦方法

隨着這幾年 DDoS 攻擊越來越智能化,發起 DDoS 攻擊不再需要很高的技術能力,在很多提供在線攻擊服務的網站上只要支付幾美元,然後輸入 IP 或域名,就可以對目標發起 DDoS 攻擊。2020 年 5G 網絡的商業化導致未來智能物聯網設備越來越多,殭屍網絡 “肉雞” 規模將越來越大,成本將越來越低,這直接導致 DDoS 攻擊頻率將不斷提升。企業想要保障服務器穩定運行,必須重視網絡安全防護,接入專業的高防服務,比如遊盾雲防護 DDoS 高防,基於雲計算的分佈式集羣防禦搭建,每個節點服務器配置多個 IP 地址,T 級的 DDoS 防禦流量保障服務器穩定運行。特別是電商、金融、培訓、美容、遊戲等 DDoS“重災區”行業,更應該重視網絡安全防護,避免因 DDoS 攻擊導致業務中斷造成經濟損失和用戶流失。

一般 DDoS 攻擊防禦方法如下:

( 1 ) 過濾不必要的服務和端口:可以使用 Inexpress、Express、Forwarding 等工具來過濾不必要的服務和端口,即在路由器上過濾假 IP。比如 Cisco 公司的 CEF(Cisco Express Forwarding) 可以針對封包 Source IP 和 Routing Table 做比較,並加以過濾。只開放服務端口成爲目前很多服務器的流行做法,例如 www 服務器那麼只開放 80 而將其他所有端口關閉或在防火牆上做阻止策略。

( 2 ) 異常流量的清洗過濾:通過 DDoS 硬件防火牆對異常流量的清洗過濾,通過數據包的規則過濾、數據流指紋檢測過濾、及數據包內容定製過濾等頂尖技術能準確判斷外來訪問流量是否正常,進一步將異常流量禁止過濾。單臺負載每秒可防禦 800-927 萬個 syn 攻擊包。

( 3 ) 分佈式集羣防禦:這是目前網絡安全界防禦大規模 DDoS 攻擊的最有效辦法。分佈式集羣防禦的特點是在每個節點服務器配置多個 IP 地址(負載均衡),並且每個節點能承受不低於 10G 的 DDoS 攻擊,如一個節點受攻擊無法提供服務,系統將會根據優先級設置自動切換另一個節點,並將攻擊者的數據包全部返回發送點,使攻擊源成爲癱瘓狀態,從更爲深度的安全防護角度去影響企業的安全執行決策。

四、結論

隨着全球互聯網業務和雲計算的發展熱潮,可以預見到,針對特定服務、大小型企業甚至公共和非營利組織的 DDoS 攻擊頻率還會大幅度增長,攻擊手段也會更加複雜。雖然無法完全阻止 DDoS 攻擊的發生,但一些有效的 DDoS 攻擊保護技術和方法可用於增強基礎設施抵禦 DDoS 攻擊並減輕其後果。有效地對付 DDoS 攻擊是一個系統工程,不僅需要技術人員去探索新的防護手段,網絡使用者也要具備網絡攻擊基本的防護意識,只有將技術手段和人員素質結合到一起才能最大限度的發揮網絡防護的效能。

https://blogs.akamai.com/2021/01/part-i-retrospective-2020-DDoS-was-back-bigger-and-badder-than-ever-before.html

https://mp.weixin.qq.com/s/0uN5vCU2ElmVC4-Ly7GeNw

https://blog.csdn.net/Gerald_Jones/article/details/82015302

https://www.safedog.cn/news.html?id=3952

https://mp.weixin.qq.com/s/05lV77pF0B44m6Jrsama7A

來源:網絡安全應急技術國家工程實驗室

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/qD6B9hUm-bsIjTy_JDOFHA