1,背景
今天无意中发现了dnsenum这个工具,在网上搜了下关于dnsenum的介绍和安装使用方法,资料不是很全,但还好这个工具也算简单,网上也都有源码,可以自行下载下来阅读阅读。本人好奇在本机(ubuntu13.04)安装试了试。
2,dnsenum是什么?
dnsenum是一款非常强大的域名信息收集工具,它是由参与backtrack开发项目的程序员所设计,设计者名叫Fillp(barbsie)Waeythens,该名开发者是一个精通web渗透测试的安全人员,对DNS信息收集有着非常丰富的经验。
dnsenum的目的是尽可能收集一个域的信息,它能够通过谷歌或者字体文件猜测可能存在的域名,以及对一个网段进行反向查询。它可以查询网站的主机地址信息,域名服务器,mx记录在域名服务器上执行axfr请求,通过谷歌脚本得到扩展域名信息(google hacking),提取自身域名并查询,计算C类地址并执行whois查询,执行反向查询,把地址段写入文件。
3,dnsenum获取&运行
dnsenum是一个Perl的脚本,文件脚本可以在 http://code.google.com/p/dnsenum/downloads/detail?name=dnsenum.pl&can=2&q=电子杂志到,源码脚本在 http://code.google。 COM / p / dnsenum /源/浏览/中继/ dnsenum.pl
下载下来是一个叫dnsenum.pl的perl的脚本,如果本机安装了的Perl的话(ubuntu的默认安装),直接就可以执行,但是ubuntu的在执行的时候会有问题,具体提示向下面:
root @ xiong:/ xiong#./dnsenum.pl www.baidu.com
在@INC中找不到String / Random.pm(@INC包含:/ etc / perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2/usr/lib/perl5/usr/share/perl5/usr/lib/perl/5.14/usr/share/perl/5.14/usr/local/lib/site_perl。)在./dnsenum.pl第63行。BEGIN
失败 - 编译中止在./dnsenum.pl第63行。
这是由于在ubuntu下由于缺少一些perl模块,所以会报错,解决办法:安装缺少的perl模块,操作如下:
sudo perl -MCPAN -e shell
根据提示选择是下一步,然后出现如下cpan [1]>提示,
cpan [1]>安装Net :: IP
cpan [2]>安装Net :: DNS
cpan [3]>安装Net :: Netmask
cpan [4]>安装XML :: Writer
cpan [5]>安装String :: Random
注:本机运行时缺少哪个模块安装哪个模块就行。
4,dnsenum的命令参数
用法:dnsenum.pl [Options] <domain>
[Options]:
注意:蛮力-f开关是强制性的。
一般选项:--
dnsserver <server>
使用此DNS服务器进行A,NS和MX查询。
--enum快捷方式选项相当于--threads 5 -s 15 -w。
-h,--help打印此帮助信息。
--noreverse跳过反向查找操作。
--private在文件domain_ips.txt的末尾显示并保存私人ips。
--subfile <file>将所有有效的子域写入此文件。
-t,--timeout <value>以秒为单位的tcp和udp超时值(默认值:10s)。
--threads <value>将执行不同查询的线程数。
-v,--verbose详细:显示所有进度和所有错误消息。
GOOGLE SCRAPING OPTIONS:-p
,--pages <value>在搜索名称时处理的谷歌搜索页面的数量,
默认为5页,必须指定-s开关。
-s,--scrap <value>将从Google获取的最大子域名数(默认为15)。
BRUTE FORCE选项:
-f,--file <file>从该文件读取子域以执行强力操作。
-u,--
update <a | g | r | z>用有效的子域更新-f开关指定的文件。
使用所有结果的(全部)更新。
g仅使用谷歌搜索结果进行更新。
r仅使用反向查找结果进行更新。
z仅使用zonetransfer结果进行更新。
-r,--recursion在子域上进行递归,强制所有具有NS记录的discovred子域。
WHOIS NETRANGE选项:
-d,--delay <value> whois查询之间等待的最大秒数值,该值随机定义,默认值为3秒。
-w,--whois在c类网络范围内执行whois查询。
**警告**:这可能会产生非常大的netranges,并且执行反向查找会花费很多时间。
反向查找选项:
-e,--exclude <regexp>
从反向查找结果中排除与正则表达式表达式匹配的PTR记录,对非法主机名非常有用。
输出选项:
-o - 输出<文件>以XML格式输出。可以导入MagicTree(www.gremwell.com)
5,dnsenum使用举例
#./dnsenum.pl baidu.com或指定DNS服务器,#./dnsenum.pl -dnsserver 8.8.8.8 www.baidu.com
dnsenum.pl版本:1.2.3
----- www.baidu.com - ---
主持人地址:
__________________
www.a.shifen.com。286中A 220.181.112.244
www.a.shifen.com。286 IN A 220.181.111.188
名称服务器:
______________
错误:无法继续无记录www.baidu.com的NS记录
正常应该有NS MX A记录等信息,但是我这不知道为什么没有,下面是从网上摘的别人的结果
- root @ root:/ pentest / enumeration / dns / dnsenum#./dnsenum.pl baidu.com
- dnsenum.pl版本:1.2.2
- ----- baidu.com -----
- 主持人地址:
- __________________
- baidu.com 149 IN A 220.181.111.85
- baidu.com 149 IN A 220.181.111.86
- baidu.com 149 IN A 123.125.114.144
- 名称服务器:
- ______________
- ns4.baidu.com 72162 IN A 220.181.38.10
- ns2.baidu.com 73314 IN A 61.135.165.235
- dns.baidu.com 72110 IN A 202.108.22.220
- ns3.baidu.com 72256 IN A 220.181.37.10
- 邮件(MX)服务器:
- ___________________
- jpmx.baidu.com 6270 IN A 61.208.132.13
- mx50.baidu.com 292 IN A 220.181.50.208
- mx1.baidu.com 300 IN A 61.135.163.61
- 尝试区域传输并获取绑定版本:
- _________________________________________________
- 在ns4.baidu.com上试用baidu.com的区域传输...
- AXFR记录查询失败:NOERROR
- ns4.baidu.com绑定版本:baidu dns
- 尝试在ns2.baidu.com上baidu.com的区域传输...
- AXFR记录查询失败:NOERROR
- ns2.baidu.com绑定版本:baidu dns
- 在dns.baidu.com试用baidu.com的区域传输...
- AXFR记录查询失败:NOERROR
- dns.baidu.com绑定版本:baidu dns
- 在ns3.baidu.com上试用baidu.com的区域传输...
- AXFR记录查询失败:NOERROR
- ns3.baidu.com绑定版本:baidu dns
- 检测到通配符后,所有子域名将指向相同的IP地址,再见。
- 根@根:/ pentest /枚举/ DNS / dnsenum#