扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
你的开放式DNS服务器是否会成为一个拒绝服务攻击(DDoS)的参与者呢?如果服务器使用了递归,那么答案就是肯定的。DDoS和DNS攻击并不是什么新鲜内容,但是从目前的趋势来看,这种攻击方式有增无减。
DNS服务器通过authoritative name service向网络宣告自己所拥有的域名记录。由于网民更喜欢使用域名而不是IP地址访问网站,因此DNS服务器负责将用户输入在浏览器地址栏中的网站域名(比如techrepublic.com)转化成网站的真实IP地址。
而回应一个递归查询则完全不同。根据US-CERT的报道,在全部DNS服务器中,有75%-80%的服务器可以处理递归查询。
可以处理递归DNS查询的DNS服务器可以从其他DNS服务器上查询有关的网络域名和IP地址的对应关系,并将结果返回给发送查询的客户端主机。以下是递归查询的例子:
1.用户在浏览器地址栏里输入www.techrepublic.com。
2.电脑连接到本地DNS服务器上查询与www.techrepublic.com对应的IP地址。
3.DNS服务器在本地数据表(比如本地DNS缓存)中查询www.techrepublic.com对应的IP地址,但是没有发现。
4.该DNS服务器向根服务器发送查询信息,查询www.techrepublic.com对应的IP。
5.根服务器会回复一个顶级域名服务器 (TLD)信息。
6.DNS服务器于是向这个TLD服务器查询www.techrepublic.com的IP地址。
7.TLD服务器会将www.techrepublic.com的信息反馈给DNS服务器。
8.DNS服务器连接www.techrepublic.com以确定获取的IP地址是正确的。
9.DNS服务器会检查CNAME记录,这里记录了www.techrepublic.com是techrepublic.com.com的别名。DNS返回CNAME记录和techrepublic.com.com的A记录。
10.DNS服务器将以下信息反馈给发出查询请求的客户端电脑: techrepublic.com.com = 216.239.113.146 (同时包含CNAME记录信息www.techrepublic.com=techrepublic.com.com).
那么一个递归查询怎么会变成DDoS攻击呢?为了实现这种攻击,黑客必须首先控制一个DNS记录。
黑客首先将DNS记录中的某项的TXT区域填满数据(该TXT区域最多存放4200字节)。然后就开始下一步行动了:
1.黑客通过自己开发的机器人程序不断地向这个可以处理递归查询的DNS发送刚才修改过信息的那个地址的查询。
2.机器人将发送查询的客户端IP地址修改为DDoS攻击目标的IP地址。
3.递归服务器会从被黑客控制的DNS上获取大量(4200字节)的信息,然后将这些信息发送给它所认为的发送查询的客户端IP地址。
如果同时有大量的被黑客控制的系统在进行查询请求,目标主机就会受到DDoS攻击。如果你的企业DNS服务器受到了此类攻击,你的企业内网将无法浏览互联网上的网站,因为此时DNS服务器已经无法处理来自内网的正常DNS查询请求了。
那么该怎么解决呢?很简单:搭建两个DNS服务器。让企业内部网络的查询通过一个内部DNS服务器进行。
而对于外部DNS服务器,禁用递归查询功能。由于禁用了递归查询功能,外部DNS不会向其他DNS或者客户端发送查询,这就阻断了黑客从外部发动脉冲DoS攻击的可能。
总结
开放DNS并不会直接导致问题,他只是问题的一个因素。IP地址欺骗才是真正的问题,它是实现DDoS攻击,垃圾邮件或者其他类型攻击的关键因素。
在我看来,要解决这一问题的方法就是采用IP地址验证,而相关的工具也早已出现。另外我知道Internet Engineering Task Force (IETF)正在研究IP地址验证的方法,我希望他们能快点全面实施。
(责任编辑:陈毅东)
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。