DNS区域传送(DNS zone transfer)指的是一台备用服务器使用来自主服务器的数据刷新自己的域(zone)数据库。这为运行中的DNS服务提供了一定的冗余度,其目的是为了防止主的域名服务器因意外故障变得不可用时影响到整个域名的解析。一般来说,DNS区域传送操作只在网络里真的有备用域名DNS服务器时才有必要用到,但许多DNS服务器却被错误地配置成只要有client发出请求,就会向对方提供一个zone数据库的详细信息,所以说允许不受信任的因特网用户执行DNS区域传送(zone transfer)操作是后果最为严重的错误配置之一。

区域传送漏洞的危害:黑客可以快速的判定出某个特定zone的所有主机,收集域信息,选择攻击目标,找出未使用的IP地址,黑客可以绕过基于网络的访问控制。

在linux下检查目标站点的区域传送漏洞

在windows下检测目标站点的区域传送漏洞

或者直接使用set type=ns来获取

使用工具来获取DNS信息

cd /pentest/enumeration/dns/dnsenum
2  
3

./dnsenum.pl --enum domain.com

通过linux系统和windows系统都可以检测出该站点使用的DNS存在区域传送漏洞,通过执行命令我们可以清楚的看到整个域下的域名解析信息,从而将整个域暴漏无遗(如图A记录和MX记录)。

解决方案:区域传送是DNS常用的功能,区域传送的漏洞也不是没有办法解决的,严格限制允许区域传送的主机即可,例如一个主DNS服务器应该只允许它的从DNS服务器执行区域传送的功能。

针对于bind软件,可以通过allowe-transfer指令来控制,可以作为global选项或者zone选项的一个参数,我们可以使用地址列表如下

1 allowe-transfer {192.168.1.1; 172.24.123.253;};

但是使用基于地址的访问控制列表可能会被某些“意志坚定”黑客绕过,呵呵。最好的方法是使用TSIG key来严格定义区域传送的关系,如下

1 allowe-transfer {key "dns1-slave1"; key "dns1-slave2";};

参考文章:

http://back.waitalone.cn/post/DNSTransfer.html

http://laoxu.blog.51cto.com/4120547/1210565

最新文章

  1. 关于 Record & TList 的一点吐槽
  2. Student学生管理系统
  3. poj 1363
  4. Scala underscore的用途
  5. Excel文件导入SQL Server数据库表
  6. [Android]天气App 1
  7. Xcode无法设置视图的 autosizing control原因
  8. 项目管理系统 SQL2005数据库查询CPU100%问题研究
  9. HDU-1406 完数
  10. mysql的约束的讨论
  11. android 由于界面控件过多耗时处理办法
  12. C++学习(八)入门篇——复合类型
  13. TCP网络编程-----客户端请求连接服务器、向服务器发数据、从服务器接收数据、关闭连接
  14. 使用pscp命令在Windows与linux之间拷贝文件
  15. 日常问题181101: ueditor文本编辑器
  16. Thymleaf中th:each标签遍历list如何获取index
  17. 二维前缀和好题hdu6514
  18. JavaScript 区分中英文字符的两种方法: 正则和charCodeAt()方法
  19. html5与css 1. web标准及组成
  20. 第二弹:超全Python学习资源整理(进阶系列)

热门文章

  1. C#-WinForm-进程、线程
  2. QT信号槽机制
  3. css-文字和图片在容器内垂直居中实测。方法来源张鑫旭博客。
  4. 先装.net后装iis的问题
  5. MAC上快速调出终端的设置(保持和Windows的操作一致)
  6. spring容器初始化执行某个方法
  7. GNU CMAKE 笔记
  8. centos安装CODEBLOCKS
  9. CF 161B Discounts(贪心)
  10. 导入.pch文件