一:漏洞名称:
DNS域传送漏洞,DNS区域传输
描述:
DNS 区域传送(DNS zone transfer)是指一台备用 DNS 服务器使用来自主 DNS 服务器的数据刷新自己的域(zone)数据库,从而避免主 DNS 服务器因意外故障影响到整个域名解析服务。
一般情况下,DNS 区域传送只在网络里存在备用 DNS 服务器时才会使用;但许多 DNS 服务器却被错误地配置,只要有客户机发出请求,就会向对方提供一个 zone 数据库的详细信息。因此,不受信任的因特网用户也可以执行 DNS 区域传送(zone transfer)操作。
恶意用户可以通过 DNS 区域传送快速地判定出某个特定 zone 的所有主机,并收集域信息、选择攻击目标,进而找出未使用的 IP 地址,绕过基于网络的访问控制窃取信息。
(不明白的再看这位博主写的:摘自https://www.jianshu.com/p/d2af08e6f8fb
)
常用的DNS记录有以下几类:
DNS 类型 A IP地址记录,记录一个域名对应的IP地址 AAAA IPv6 地址记录,记录一个域名对应的IPv6地址 CNAME 别名记录,记录一个主机的别名 MX 电子邮件交换记录,记录一个邮件域名对应的IP地址,如[email protected] NS 域名服务器记录 ,记录该域名由哪台域名服务器解析 PTR 反向记录,也即从IP地址到域名的一条记录 TXT 记录域名的相关文本信息
检测条件:
1.被测网站可正常访问。
检测方法:
其实利用方法分为手工和工具两种,我们可以利用BT5下面的工具Dnsenum或者是其它工具,手工的话就利用nslookup即可
1.使用工具来获取DNS信息:
使用工具来获取DNS信息
cd /pentest/enumeration/dns/dnsenum
# ./dnsenum.pl --enum domain.com
这样就可以简单的利用了。
2.使用手工的方法,推荐。方法如下:
查看方法:
> set type=ns //现获取ns记录
> npc.gov.cn
> server ns.npc.gov.cn //设置ns
> set type=axfr //设置区域传输
> ls -d npc.gov.cn
查看效果如下:
:
查询结果保存在189store.com.txt中
使用如下指令查看view 189store.com.txt
有74条记录
(注:
操作基本的步骤是:
输入nslookup命令进入交互式shell
Server 命令参数设定查询将要使用的DNS服务器
Ls命令列出某个域中的所有域名
攻击者能获取的敏感主要包括:
1)网络的拓扑结构,服务器集中的IP地址段
2)数据库服务器的IP地址
3)测试服务器的IP地址,
4)v*n服务器地址泄露
5)其他敏感服务器
以上示例了存在漏洞的DNS服务器,若是不存在漏洞的主机,则可能提示错误Query Refused:
)
漏洞修复:
以下为常见的修复方式:
1.Windows 界面禁止DNS域传送漏洞方法:
1. 打开 DNS。
2. 使用鼠标右键单击一个 DNS 区域,然后单击“属性”。
3. 在“区域传输”选项卡,执行下列操作之一:
要禁用区域传输,请清除“允许区域传输”复选框。
要允许区域传输,请选中“允许区域传输”复选框。
4. 如果允许进行区域传输,请执行下列操作之一:
要允许向任何服务器进行区域传输,请单击“到所有服务器”。
要只允许向“名称服务器”选项卡上列出的 DNS 服务器进行区域传输,请单击“只有在名称服务器选项卡中列出的服务器”。 要只允许向特定 DNS 服务器进行区域传输,请单击“只允许到下列服务器”,然后添加一个或多个 DNS 服务器的IP 地址。
2.Bind 9界面禁止DNS域传送漏洞方案:
关闭BIND9对于ls命令功能,在named.conf.options这样写,对于有slave或者特殊需要的,用ip替换none即可allow-transfer { none; };
3.如果你使用 bind 8,可以在“named.conf”文件(缺省路径是/etc/named.conf)的对某个域的域传输进行限制。
例如,您可以只允许自己本地主机以及某个可信主机(比如辅助域名服务器)对"linux.bogus"域进行域传输:
zone "linux.bogus" {
allow-transfer { 192.168.1.4; localhost; };
};
注意:在修改完配置文件之后,需要重新启动named。
4.如果您使用的是Windows DNS Server,可以启动DNS Manager,在Zone Properties窗口中有一个DNS SERVER的列表,选中Only Allow Access From Secondaries Included on Notify List复选项,服务器就会限制可以进行区域传送的服务器,只有Notify List中授权了的辅DNS Server才可以进行区域传送。
5.设置DNS安全策略:
1.隔离DNS服务器,专机专用
2.隐藏BIND的版本号
3.使用备份域名服务器
4.Chroot bind
5.禁止区域传送
其他补充说明:
来自:https://blog.****.net/c465869935/article/details/53444117
ps: 收集dns服务器,推测出网段与解析的域,从而检测DNS是否存在域传送漏洞。学习研究用得到,手工比较麻烦,仅列出来当作一种方法。
1. 利用网络空间搜索引擎收集域名服务器
shodan
注: 还没研究过如何从以上搜索引擎中批量爬取或下载搜索结果。
还可参考:
李劼杰DNS域传送漏洞系列博客
dns 域传送漏洞利用总结