分散式阻斷服務 (distributed denial-of-service, DDoS) 攻擊,也稱為分散式網路攻擊,是一種網路攻擊(Cyber Attack)手法,目的是中斷或癱瘓伺服器、服務或網路的正常流量。透過 DDoS 攻擊,攻擊者會向目標系統或周圍的系統傳送大量的網路封包。由於目標系統無法預期這種快速暴增的流量,因此無法及時處理,導致正常流量變慢甚至完全停止。
DDoS 攻擊是利用資源在任一時間內可處理請求數量有限的特性來發動攻擊。當流量超過這些閾值(例如 Web 應用程式可同時連線的最大數量,或網路的頻寬限制)就構成了 DDoS 攻擊的本質。其結果是使用者無法存取系統、服務或網站。
DDoS 攻擊的目標各不相同,攻擊實施者的背景也多元,包括心懷不滿的個人、網路犯罪集團、國家級勢力、駭客行動主義者,以及小型網路犯罪者。其動機與其他網路攻擊相似,例如報復、表達立場,或製造混亂以便竊取敏感資訊、劫持資料與系統以勒索贖金,或入侵系統為未來的攻擊鋪路。
DDoS 攻擊的運作方式
DDoS 攻擊是透過網路連線的系統網路進行的,包括電腦、物聯網 (Internet of Things, IoT) 裝置與其他連網資源,例如已被攻擊者控制的裝置。受感染的系統會感染惡意軟體(Malware),使攻擊者能夠遠端操控它們。
攻擊發生時,攻擊者會啟動被控制的系統並針對目標傳送持續性的請求至其網際網路協定 (internet protocol, IP) 位址。由於這些裝置本身是合法的,流量能夠未被偵測地通過安全防護機制。因此,即使攻擊正在進行中,也很難將惡意流量與正常流量區分開來。
DoS 與 DDoS 攻擊 |
|---|
DDoS 攻擊常與阻斷服務攻擊 (denial-of-service, DoS) 混淆。DoS 的規模與造成的影響都較為有限,因為它是透過單一網路連線來發動攻擊;而 DDoS 攻擊則是透過多個連線同時執行。 |
那些被感染並用於發動 DDoS 攻擊的單一裝置稱為殭屍或機器人。它們共同構成一個稱為殭屍網路 (botnet) 的網路。這是 DDoS 攻擊的主要途徑。攻擊的規模、速度與持續時間,取決於殭屍網路的大小。
如何識別 DDoS 攻擊
儘管 DDoS 攻擊具有強大破壞力,但識別起來卻相當困難,因為許多影響與正常運作期間遇到的狀況類似。最常見的 DDoS 攻擊徵兆是伺服器、服務或網路變得緩慢或無法使用。
辨識 DDoS 攻擊的記號因攻擊類型而異。這些跡象包括:
- 異常流量模式(例如,非正常時段出現流量暴增)
- 網路連線中斷
- 大量流量來自單一 IP 位址或 IP 範圍
- 某個頁面或端點出現無法解釋的大量請求暴增
- 來自具有相同特徵的使用者的流量(例如裝置類型、地理位置或 Web 瀏覽器類型)
- 電子郵件含有不尋常的內容(例如媒體或內容),或是數量過多
- 網站無法瀏覽
若懷疑遭受 DDoS 攻擊,IT 團隊可以採取以下行動:
- 檢查使用者是否收到 503 服務暫時無法使用的錯誤訊息。
- 檢查存取紀錄,以尋找攻擊的跡象。
- 測試網站速度,並與基準網站速度進行比較。
- 嘗試載入其他網站,判斷它們是否以正常速度開啟。
DDoS 攻擊的類型
DDoS 攻擊的類型繁多,以下是幾個例子,用以說明不同的攻擊方式。
應用層 DDoS 攻擊
這類攻擊通常被稱為第 7 層 DDoS 攻擊,其目標是提供服務的軟體,例如用來回應超文字傳輸通訊協定 (hypertext transfer protocol, HTTP) 請求並產生網頁的軟體,以及其他雲端應用程式。這類 DDoS 攻擊之所以普遍,是因為應用層執行攻擊所需的頻寬較少,卻能有效造成影響。
通訊協定 DDoS 攻擊
通訊協定 DDoS 攻擊是利用開放系統互連 (Open Systems Interconnection, OSI) 通訊協定堆疊中第 3 層(網路層)與第 4 層(傳輸層)的漏洞來發動攻擊。SYN 洪水攻擊就是其中一種例子,它會向目標發起連線,但不完成連線程序。目標系統必須耗費資源等待這些大量未完成的連線,導致無法回應正常的合法流量。
基於流量或巨流量 DDoS 攻擊
巨流量 DDoS 攻擊相對少見(據報導僅佔所有 DDoS 攻擊的不到 1%),其方式是透過大量網路流量來佔用目標與網際網路之間的頻寬。巨流量 DDoS 攻擊的一個例子是網域名稱系統 (domain name system, DNS) 放大攻擊,攻擊者偽造目標的位址,並向開放的 DNS 伺服器傳送大量虛假的 DNS 查詢請求。
緩解 DDoS 攻擊
雖然 DDoS 攻擊難以完全避免,但仍有一些方法可以降低其風險與影響,包括以下幾項措施。
Anycast 網路分散
Anycast 網路可用來將 DDoS 攻擊流量分散至多個伺服器,使這些伺服器能更有效地吸收並處理流量。
黑洞路由
黑洞路由會建立一個黑洞,所有流量都會被路由到空路由並從網路中丟棄。這種策略雖然能阻擋惡意流量,但也會一併丟棄合法流量。當 DDoS 攻擊針對特定伺服器或服務時,這是一種有效的緩解工具。
速率限制
速率限制是在特定時間內限制伺服器可接受的請求數量。這通常作為整體防禦策略的一部分,因為它不足以阻止複雜的 DDoS 攻擊。
風險評估
定期進行風險評估,包括對裝置、伺服器與網路的安全稽核,有助於辨識漏洞與加強防禦的機會,進而減少 DDoS 攻擊可能造成的損害與破壞。
Web 應用程式防火牆
Web 應用程式防火牆 (web application firewall, WAF) 可用來緩解第 7 層 DDoS 攻擊,透過充當反向 Proxy 的角色,保護目標伺服器免受惡意流量侵害。WAF 會根據預先定義的規則過濾請求,阻擋 DDoS 攻擊工具。透過 WAF,也能快速設定自訂規則,以因應特定類型的 DDoS 攻擊。
DDoS 攻擊簡史
1974 年-第一次 DoS 攻擊
被認為是首次發生的 DoS 攻擊出現在 1974 年。當時,一位名叫 David Dennis 的高中生就讀於大學,他向伊利諾大學厄本那-香檳分校的 31 台電腦化教育研究實驗室 (Computer-Based Education Research Laboratory, CERL) 電腦同時傳送了一個外部 (EXT) 命令。這個命令導致所有系統當機,迫使所有使用者關機並重新啟動系統。
1996 年-PANIX 攻擊事件
據報導,首宗已知的 DDoS 攻擊是針對位於紐約的網際網路服務供應商 (internet service provider, ISP) Panix。該公司遭受 SYN 洪水式 DDoS 攻擊,攻擊者使用偽造的 IP 位址,向其伺服器發送大量半開放的連線請求,導致系統無法處理正常流量。Panix 花了好幾天才從這次攻擊中恢復。
2000 年-MafiaBoy 攻擊事件
MafiaBoy 的 DDoS 攻擊是由 Michael Calce(又名 MafiaBoy)在北美網路營運商協會 (North American Network Operators’ Group, NANOG) 會議期間發動的。諷刺的是,當時正值關於 DoS 攻擊的主題演講。包括 Dell、CNN、Yahoo、eBay 與 Amazon 在內的大型組織都成為攻擊目標,攻擊工具為 TF2 DDoS 攻擊程式。
2002 年-針對 Yahoo 的 DDoS 攻擊事件
2002 年針對 Yahoo 的 DDoS 攻擊之所以引人注目,是因為它揭示了一種新的防禦規避手法。這種方法被稱為 DDoS 韌性的容量與規模模型,透過多種攻擊組合來壓垮系統的交易處理能力。
2012 年-六家銀行遭受 DDoS 攻擊事件
這種多重攻擊手法在針對美國六家銀行的 DDoS 攻擊中被進一步升級。這些攻擊是由名為 Brobot 的殭屍網路所發動,該網路由數百台遭入侵的伺服器組成,能夠產生超過 60Gbps 的巨大攻擊流量。
這次攻擊的流量大幅超過當時平均每秒 20Gb 的流量。除了流量規模龐大之外,這次 DDoS 攻擊也因其持續性而備受關注,最終癱瘓了銀行的防禦系統。這些攻擊由伊朗政府支持,並委託兩家伊朗本地的電腦公司 ITSecTeam (ITSEC) 與 Mersad Company (MERSAD) 執行。
2013 年-Spamhaus DDoS 攻擊事件
這次 DDoS 攻擊針對的是非營利性反垃圾郵件組織 Spamhaus,值得關注的是,儘管該組織擁有強大的防禦能力,仍被攻擊完全癱瘓,導致其網站與電子郵件服務中斷。該次攻擊的流量估計高達每秒 300Gb。
這起事件是一起出於報復動機的 DDoS 攻擊案例。調查發現攻擊源自荷蘭公司 Cyberbunker 的一名員工。事件的導火線是 Spamhaus 因垃圾郵件問題將該公司列入黑名單。
2014 年-CloudFlare DDoS 攻擊事件
DDoS 攻擊所產生的流量持續攀升。網路安全供應商與內容傳遞網路 CloudFlare 遭受了一次 DDoS 攻擊,攻擊流量高達每秒超過 400Gb。
這次攻擊利用了網路時間通訊協定 (Network Time Protocol, NTP) 中的漏洞。NTP 是用來在伺服器、交換器、路由器與電腦之間維持時間同步的協定。攻擊者使用偽造的位址,向目標伺服器發送大量虛假的 NTP 回應。這類攻擊的放大倍率極高,最高可達 206 倍。
2014 年-香港佔領中環事件 DDoS 攻擊
這場報復性、持續數日的 DDoS 攻擊是針對位於香港的佔中團體而發動,原因是該團體致力於推動更民主的選舉制度。此次攻擊動用了五個殭屍網路,產生高達每秒 500Gb 的流量。雖然攻擊來源未被正式確認,但普遍認為是由中國政府所主導。
2015 年-BBC 攻擊事件
駭客組織 New World Hacking 對 BBC 的隨選電視、iPlayer 與廣播服務發動了一次攻擊,採用基於雲端的新型攻擊方式。他們利用兩個 Amazon Web Services (AWS) 雲端執行個體,並使用其開發的 DDoS 即服務工具 BangStresser 發動攻擊。
2016 年-Mirai 對 Krebs 與 OVH 發動的 DDoS 攻擊事件
網路安全專家 Brian Krebs 的部落格遭到 Mirai 殭屍網路的攻擊。這次攻擊之所以引人關注,是因為其規模龐大,以及殭屍網路的組成方式。Krebs 是 DDoS 攻擊的常見目標,他表示在他記錄的 250 多次攻擊中,這次的攻擊規模是以往的三倍以上,攻擊流量超過每秒 600Gb。
Mirai 殭屍網路是由物聯網(IoT , Internet of Things)裝置組成,包括家用路由器、IP 攝影機與媒體播放器。在對 Krebs 的網站攻擊後不久,該殭屍網路的規模已擴大至近 15 萬個機器人,並對歐洲的主機代管公司 OVH 發動攻擊,產生高達每秒 1.1Tb 的流量。
2018 年-GitHub 攻擊事件
GitHub 所遭受的 DDoS 攻擊採用了一種新型手法,利用 Memcached 的標準命令進行攻擊。Memcached 是一種用於加速動態網站與網路效能的工具。攻擊者利用其特性來放大攻擊流量。在攻擊高峰時,攻擊者的請求大小與所產生的惡意流量之間的比例高達 51,200 倍。
2020 年-Google 攻擊事件
這次針對 Google 的攻擊展現了 DDoS 攻擊的全新層級。這次攻擊由三家中國網路服務供應商 (ISP) 發動,針對數千個 Google IP 位址,持續了 6 個多月,攻擊流量高達每秒 2.5Tb。這個規模是 2016 年 Mirai 殭屍網路攻擊流量的四倍以上。
2021 年-歐洲博彩公司
一家歐洲博彩公司遭受攻擊,攻擊流量高達每秒超過 800Gb。該公司收到一則訊息,要求支付費用以停止攻擊。攻擊者並威脅,若不付款,將進一步擴大攻擊規模。
DDoS 攻擊常見問答集
什麼是 DDoS 攻擊?
DDoS 攻擊是一種網路犯罪,透過大量虛假流量癱瘓伺服器、服務或網路,使其無法存取或極度緩慢,進而阻止使用者正常連線。
DDoS 攻擊有哪些例子?
採用不同方法的三種 DDoS 攻擊類型包括:
- 應用層或第 7 層攻擊
- 通訊協定攻擊
- 基於流量或巨流量攻擊
發動 DDoS 攻擊是否違法?
是的,發動 DDoS 攻擊是違法的。在美國,依《電腦詐欺與濫用法》(Computer Fraud and Abuse Act, CFAA),DDoS 攻擊可被歸類為聯邦刑事罪。根據該法律,違法者最高可被判處 10 年徒刑。
DDoS 攻擊會帶來哪些威脅?
DDoS 攻擊帶來的潛在威脅包括:
- 生產力下降、停機、錯失銷售機會、違反客戶服務等級協議 (service level agreement, SLA) 以及遏止與恢復成本造成的財務損失
- 導致核心功能與服務無法運作的服務中斷
- 使用者無法連接應用程式、網站或服務時所造成的商譽損害
如何防範 DDoS 攻擊?
防止或減輕 DDoS 攻擊影響的方法包括:
- 將可疑 IP 位址列入黑名單
- 實施多個網路安全(Cybersecurity)防禦層
- 增加系統頻寬
- 使用防火牆與具封包過濾功能的 Web 應用程式防火牆 (WAF , Web Application Firewall)
DDoS 攻擊者是如何避開偵測的?
網路犯罪者在執行 DDoS 攻擊時,會採用多種手法來避開偵測,包括:
- 反射策略透過操控合法服務(例如網域名稱系統 (DNS)、網路時間通訊協定 (NTP),以及簡易網路管理通訊協定 (simple network management protocol, SNMP) 伺服器)的預設行為,來隱藏攻擊者的身分
- 偽造來源位址與目的位址
為可能的 DDoS 攻擊做好準備
任何擁有連接裝置或系統的組織都容易受到 DDoS 攻擊。其影響可能從輕微干擾到嚴重災難不等。雖然沒有任何防禦措施能百分之百阻止 DDoS 攻擊,但若事先部署預防與遏止策略及工具,則能有效降低重大損失的風險。