此DDoS攻击是基于反射的体积分布式拒绝服务(DDoS)攻击,其中攻击者利用开放式DNS解析器的功能,以便使用更大量的流量压倒目标服务器或网络,从而呈现服务器和它周围的基础设施无法进入。
DNS放大攻击如何工作?
所有放大攻击都利用了攻击者和目标Web资源之间的带宽消耗差异。当在许多请求中放大成本差异时,由此产生的流量可能会破坏网络基础设施。通过发送导致大量响应的小查询,恶意用户可以从更少的内容获得更多。由具有在每个机器人这个倍数乘以僵尸网络进行类似的请求,攻击者是从检测既混淆和收获大大提高了攻击流量的好处。
DNS放大攻击中的一个机器人可以被认为是一个恶意的少年打电话给餐馆并说“我将拥有一切,请给我回电话并告诉我整个订单。”当餐厅要求时一个回叫号码,给出的号码是目标受害者的电话号码。然后,目标接收来自餐馆的电话,其中包含许多他们未请求的信息。
由于每个机器人都要求使用欺骗性IP地址打开DNS解析器,该IP地址已更改为目标受害者的真实源IP地址,然后目标会从DNS解析器接收响应。为了创建大量流量,攻击者以尽可能从DNS解析器生成响应的方式构造请求。结果,目标接收到攻击者初始流量的放大,并且他们的网络被虚假流量阻塞,导致拒绝服务。
DNS放大可分为四个步骤:
攻击者使用受损端点将带有欺骗性IP地址的UDP数据包发送到DNS recursor。数据包上的欺骗地址指向受害者的真实IP地址。
每个UDP数据包都向DNS解析器发出请求,通常会传递诸如“ANY”之类的参数,以便接收可能的最大响应。
在收到请求后,尝试通过响应提供帮助的DNS解析器会向欺骗的IP地址发送大量响应。
目标的IP地址接收响应,周围的网络基础设施因流量泛滥而变得不堪重负,导致拒绝服务。
虽然一些请求不足以取消网络基础设施,但当此序列在多个请求和DNS解析器之间成倍增加时,目标接收的数据放大可能很大。探索有关反射攻击的更多技术细节。
如何减轻DNS放大攻击?
对于运营网站或服务的个人或公司,缓解选项是有限的。这是因为个人的服务器虽然可能是目标,但却不会感受到体积攻击的主要影响。由于产生了大量流量,服务器周围的基础设施会产生影响。Internet服务提供商(ISP)或其他上游基础架构提供商可能无法处理传入流量而不会变得不堪重负。因此,ISP可能将所有流量黑洞到目标受害者的IP地址,保护自己并使目标站点脱机。除Cloudflare DDoS保护等非现场保护服务外,缓解策略主要是预防性互联网基础设施解决方案。
减少打开DNS解析器的总数
DNS放大攻击的一个重要组成部分是访问开放式DNS解析器。通过将配置不当的DNS解析器暴露给Internet,攻击者需要做的就是利用DNS解析器来发现它。理想情况下,DNS解析器应仅向源自受信任域的设备提供其服务。在基于反射的攻击的情况下,开放的DNS解析器将响应来自Internet上任何地方的查询,从而允许利用漏洞。限制DNS解析器以使其仅响应来自可信源的查询使得服务器成为任何类型的放大攻击的不良工具。
源IP验证 - 停止欺骗数据包离开网络
由于攻击者僵尸网络发送的UDP请求必须具有欺骗受害者IP地址的源IP地址,因此降低基于UDP的放大攻击有效性的关键组件是Internet服务提供商(ISP)拒绝任何内部流量欺骗的IP地址。如果从网络内部发送一个数据包,其源地址使其看起来像是在网络外部发起的,那么它可能是一个欺骗性数据包,可以被丢弃。Cloudflare强烈建议所有提供商实施入口过滤,有时会联系那些不知不觉地参与DDoS攻击并帮助他们实现漏洞的ISP。
Cloudflare如何减轻DNS放大攻击?
通过正确配置的防火墙和足够的网络容量(除非您的大小与Cloudflare相当,并不总是很容易),阻止DNS放大攻击等反射攻击是微不足道的。虽然攻击将针对单个IP地址,但我们的Anycast网络会将所有攻击流量分散到不再具有破坏性的程度。Cloudflare能够利用我们的规模优势在多个数据中心内分配攻击的重量,平衡负载,从而不会中断服务,攻击永远不会超过目标服务器的基础架构。在最近的六个月窗口中,我们的DDoS缓解系统“Gatebot”检测到6,329次简单反射攻击(每40分钟一次),网络成功地减轻了所有这些攻击。