网络安全 频道

让DNS服务器远离疯狂的DDoS攻击

   如何避免成为DDoS攻击的帮凶

  现在,你已经知道该如何配制DNS基础设备来抵御DDoS攻击了。这一点很重要,可以保证你在DDoS攻击中不会被挟持从而成为帮凶来祸害他人。

  还记得DNS服务器是如何放大流量的吗?攻击者利用开放式递归域名服务器和权威域名服务器作为放大器,发送欺骗请求从而导致域名服务器做出的回应大小超过请求的100多倍,网络上的任何设备都有可能成为其攻击目标。没有人想成为这种攻击的目标,当然,更没有人愿意成为帮凶。攻击者会利用你的域名服务器资源和带宽来发动攻击。如果被攻击对象采取措施阻断了你的域名服务器与其网络之间的流量,当攻击结束后,被攻击对象就无法再在你的空间里恢复原有域名了。

  如果你运行的是开放式递归域名服务器,办法很简单:那就是不用。很少有公司会向递归查询开放运营的域名服务器。OpenDNS 和谷歌公共DNS是两个例外,但如果你能读到我这篇文章,我想你应该不会这么做的。我们应该是在递归域名服务器中加装接入控制,确保只有经过授权的请求才会用到它。藉此,我们可以将DNS请求限定在企业内网IP地址上,这样在任何一个域名服务器上都可实现。(微软的DNS服务器不支持基于IP地址的请求接入控制,给它什么它就读取什么。)

  如果你运行一台权威域名服务器呢?很显然,你无法限制那些向你发送请求的IP地址,或者只有一部分IP地址可以限制(你可以对那些明显来自虚假IP地址的请求予以拒绝,比如RFC 1918 地址)。但是你可以不回应。

  长期以来,活跃在互联网上的两位白帽黑客Paul Vixie 和 Vernon Schryver,发现利用权威域名服务器来放大某些请求模式便可发起DDoS攻击。具体来说,攻击者通过虚假IP地址(或地址块)向域名服务器不停地发送同一请求,以求制造最大限度的攻击。规范的递归服务器不会这样做。当记录回应时间已经耗尽时,回应已经被缓存并且不会再被发送请求。

  Vixie和Schryver提出了一个很巧妙的机制,叫做应答频率限制 (Response Rate Limiting, RRL),允许权威域名服务器追踪有多少同样的回应是针对同一请求发出的。当发送次数达到某个设定阈值时,域名服务器就在一段时间内停止发送回应。当权威域名服务器不再收到同一问题的请求时,就会终止对回应的压制,其结果就是权威域名服务器将不再发送高于阈值的任何回应,因此DDoS再也不能发威了。

  RRL已被内置在了BIND域名服务器版本9.9.4中,包括NSD和Knot在内的其他域名服务器现在都支持它。当域名服务器升级到全新版本,或者安装了支持RRL的全新应用时,攻击者将DNS基础设施当作放大器的图谋,就越来越难以实现。

  希望以上的内容能够帮助您了解DNS基础设施是如何在DDoS攻击中被攻击和被利用的,希望您能够知晓如何做才能更好的抵御DDoS攻击,确保您的域名服务器不会在不知情的情况下被挟持和被利用。

0
相关文章