114源码网教您如何应对DNS劫持问题

114源码网教您如何应对DNS劫持问题

近些年,系统管理员的安全意识不断提高,使得 DNS 劫持这种古老的攻击方式又开始流行起来。本文详细解释了 DNS 劫持的常见方式以及站长和网民的应对措施。

  首先,DNS 系统中有两种服务角色:递归 DNS 和授权 DNS。本质上来说,授权 DNS 控制网站的解析;递归 DNS 只起缓存的作用。所以跟广大站长关系比较大的是授权 DNS,也就是在域名注册商处填写的 DNS 地址。而网民使用的则是递归 DNS。

  几年前发生的“百度 DNS 劫持”事件,属于授权 DNS 劫持。黑客攻击了百度在域名注册商处的帐号,将 baidu.com. 的 NS 记录修改掉,相当于换了授权 DNS。这属于从源头上控制了内容,从而使得所有的递归 DNS 被污染,所有网民都访问到错误的页面。这个时候如果用 dig 或者 nslookup 等工具检查,会发现所有 DNS 服务器的内容都是错误的。百度解决这个问题并不是简单地将 NS 记录修改回自己的授权 DNS 服务器就完成。修改完成之后,网民还需要等待所有的递归 DNS 缓存过期刷新数据之后,才能访问到正确的网站。

  另外一种更为常见的,是针对递归 DNS 服务器的 DNS 劫持攻击。由于 DNS 系统采用了不可靠的 UDP 数据包进行通信,攻击者就有机会假冒授权 DNS 服务器,使用假的数据欺骗递归 DNS。这种攻击更为常见的原是是攻击手法比较简单,只需要发数据包混淆递归 DNS 即可。而前面的针对授权 DNS 劫持的攻击有两种方法,第一种是像百度一样,控制它在域名注册商处的帐号;第二种,入侵授权 DNS 的服务器,完全掌握授权 DNS,这个难度还是比较大的。针对递归 DNS 的 DNS 劫持攻击通常是地域性的,也就是说,黑客攻击了某一个或者某几个递归 DNS 服务器。所以只有使用了该递归 DNS 的网民受到影响。使用 dig 或者 nslookup 测试会发现,某些递归 DNS 服务器结果是错误的,而某些是正确的。通常我们相信 google 的技术实力不会受到攻击,所以如果 8.8.8.8 返回的结果是正确的,就可以说明授权 DNS 服务是正常的,而只是某些递归 DNS 受到了攻击。

  上面的解释清楚说明了两种不同的 DNS 截持攻击,对于普通网民来说,我们建议使用更安全的递归 DNS,比如 google 公司的 8.8.8.8,可以保证结果的正确性。对于广大站长来说,建议做好在域名注册商处的帐号安全,并使用技术实力强大的供应商提供的授权 DNS 服务。


你可能感兴趣的:(114源码网教您如何应对DNS劫持问题)