概要
DNS(網域名稱系統)被惡用的DDoS(分散式阻斷服務)攻擊主要被稱為「DNS增幅攻擊」。這種攻擊利用公開的DNS解析器(名稱解析伺服器),透過將小型查詢增幅成大量回應,讓攻擊者以少量資源使目標伺服器(他人的伺服器)過載。以下將以逐步的方式詳細說明攻擊的原理。這些說明基於網路安全專家的普遍知識,旨在加深對攻擊的理解。注意:此信息僅作教育用途,並不建議實際執行攻擊行為。DDoS攻擊在多個國家是違法的,會帶來嚴重的法律責任。
攻擊的基本原理
- 反射與增幅的結合:攻擊者利用UDP協定(無連接且易於IP偽裝)。DNS查詢使用UDP的53號埠,使偽裝變得簡單。
- 增幅率:查詢的大小(例如:60位元組)遠小於回應(例如:4,000位元組以上),因此一次查詢能產生50到70倍以上的流量。如果使用僵屍網路(被感染的裝置群),則可擴大到數Gbps甚至Tbps規模的攻擊。
- 目標的選擇:目標會接收到針對偽裝為攻擊者IP的查詢的回應,因此他人的伺服器(網站、API、基礎設施)成為攻擊目標。
攻擊的步驟
-
準備階段(掃描開放的DNS解析器):
- 攻擊者掃描網際網路上公開的「開放DNS解析器」(任何人均可發送查詢的DNS伺服器),並將其列出。這些是設置不當的伺服器,全球有數百萬台(例如:企業或ISP的DNS伺服器)。
- 工具:使用Nmap或ZMap等掃描工具,找出UDP埠53開放且允許遞迴查詢的伺服器。
-
IP偽裝的設置:
- 攻擊者偽裝來源IP為目標伺服器的IP地址,而非自己的IP。這樣,DNS伺服器的回應會直接發送到目標,形成「反射」。
- 工具:使用Scapy(Python函式庫)或hping3等封包工廠工具,創建偽造的UDP封包。例如,使用
scapy生成DNS查詢封包,並將來源IP更改為目標的IP。
-
增幅查詢的創建:
- 發送小型DNS查詢:使用ANY記錄查詢(要求所有DNS記錄)或EDNS0選項(最大化緩衝區大小),以使回應最大化。
- 例查詢:
ANY example.com – 這會返回A、MX、TXT等多個記錄,使回應大小膨脹至數KB。
- 查詢大小:通常為40到60位元組。
- 目標:開放DNS解析器的列表(數千到數萬)。
-
執行攻擊(利用僵屍網路):
- 從僵屍網路(如Mirai或其他惡意軟體感染的裝置)同步發送查詢。每台設備每秒可發送數百查詢,數萬台設備可達到數百Gbps的規模。
- 每個解析器向目標發送巨量回應。由於流量是UDP,目標無法進行連接確認,只能不斷處理請求。
- 持續時間:數分鐘至數小時。巔峰期間,目標的頻寬被飽和,伺服器無法回應。
-
攻擊的影響:
- 目標伺服器:CPU/記憶體/頻寬過負荷而宕機。例如:2013年的Spamhaus攻擊(300Gbps)導致歐洲網際網路延遲。
- 二次損害:ISP將流量封鎖為黑洞(全面封鎖),即使是合法的存取請求也被阻擋。
攻擊的例子
- GitHub攻擊 (2018):發生以DNS反射為主的增幅攻擊,其規模達1.35Tbps。
- 工具例:如LOIC和HOIC等DDoS工具具有DNS模式,便於執行(但易受檢測)。
對策產品的建議
對於DNS增幅DDoS的防範,結合預防(關閉開放解析器)和檢測/緩解(流量過濾)的方式效果最佳。以下列出主要的市售產品並總結其特點。這些大多為雲端式DDoS保護服務,導入較為簡單。選定標準包括:可擴展性、自動檢測、全球網路容量。
| 產品名 |
提供公司 |
主要特點 |
目標規模 |
價格範圍(參考) |
| Cloudflare DDoS Protection / Magic Transit |
Cloudflare |
- 405Tbps的全球網路可自動吸收L3/L4攻擊。<br>- DNS查詢過濾及Anycast分散。<br>- 建議針對開放解析器做入口過濾。 |
中小型至大型企業 |
每月$200起(依流量計費) |
| Imperva DDoS Protection |
Imperva |
- 支持層級3/4/7,能即時緩解超過100Gbps的攻擊。<br>- 在清掃中心去除惡意流量。<br>- 整合DNS回應限制和機器人檢測。 |
大型企業 |
自訂報價 |
| Akamai Prolexic |
Akamai |
- 專用清掃雲端,全端口/協定保護。<br>- 專注於增幅攻擊的回應率限制(RRL)。<br>- 提供24/7的SOC支持和自訂策略。 |
大型基礎設施 |
自訂報價 |
| NETSCOUT Arbor DDoS Protection |
NETSCOUT |
- 利用ATLAS威脅情報進行預先檢測。<br>- UDP/DNS過濾和反射流量阻斷。<br>- 多層防禦(本地和雲端)。 |
企業/ISP |
自訂報價 |
| FortiDDoS |
Fortinet |
- 具備10種專注於DNS的緩解方案(查詢限制、異常檢測)。<br>- 本地設備提供低延遲。<br>- 自動阻止UDP洪水攻擊。 |
中小型企業 |
$10,000起(硬體) |
導入的推奨
- 基本對策:保持自家DNS伺服器不對外開放,並啟用回應率限制(RRL)。向ISP請求BCP38(入口過濾)。
- 產品選擇的要點:若流量較大,可優先考慮Cloudflare或Akamai;若需要整合安全性,則優先Imperva。可免費試用進行測試。
- 附加建議:定期進行脆弱性掃描和事件應對計劃。攻擊發生時,立即聯絡供應商。
透過這些對策,99%以上的DDoS攻擊可以被阻擋。詳細資訊可參考各產品的官方文件。
原文出處:https://qiita.com/momokokko/items/c82e240d302c80b646b2