DNS域传送漏洞

使用 AXFR 协议的 DNS 区域传输是跨 DNS 服务器复制 DNS 记录的最简单机制。 为避免需要在多个 DNS 服务器上编辑信息,您可以在一台服务器上编辑信息并使用 AXFR 将信息复制到其他服务器。 但是,如果您不保护您的服务器,恶意方可能会使用 AXFR 获取有关您所有主机的信息。

1、DNS工作原理

DNS(域名系统)就像一个互联网电话簿。它负责将人类可读的主机名解析为机器可读的 IP 地址。该系统包括提供信息的权威DNS服务器和临时存储该信息以供客户端查找的 DNS 缓存。典型的DNS查询非常简单:客户端提供人类可读的主机名,并作为响应接收IP地址。但是,系统假定查询客户端知道主机名。

DNS 服务器托管区域。DNS 区域是由DNS服务器提供服务的域名空间的一部分。例如,http://example.com及其所有子域可能是一个区域。但是, http://second.example.com也可能是一个单独的区域。

2、DNS域传送漏洞

DNS协议支持使用axfr类型的记录进行区域传送,用来解决主从同步的问题。如果管理员在配置DNS服务器的时候没有限制允许获取记录的来源,将会导致DNS域传送漏洞。

2. 环境搭建

Vulhub使用Bind9来搭建dns服务器,但不代表只有Bind9支持AXFR记录。运行DNS服务器:

docker-compose up -d

环境运行后,将会监听TCP和UDP的53端口,DNS协议同时支持从这两个端口进行数据传输。

3、漏洞复现

在Linux下,我们可以使用dig命令来发送dns请求。比如,我们可以用dig @your-ip vulhub.org获取域名vulhub.org在目标dns服务器上的A记录:

发送axfr类型的dns请求:dig @your-ip -t axfr vulhub.org

可见,我获取到了vulhub.org的所有子域名记录,这里存在DNS域传送漏洞。

我们也可以用nmap script来扫描该漏洞:nmap --script dns-zone-transfer.nse --script-args “dns-zone-transfer.domain=vulhub.org” -Pn -p 53 your-ip

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值