訂閱以接收新文章的通知:

Cloudflare 自發邊緣 DDoS 保護之剖析

2021-03-18

閱讀時間:5 分鐘
本貼文還提供以下語言版本:EnglishFrançaisDeutschItaliano日本語한국어PortuguêsEspañol简体中文

很高興來談談我們的 DDoS (分散式阻斷服務) 保護系統。這套系統現已部署到 Cloudflare 全球所有 200 多個資料中心,正在積極為所有客戶提供保護,防禦第 3-7 層 (OSI 模型) 上的 DDoS 攻擊,無需人工干預。這還顯著提高了我們網路的韌性。作為我們非計量 DDoS 保護承諾的一部分,我們不會因客戶受到 DDoS 攻擊就增加收費。

A deep-dive into Cloudflare’s autonomous edge DDoS protection

自發邊緣保護

為了迅速、精準地幫助客戶防禦 DDoS 攻擊,我們打造了一套自發邊緣偵測與緩解系統,無需尋求集中共識,便可自發做出決策。這套系統完全由軟體定義,在我們網路邊緣的商用伺服器上執行。這由我們的阻斷服務精靈 (dosd) 驅動,後者最初於 2019 年中上線,用來防禦第 3/4 層 DDoS 攻擊。自那時起,我們不斷投入心力來增強和改善其能力,藉此永遠領先攻擊者一步,並破壞攻擊的經濟效益。最新一輪改良擴展了我們的邊緣緩解元件,除了第 3/4 層外,現在也能防禦第 7 層攻擊。

這套系統在我們所有邊緣資料中心的每一台伺服器上執行,不斷分析封包和 HTTP 請求,掃描 DDoS 攻擊。一旦偵測到攻擊,系統立即將一條附有即時產生簽名的緩解規則推送到 Linux 堆疊中的大多數最佳位置,在此套用最具成本效益的緩解措施。

Cloudflare DDoS 緩解系統概念圖‌‌

A conceptual diagram of Cloudflare DDoS mitigation systems

新增的邊緣偵測能力是我們現有全球威脅偵測機制 Gatebot 的補充,後者位於我們網路的核心位置。利用 Gatebot 在網路核心位置偵測攻擊,這非常適合規模較大的分散式巨流量攻擊,這類攻擊要求在整個 Cloudflare 邊緣協調,而規模較小的局部攻擊則需要不同的應對方法。在邊緣偵測網路層和 HTTP 攻擊,表示我們可以更加迅速地進行採樣,同時偵測大型和小型攻擊,並且即刻產生緩解規則。在過去的幾個月裡,dosd 偵測到所有第 3/4 層 DDoS 攻擊中的 98.6%。同樣,自從部署 dosd 的擴展版本以來,這已緩解了所有第 7 層攻擊中的 81%。

之前的部落格文章中已介紹過 Gatebotflowtrackd,因此本文著重介紹擴展後的 dosd 能力。

利用 Linux 網路極速丟棄封包和請求

十年前,Linux 網路很慢。而如今,我們能極速丟棄封包,卻也歸功於 Linux,特別是 Linux iptables 和 eXpress Data Path (XDP)。

封包的一生

如果封包的目的地是受 Cloudflare 保護的客戶,這個封包將傳送到最近的 Cloudflare 資料中心 (經由 BGP Anycast 傳輸)。到達那裡後,封包將經網路交換機使用等價多路徑路由組 (ECMP) 從路由器發往伺服器。到達伺服器後,網路介面卡 (XDP) 將封包傳送到一組 eXpress Data Path (XDP) 程式中。第一組 XDP 程式 L4Drop 套用源自此前所偵測攻擊的緩解規則,並將封包樣本傳送給 dosd 做進一步分析。

如果封包沒有被視為惡意並丟棄,這將被傳送到我們的專利第 4 層負載平衡器 Unimog。根據伺服器健康狀況和效能指標,Unimog 決定應該將封包保留在同一台伺服器,還是將其傳遞到資料中心內以便進一步處理其另一台伺服器。經過 Unimog 後,封包將通過 iptables 防火牆。然後,如果目標是第 7 層應用程式 (例如受 Cloudflare WAF 保護的服務),封包將傳送到我們的 HTTP 反向代理。反向代理在使用者空間執行,HTTP 請求經過我們的 Web 應用程式防火牆規則和其他客戶設定的篩查。如果封包的目的地是 TCP/UDP 應用程式 (Spectrum) 或一個受到路由而非受到代理的 IP 目的地 (Magic Transit),這將通過那些系統,而非我們的 HTTP 代理。

封包的一生

Life of a packet

除了 L4Drop,我們的 HTTP 代理也將 HTTP 請求的樣本和中繼資料傳送到 dosd。這種邊緣採樣的速度相當於核心採樣的 10 倍,因為訊號可在本機分析 (並採取行動),而非傳送到一個核心資料中心。同樣,dosd 對封包採樣的速度相當於 gatebot 的 81 倍。

dosd、gatebot 和 flowtrackd 彼此配合,一同分析所收到的樣本並在偵測到 DDoS 攻擊時套用緩解規則。這將緩解規則推送到 Web 代理以緩解 HTTP 攻擊。攻擊請求將受到封鎖、速率限制或質詢等動作的處理,具體取決於系統的決策。然而,如果攻擊體量很大,緩解規則將在堆疊中往下推送到 iptables 防火牆,並在第 4 層利用 IP Jails 丟棄第 7 層攻擊,以實現更具經濟效益的緩解。同樣地,對於第 3/4 層攻擊,系統將使用 L4Drop 內的擴展柏克萊封包篩選 (eBPF)  程式在 iptables 防火牆內緩解。利用這些元件,我們能夠實現規模化自動緩解 DDoS 攻擊。

破壞攻擊經濟性

如上所述,我們的擴展自發系統和現有的威脅緩解元件都是為了保護客戶免受 DDoS 攻擊而開發。然而,發動攻擊的難度和成本已變得非常低。惡意執行者使用這些攻擊來擊垮網站、行動應用程式、遊戲或任何連入網際網路的資產。這樣的擴展保護措施很有必要,因為如我們在 DDoS 趨勢報告中所記載,攻擊在過去一年有所增加。此外,攻擊也擴大了規模,而且更加複雜,例如模擬聲學節拍的攻擊。同樣重要的是,小型攻擊能弄垮一個小型 Web 資產,因此無論是大型還是小型攻擊,我們都要進行封鎖。

許多時候,攻擊者可利用公開的工具免費發動 DDoS 攻擊,或支付少許費用租用 DDoS 即服務機器人網路,例如暗網上的 Moobot。根據 2020 年暗網價格指數,只需 10 美元起,就能發動一次持續一小時、每秒 1000-5000 個請求的 DDoS 攻擊。發動攻擊的成本遠低於其造成的損失。透過造成服務中斷或_僅僅_使其效能下降,攻擊者就能使受害者損失慘重。例如,擊垮電商網站可讓使用者無法登入和購物。甚至等待時間變長也會導致使用者放棄購物車並轉向競爭對手。一分鐘服務中斷很可能帶來數萬美元損失。

鑒于 DDoS 攻擊的頻率、複雜程度和規模,我們需要採取新的方法,不僅要快速正確,還要一絲不苟。這正是我們開發本文所述擴展保護的原因。

協助打造更安全的網際網路環境

Cloudflare 的使命是協助打造更加美好的網際網路,讓所有人擁有更安全、更快速、更可靠的體驗。DDoS 團隊的願景源自於這個使命:我們的目標是使 DDoS 攻擊煙消雲散。上世紀 90 年代和本世紀初,垃圾電子郵件成為一個嚴重問題。如今,電子郵件服務幫助人們告別了垃圾郵件,我們也要對 DDoS 攻擊做同樣的事。

若要進一步瞭解 Cloudflare 的 DDoS 保護解決方案,請與我們連絡。如需親手評估 Cloudflare 的免費方案,請在此註冊。

我們保護整個企業網路,協助客戶有效地建置網際網路規模的應用程式,加速任何網站或網際網路應用程式抵禦 DDoS 攻擊,阻止駭客入侵,並且可以協助您實現 Zero Trust

從任何裝置造訪 1.1.1.1,即可開始使用我們的免費應用程式,讓您的網際網路更快速、更安全。

若要進一步瞭解我們協助打造更好的網際網路的使命,請從這裡開始。如果您正在尋找新的職業方向,請查看我們的職缺
DDoSGatebotdosdLinux

在 X 上進行關注

Omer Yoachimik|@OmerYoahimik
Cloudflare|@cloudflare

相關貼文

2024年11月06日 上午8:00

Exploring Internet traffic shifts and cyber attacks during the 2024 US election

Election Day 2024 in the US saw a surge in cyber activity. Cloudflare blocked several DDoS attacks on political and election sites, ensuring no impact. In this post, we analyze these attacks, as well Internet traffic increases across the US and other key trends....

2024年10月02日 下午1:00

How Cloudflare auto-mitigated world record 3.8 Tbps DDoS attack

Over the past couple of weeks, Cloudflare's DDoS protection systems have automatically and successfully mitigated multiple hyper-volumetric L3/4 DDoS attacks exceeding 3 billion packets per second (Bpps). Our systems also automatically mitigated multiple attacks exceeding 3 terabits per second (Tbps), with the largest ones exceeding 3.65 Tbps. The scale of these attacks is unprecedented....