DNS服务器安全问题
DNS服务器是Internet上其它服务的基础,它处理DNS客户机的请求:将名字与IP地址进行互换,并提供特定主机的其它已公布信息(如MX记录等)。一般而言,网管们碰到的大多会有以下几种情况。
1、名字欺骗
当主机B访问主机A(同时也作为DNS服务器)如执行rlogin时,A接收到这个连接并获得发起本次连接主机B的IP地址。为验证本次连接的合法性,主机A就向本地DNS服务器逆向查询对应于这个IP地址的主机名字。当返回查询结果——主机名B为本机所信任的主机时,就允许来自B的远程命令rlogin。下面我们再来看看主机D是如何利用验证漏洞来欺骗主机A的。当主机D也执行rlogin时,主机A同样要验证本次连接的合法性。如果A不能根据D的IP在本地DNS服务器中查询到对应的主机名时,就会向其它DNS服务器发出请求,最后终会找到DNS服务器C。
如果入侵者修改DNS服务器C中对应于自己IP地址的主机名为主机B时,主机A就会获得对应于D的IP地址的主机名是B的逆向查询结果,因此主机A认可本次连接,于是欺骗A成功。
2、信息隐藏
当某个企业由于保密等原因的需要,给某些特定主机以特定的内部主机名,而这些主机密码又被入侵者获取时,存放保密数据的服务器主机就会完全暴露。 解决以上两个问题的办法主要有两种:
1)、直接利用DNS软件本身具备的安全特性来实现;
2)、以防火墙/NAT为基础,并运用私有地址和注册地址的概念。简而言之就是将内部DNS服务器和外部DNS服务器进行物理分开,内部DNS服务器解析私有的IP,而外部DNS则解析公开的IP。内部主机使用私有地址;对Internet服务的主机用NAT完成注册地址到其私有地址的静态映射;访问Internet的主机用NAT完成其私有地址到注册地址的动态映射。