如何防止DNS污染

如何防止DNS污染



DNS污染是每个网管的噩梦。


万一RNDC(Remote NameDomain Controller)密钥泄露了怎么办?内网的DHCP服务器是否足够强健?黑客组织会不会在圣诞节假期期间发起攻击?随着网络中立立法的推进,关于DNS、地址协议、数据包优先级都将被重新定义。下面给大家详细介绍一下DNS污染及预防。


互联网服务商一直以来对DNS污染都非常关注,DNS服务器一般都会将一些常用网站对应的IP地址保存在缓存或系统数据库中,一般用户都不可能记住那些一长串数字的IP地址,更愿意去记以www开头的个性网址。因此如果没有DNS,只有极客才会去使用互联网。然而DNS诞生之初只是一个分布式的文本文件,上面记录了一大堆域名解析信息。当用户在地址栏中输入:yahoo.com后,DNS服务器就开始查找哪个IP地址对应的是yahoo.com。答案找到后,将IP地址和用户输入的网址对应起来就可以打开网站。有些人就在这个过程中动起了歪脑筋。最常见的就是篡改HOST主机文件,通过篡改主机文件,IP地址和网址将不再一一对应,用户打开的网站将不再是最初想要浏览的网站,想想有多么可怕。


发起DNS污染攻击首先需要找到DNS服务器,这只需要在局域网内通过WHOIS命令就能轻松找到“授权名称服务器”,然后修改这台服务器的缓存,可以将yahoo.com网址重定向至任何一个IP地址,接着这台授权名称服务器的缓存就会复制到局域网中所有的DNS域名解析服务器,由此会引发钓鱼攻击、垃圾邮件、密码泄露、社会工程攻击等一系列黑客攻击行为。


如何防范DNS污染?


第一步:过滤DNS服务器。禁止使用端口号53。

第二步:使用RNDC加密、存根区域、减小DNS服务器的生存周期(TTL)。






上图中是一个DNS安全方案,不过价格非常昂贵,不是每家公司能够承受得起。


第三步:检查授权名称服务器是否和主机上的解析一致。早期的互联网连接需要进行反向地址解析,至今SMTP邮件服务器还在使用。这样做的好处是能够检查授权名称服务器与本地域名解析是否一致,如果不一致说明DNS缓存存在污染的风险。


总而言之,通过下面的几步,希望人们对DNS污染引起足够的重视。



1、创建自己的DNS服务器,不管是使用BIND还是Windows DNS配置,都可以在30分钟内完成所有配置。

2、禁用WAN端口号53,如果一定需要使用,请配合使用RNDC密钥。

3、将DNS的TTL值设为最小值,例如15分钟,这样既不会影响网络的反应速度也能一定程度上保护DNS服务器免受污染。

4、禁止解析客户端和服务器上的HOSTS文件。

5、即使是本地域,也要创建PTR区域。

6、在DNS服务器上创建存根区域。

7、在验证DNS服务器的前提下进行DNS转发。

8、在防火墙服务器上禁用DHCP,除非整个局域网内只有一台DHCP服务器。

9、学习DNS服务的工作原理。

10、集群化DNS服务器才能最大限度发挥DNS的功效。


DNS作为互联网的基础协议之一,具有至关重要的作用。做好DNS服务器的配置会让整个互联网更加透明高效。


欢迎关注我们:

@W-Pwn

编辑于 2018-03-26