其他分享
首页 > 其他分享> > DNS域传送漏洞

DNS域传送漏洞

作者:互联网

什么是DNS?

DNS (Domain Name System 的缩写)的作用非常简单,就是根据域名查出IP地址。你可以把它想象成一本巨大的电话本。

举例来说,如果你要访问域名math.stackexchange.com,首先要通过DNS查出它的IP地址是151.101.129.69

 

DNS服务器使用的TCP/UDP端口号是53。

最常用的DNS记录有以下几类:

DNS类型
A IP地址记录,记录一个域名对应的IP地址
AAAA IPv6 地址记录,记录一个域名对应的IPv6地址
CNAME 别名记录,记录一个主机的别名
MX 电子邮件交换记录,记录一个邮件域名对应的IP地址,如root@xxxx.com
NS 域名服务器记录 ,记录该域名由哪台域名服务器解析
PTR 反向记录,也即从IP地址到域名的一条记录
TXT 记录域名的相关文本信息

nslookup命令 

Windows下的nslookup命令:

λ nslookup.exe ?
用法:

1 λ nslookup.exe ?
2 用法:
3    nslookup [-opt ...]             # 使用默认服务器的交互模式
4    nslookup [-opt ...] - server    # 使用 "server" 的交互模式
5    nslookup [-opt ...] host        # 仅查找使用默认服务器的 "host"
6    nslookup [-opt ...] host server # 仅查找使用 "server" 的 "host"

交互式nslookup命令:

 1 λ nslookup.exe
 2 默认服务器:  UnKnown
 3 Address:  8.8.8.8
 4 
 5 > help
 6 命令:   (标识符以大写表示,[] 表示可选)
 7 NAME            - 打印有关使用默认服务器的主机/域 NAME 的信息
 8 NAME1 NAME2     - 同上,但将 NAME2 用作服务器
 9 help or ?       - 打印有关常用命令的信息
10 set OPTION      - 设置选项
11     all                 - 打印选项、当前服务器和主机
12     [no]debug           - 打印调试信息
13     [no]d2              - 打印详细的调试信息
14     [no]defname         - 将域名附加到每个查询
15     [no]recurse         - 询问查询的递归应答
16     [no]search          - 使用域搜索列表
17     [no]vc              - 始终使用虚拟电路
18     domain=NAME         - 将默认域名设置为 NAME
19     srchlist=N1[/N2/.../N6] - 将域设置为 N1,并将搜索列表设置为 N1、N2 等
20     root=NAME           - 将根服务器设置为 NAME
21     retry=X             - 将重试次数设置为 X
22     timeout=X           - 将初始超时间隔设置为 X 秒
23     type=X              - 设置查询类型(如 A、AAAA、A+AAAA、ANY、CNAME、MX、
24                           NS、PTR、SOA 和 SRV)
25     querytype=X         - 与类型相同
26     class=X             - 设置查询类(如 IN (Internet)和 ANY)
27     [no]msxfr           - 使用 MS 快速区域传送
28     ixfrver=X           - 用于 IXFR 传送请求的当前版本
29 server NAME     - 将默认服务器设置为 NAME,使用当前默认服务器
30 lserver NAME    - 将默认服务器设置为 NAME,使用初始服务器
31 root            - 将当前默认服务器设置为根服务器
32 ls [opt] DOMAIN [> FILE] - 列出 DOMAIN 中的地址(可选: 输出到文件 FILE)
33     -a          -  列出规范名称和别名
34     -d          -  列出所有记录
35     -t TYPE     -  列出给定 RFC 记录类型(例如 A、CNAME、MX、NS 和 PTR 等)
36                    的记录
37 view FILE           - 对 'ls' 输出文件排序,并使用 pg 查看
38 exit            - 退出程序

1) 使用type参数可以设置记录类型。

 2) 使用ls命令,可以列出一个域下面所有的域名。

 

查询DNS: nslookup -type=ns XX.com

查询邮件服务器: nslookup -type=mx XX.com

 

在交互式shell中发现一个DNS服务器的域传送漏洞的过程:

   
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 D:\>nslookup 默认服务器:  public1.114dns.com Address:  114.114.114.114   > server dns.nwpu.edu.cn 默认服务器:  dns.nwpu.edu.cn Address:  202.117.80.2   > ls nwpu.edu.cn [dns.nwpu.edu.cn] nwpu.edu.cn.                   NS     server = dns.nwpu.edu.cn nwpu.edu.cn.                   NS     server = dns1.nwpu.edu.cn nwpu.edu.cn.                   NS     server = dns2.nwpu.edu.cn nwpu.edu.cn.                   NS     server = dns3.nwpu.edu.cn *                              A      222.24.192.99 (... 省略大量的记录) npunecas                       NS     server = webcomp.npunecas.nwpu.edu.cn webcomp.npunecas               A      202.117.85.146 nwpu03                         A      202.117.80.4 nwpudb2                        A      222.24.210.149 poj                            A      192.168.0.248 portal                         A      61.150.43.10 portal1                        A      222.24.192.31 portal2                        A      222.24.192.32 rei                            A      202.117.85.10 saip                           NS     server = saipserver.saip.nwpu.edu.cn saipserver.saip                A      202.117.85.72 test                           A      222.24.192.29 yzb                            A      202.117.85.3 zsb                            A      202.117.87.130 zygx                           A      202.117.80.9

操作基本的步骤是:

1) 输入nslookup命令进入交互式shell

2) Server 命令参数设定查询将要使用的DNS服务器

3) Ls命令列出某个域中的所有域名

4) Exit命令退出程序

 

 

以上示例了存在漏洞的DNS服务器,若是不存在漏洞的主机,则可能提示错误Query Refused:

   
1 2 3 4 5 6 7 8 9 10 11 12 13 14 D:\>nslookup 默认服务器:  public1.114dns.com Address:  114.114.114.114   > server ns.pku.edu.cn 默认服务器:  ns.pku.edu.cn Address:  202.112.7.13   > ls pku.edu.cn [ns.pku.edu.cn] *** 无法列出域 pku.edu.cn: Query refused DNS 服务器拒绝将区域 pku.edu.cn 传送到您的计算机。如果这不正确, 请检查 IP 地址 202.112.7.13 的 DNS 服务器上 pku.edu.cn 的 区域传送安全设置。

 

使用nmap扫描DNS域传送泄露漏洞

使用nmap扫描器附带的脚本,可以扫描DNS服务器是否存在域传送漏洞。语法为:

nmap --script dns-zone-transfer --script-args dns-zone-transfer.domain=nwpu.edu.cn -p 53 -Pn dns.nwpu.edu.cn

 

上述命令命令说明如下:

  1. nmap –script dns-zone-transfer表示加载nmap文件夹下的脚本文件dns-zone-transfer.nse,扩展名.nse可省略
  2. –script-args dns-zone-transfer.domain=zonetransfer.me向脚本传递参数,设置列出记录的域是nwpu.edu.cn
  3. -p 53设置扫描53端口
  4. -Pn设置通过Ping发现主机是否存活

 

Dig命令

dig来测试DNS服务器是否存在域传送泄露。Dig是一个非常强大的DNS查询工具,输入“dig -h”查看它的使用说明

 

 

 

 

 

 

 

 

 

 

 

 

 

参考资料:

DNS域传送漏洞(一) | 李劼杰的博客

 

标签:传送,nwpu,cn,漏洞,DNS,edu,服务器,nslookup
来源: https://www.cnblogs.com/Risk2S/p/11460920.html