订阅以接收新文章的通知:

Cloudflare DDoS 防护深入剖析

2021-03-18

5 分钟阅读时间
这篇博文也有 EnglishFrançaisDeutschItaliano日本語한국어PortuguêsEspañol繁體中文版本。

今天,我很高兴能谈一下我们的自主 DDoS (分布式拒绝服务(DDoS)) 防护系统。这个系统已部署到 Cloudflare 全球所有 200 多个数据中心,正在积极保护我们的所有客户,防御 3-7 层 (OSI 模型)上的 DDoS 攻击,无需人工干预。作为我们不计量 DDoS 防护承诺的一部分,我们不会因为客户受到 DDoS 攻击而增加对客户的收费。

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

自主边缘防护

为了迅速并精准地为我们的客户防护 DDoS 攻击,我们打造了一套自主边缘检测与缓解系统,可自行做出决定而不需寻求在中心节点形成统一策略。这套系统是完全由软件定义的,在我们部署于边缘的普通服务器上运行。驱动这套系统的是我们的拒绝服务守护进程(dosd),后者最早于 2019 年上线,用于防护 L3/4 DDoS 攻击。自那以来,我们一直不断投资增强和改善其能力,以便保持领先攻击者一步,并破坏攻击的经济性。最新一轮改良将我们的边缘缓解组件进行了扩展,除了 L3/4 外,也能防御 L7 攻击。

这套系统在我们所有边缘数据中心的每一台服务器上运行。系统不断分析数据包和 HTTP 请求,扫描 DDoS 攻击。一旦发现攻击,系统立即将一条附有实时生成签名的缓解规则推送到 Linux 堆栈的最优位置,在此应用最具成本效益的缓解。

Cloudflare DDoS 缓解系统的概念图

A conceptual diagram of Cloudflare DDoS mitigation systems

我们的新边缘检测能力是我们现有全球威胁监测机制 Gatebot 的补充,后者位于我们网络的核心。通过 Gatebot 在网络核心检测攻击非常适用于较大型的分布式容量耗尽型攻击,此类攻击要求整个 Cloudflare 边缘的协调。但是,较小型的局部攻击需要以不同的方式来处理。通过在边缘检测网络层和 HTTP 攻击,我们能以更高速率采样,同时检测大型和小型攻击,并立即生成缓解规则。过去几个月来,所有 L3/4 攻击中的 98.6% 是由 dosd 检测到的。同样地,自从 dosd 的扩展版本部署以来,已经缓解了全部 L7 攻击的 81%。

我们已在此前的博文中介绍过 Gatebotflowtrackd ,因此本文着重介绍扩展后的 dosd 能力。

利用 Linux 网络在瞬间丢弃数据包和请求

10 年前,Linux 网络非常缓慢。今天,得益于 Linux —— 特别是 Linux iptables 和 eXpress Data Path (XDP),我们可在瞬间丢弃数据包。

数据包的生命周期

如果一个数据包的目的地是受 Cloudflare 保护的客户,这个数据包将通过 BGP Anycast 发送到最近的 Cloudflare 数据中心。到达后,数据包将经网络交换机使用等价多路径路由组(ECMP)通过一个路由器发往一个服务器。到达某个服务器后,网络接口卡(NIC)将数据包传送到一组 eXpress Data Path(XDP)程序中。第一组 XDP 程序—— L4Drop——应用来自此前检测到的攻击的缓解规则,并将数据包样本传送给 dosd 供进一步分析。

如果数据包没有被视为恶意并丢弃,其将被传送到 Unimog——我们的专利 L4 负载平衡器。根据服务器运行状况和性能指标,Unimog 决定是否应该将数据包保存在同一台服务器中,还是将其传递到数据中心内能够更好地处理它的另一台服务器。经过 Unimog 后,数据包将通过 iptables 防火墙。然后,如果目标是一个 L7 应用程序(例如受 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 防火墙,使用 IP Jails 在 L4 中断 L7 攻击,以实现更具经济效益的缓解。同样地,对于 L3/4 攻击, 系统将使用 L4Drop 内的扩展伯克利包过滤器(eBPF)程序在 iptables 防火墙内缓解。利用这些组件,我们能大规模自动缓解 DDoS 攻击。

打破攻击经济

如上所述,我们的扩展自主系统,连同我们现有的威胁缓解组件,是为保护客户免受 DDoS 攻击而开发的。然而发动攻击的难度和成本已变得非常低。恶意行为者使用这些攻击来弄垮网站、移动应用、游戏或任何连接到互联网的资产。这些扩展保护措施很有必要,因为如我们在 DDoS 趋势报告中所记载的那样,过去一年来攻击有所增加。此外,攻击还变得更大规模和更加复杂,例如模拟声学拍频的攻击(见下图)。同样重要的是,小型攻击能弄垮一个小型网站,因此无论是大型还是小型攻击,我们都要进行阻止。

很多情况下,攻击者可利用公开工具免费发动 DDoS 攻击,或支付少量费用租用 DDoS 即服务僵尸网络,例如暗网上的 Moobot。根据 2020 年暗网价格指数,一次持续一小时、每秒 1000-5000 个请求的 DDoS 攻击起步价格为 10 美元。发动攻击的成本远低于其造成的损失。通过造成服务中断或 _仅仅_使其性能下降,攻击者就能使受害者损失严重。例如,弄垮一个商务网站将使用户无法登录和购物。甚至延迟增加都能导致用户放弃购物车并转向竞争对手。一分钟的停机时间很可能带来数万美元损失。

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日 08: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日 13: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....