详解DNS缓存投毒攻击

发布者:系统管理员发布时间:2016-11-28浏览次数:1347

DNS缓存投毒攻击是指攻击者欺骗DNS服务器相信伪造的DNS响应的真实性。这种类型攻击的目的是将依赖于此DNS服务器的受害者重定向到其他的地址,例如,将所有访问www.cnn.com的请求重定向到www.playboy.com。这种类型的攻击的已存在的典型应用是钓鱼方式的攻击,将一个想到银行的访问重定向到黑客所有的伪造网站。

一个DNS SRV记录帮助SIP电话进行拨号,就像MX记录帮助将E-mail地址映射为正确的邮件服务器。一些场合开始应用DNS SRV记录来将特定SIP请求转发到特定的代理服务器,特别是在公司外的服务器。这样的方式蕴涵着特别的危险,如果攻击者能够篡改这些资料列表,来将所有到一个区域的呼叫重定向到他所控制的外部代理服务器。

一个简单的DNS缓存投毒攻击如下所示,引用自DNS审计工具DNSA的文档,详见http://www.packetfactory.net/projects/dnsa:

 
  1. ./dnsa -3 -D the_host_IP_which_is_asked_for -S  
  2.  
  3. normal_host_IP -s DNS_server_which_is_doing_the_request -a  
  4.  
  5. host_in_additional_record -b ip_in_the_additional_record -i INTERFACE  
  6.  
  7. ./dnsa -3 -D hacker.pirate.org -S 100.101.102.103 -s  
  8.  
  9. 194.117.200.10 -a www.microsoft.com -b 1.2.3.4 -i eth0 

DNS缓存投毒对策

DNS缓存投毒几乎可以完全避免(实际上并非如此--译者注),前提是对DNS服务器进行了合理的配置。这包括强制服务器检查其他非权威的服务器转发的DNS响应信息,并丢弃任何返回的与最初的查询不相关DNS响应记录。许多最新的DNS服务器在默认配置下已经不再受此类攻击影响。