DNS字典爆破

什么是字典爆破呢?

就是用大量的数据去一个一个尝试出正确的数据或你想得到的数据。

密码字典里存放的是密码,

而DNS字典里存放的是大量的域名记录: bbs. www. mail. 数十乃至数万个。

我们用这个字典去进行DNS查询,

如果有,那么服务器就会返回其域里的这台主机记录。

当你的字典足够大,我们就可以获取目标域的所有主机记录。

Kali虽然内置了多条爆破指令,却没有内置字典,所以需要你自己生成或收集。

这里只推荐几个速度较快的命令

一、fierce

英文翻译成凶猛的(确实很凶猛)

使用: 

fierce -dnsserver 缓存dns服务器 -dns 目标域名 -wordlist 字典文件

例: 

fierce -dnsserver 114.114.114.114 -dns baidu.com -wordlist /usr/share/fierce/hosts.txt

/usr/share/fierce/hosts.txt是其自带的字典文件,可以在Kali中通过dpkg -L 命令找出其安装时的所有文件位置

dpkg -L fierce;/./usr/usr/bin/usr/bin/fierce/usr/share/usr/share/doc/usr/share/doc/fierce/usr/share/doc/fierce/changelog.Debian.gz/usr/share/doc/fierce/copyright/usr/share/fierce/usr/share/fierce/hosts.txt

如果你上面指定了一个不存在的字典文件,命令也可以跑起来。 

因为首先会进行axfr区域传输请求,随后便会提示文件不存在并退出

fierce -dnsserver 114.114.114.114 -dns baidu.com -wordlist a.txt;DNS Servers for baidu.com:    ns4.baidu.com    dns.baidu.com    ns7.baidu.com    ns3.baidu.com    ns2.baidu.comTrying zone transfer first...Unsuccessful in zone transfer (it was worth a shot)Okay, trying the good old fashioned way... brute forceCan't open a.txt or the default wordlistExiting...

而当你正确的输入字典文件位置时

fierce -dnsserver 114.114.114.114 -dns baidu.com -wordlist /usr/share/fierce/hosts.txt;DNS Servers for baidu.com:    dns.baidu.com    ns7.baidu.com    ns2.baidu.com    ns4.baidu.com    ns3.baidu.comTrying zone transfer first...Unsuccessful in zone transfer (it was worth a shot)Okay, trying the good old fashioned way... brute forceChecking for wildcard DNS...Nope. Good.Now performing 2280 test(s)...111.206.223.136 0.baidu.com61.135.186.115  1.baidu.com61.135.186.230  11.baidu.com202.108.23.222  11.baidu.com123.125.115.209 12.baidu.com123.125.115.174 12.baidu.com180.149.131.33  61.baidu.com^C

这里已经试出很多主机主机了,但因为太多所以直接取消

二、dnsdict6

目前Kali2.0中已经不集成这个工具了,需要单独下载。 

使用wget会提示证书错误,所以用物理机下载再托进虚拟机。 

环境安装

apt-get install libpcap-dev libssl-dev libnetfilter-queue-dev;tar xzf thc-ipv6-3.2.tar.gz;cd thc-ipv6-3.2;make && make install;

使用 

dnsdict6 [-d4] [-s|-m|-l|-x|-u] [-t 并发线程数] [-D] 域名 [字典文件] 

参数 

-d 显示ipv6结果 
-4 显示ipv4结果 
-t 并发线程数,默认8,最大32 
-[smlxu] 使用内置字典,从左往右大小递增 
-D 使用本地字典文件

dnsdict6 -4 -t 32 -u baidu.com;Starting DNS enumeration work on baidu.com. ...Starting enumerating baidu.com. - creating 32 threads for 16726 words...Estimated time to completion: 2 to 6 minutes1.baidu.com. => 61.135.186.1150.baidu.com. => 111.206.223.13612.baidu.com. => 123.125.115.20912.baidu.com. => 123.125.115.17411.baidu.com. => 61.135.186.23011.baidu.com. => 202.108.23.222^C

其速度非常快,并且准确率很高。

三、dnsrecon

这个命令速度也非常快,并且支持超时时间

dnsrecon -d 目标域名 [-n 域名服务器] [--lifetime 超时秒数] [--threads 线程数] [-t brt|std] [-D 字典文件] 

dnsrecon -d baidu.com -t brt --threads 32 --lifetime 5 -D /usr/share/dnsrecon/namelist.txt;[*] Performing General Enumeration of Domain: baidu.com[*] Checking for Zone Transfer for baidu.com name servers[*] Resolving SOA Record[+]      SOA dns.baidu.com 202.108.22.220[*] Resolving NS Records[*] NS Servers found:[*]     NS dns.baidu.com 202.108.22.220[*]     NS ns4.baidu.com 220.181.38.10[*]     NS ns7.baidu.com 180.76.76.92[*]     NS ns3.baidu.com 220.181.37.10[*]     NS ns2.baidu.com 61.135.165.235[*] Removing any duplicate NS server IP Addresses.........

DNS爆破的命令有不少,大家选一个自己用起来顺手的就行了。

DNS注册信息

通过whois命令能查询相应域名的信息

whois 域名/地址

whois woyun.org;Registry Registrant ID: C175940112-LRORRegistrant Name: chen chong boRegistrant Organization: chen chong boRegistrant Street: Tiane Garden, Changxing Road, Tianhe District, GuangZhouRegistrant City: guang zhou shiRegistrant State/Province: guang dongRegistrant Postal Code: 510650Registrant Country: CNRegistrant Phone: +86.13409801023Registrant Phone Ext:Registrant Fax: +86.13409801023Registrant Fax Ext:Registrant Email: anco1027@gmail.comRegistry Admin ID: C175940112-LRORAdmin Name: chen chong boAdmin Organization: chen chong boAdmin Street: Tiane Garden, Changxing Road, Tianhe District, GuangZhouAdmin City: guang zhou shiAdmin State/Province: guang dongAdmin Postal Code: 510650Admin Country: CN......

能发现很多有用的信息,但如果对方开启了域名隐私保护的话就不会有这么多信息了。

或者直接访问查询网站进行查询。

Alt text