2022-8-10 09:59:30
评论(0)
什么是DNS放大攻击?
这种DDoS攻击是基于反射的大规模分布式拒绝服务(DDoS)攻击,其中,攻击者利用开放DNS解析器的功能产生大量流量,使目标服务器或网络不堪重负,导致服务器及其周围基础设施无法访问。
DNS放大攻击的工作原理
所有放大攻击都利用攻击者和目标Web资源之间的带宽消耗差异。当许多请求的成本差异被放大时,由此产生的巨大流量可以破坏网络基础设施。通过发送导致大型响应的小型查询,恶意用户可以凭借更少的资源消耗获取更大利益。通过让僵尸网络中的每个机器人提出相似的请求使放大倍增,攻击者既可以躲避检测,又会获得攻击流量大幅增加的好处。
一个DNS放大攻击中的一个机器人就好比是一个心怀恶意的青少年打电话给一家餐厅说“我要菜单上的东西每样来一份,请给我回电话并告诉我整个订单的信息”。当餐厅询问回叫号码时,他却给出目标受害者的电话号码。然后,目标会收到来自餐厅的呼叫,接到他们未请求的大量信息。
由于每个机器人向开放DNS解析器提出请求时都提供欺骗性IP地址,也就是目标受害者的真实源IP地址,目标随后会收到来自DNS解析器的响应。为了产生大量流量,攻击者在构造请求时,会以让DNS解析器产生尽可能大响应为目的。因此,目标接收攻击者的初始流量的放大结果,而其网络则被虚假流量堵塞,导致拒绝服务。
DNS放大可分为四个步骤:
1.攻击者使用受损的端点将有欺骗性IP地址的UDP 数据包发送到DNS重定向器。数据包上的欺骗性地址指向受害者的真实IP地址。
2.每个UDP数据包都向DNS解析器发出请求,通常传递一个参数(例如“ANY”)以接收可能的最大响应。
3.收到请求后,试图通过响应来提供帮助的DNS解析器会向欺骗性IP地址发送较大的响应。
4.目标的IP地址接到响应,并且周围的网络基础设施被大量流量淹没,从而导致拒绝服务。
尽管少量请求不足以导致网络基础设施下线,但是当此序列通过多个请求和DNS解析器进行扩展时,目标接收的数据的放大倍数可能会很大。
如何防护DNS放大攻击?
对于运行网站或服务的个人或公司而言,他们的缓解方案非常有限。这是因为尽管个人服务器可能是攻击目标,但并不是容量耗尽攻击主要作用所在的地方。由于攻击产生的大量流量,服务器周围的基础设施会受到影响。Internet服务提供商(ISP) 或其他上游基础设施提供商可能无法处理传入的流量,变得不堪重负。在这种情况下,该ISP可能将所有流量传送到目标受害者的IP地址,保护自己,并使目标的网站离线。除Cloudflare DDoS保护之类的异地保护服务外,缓解策略主要是预防性Internet基础设施解决方案。
减少开放DNS解析器的总数NS放大攻击的一个重要组成部分是对开放DNS解析器的访问权限。如果Internet上有配置不当的DNS解析器,那么攻击者仅仅需要找到这种DNS解析器即可利用。理想情况下,DNS解析器应仅向源自受信任域名的设备提供服务。对于基于反射的攻击,开放DNS解析器将响应Internet上任何位置的查询,因此有可能被利用。限制DNS解析器,使其仅响应来自受信任来源的查询,即可使服务器无法被用于任何类型的放大攻击。
源IP验证 - 阻止欺骗性数据包离开网络:由于攻击者的僵尸网络发送的UDP请求必须具有指向受害者IP地址的欺骗性源IP地址,因此,要降低基于UDP的放大攻击的有效性,其关键在于Internet服务提供商(ISP)拒绝任何具有欺骗性IP地址的内部流量。如果有数据包从网络内部发送,但其源地址看似源于网络外部,则可能是欺骗性的数据包,可以将其丢弃。Cloudflare 强烈建议所有提供商实施入口筛选,并且会不时联系不知情地参与DDoS攻击的 ISP 并帮助他们意识到漏洞。
|
|