设为首页 收藏本站
查看: 759|回复: 0

[经验分享] nslookup,dig,host等工具命令实例

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-9-29 09:38:19 | 显示全部楼层 |阅读模式
nslookup,dig,host等工具命令实例

演示环境:BackTrack 5 Release 3


假设这里我们要查询的域名是 evil.com
google 的公众 dns 服务器为 8.8.8.8
baidu  的公众 dns 服务器为 202.108.22.220
hinet  的公众 dns 服务器为 168.95.1.1

并且本地的  /etc/resolv.conf  文件默认指向 8.8.8.8




《 dig 实战篇 》


查询 evil.com 域的所有类型资源记录:
1
root@bt:~# dig +qr evil.com. any





使用 baidu 的公众 dns 服务器查询 evil.com 域的所有类型资源记录:
1
root@bt:~# dig @202.108.22.220 +qr evil.com. any





使用 hinet 的公众 dns 服务器查询 evil.com 域的所有 A 记录:
1
root@bt:~# dig @168.95.1.1 +qr evil.com. a






使用 google 的公众 dns 服务器查询 evil.com 域的所有 SOA 记录:

1
root@bt:~# dig @8.8.8.8 +qr evil.com soa




假设从上一条命令的输出中,得到 evil.com 域的权威名字服务器为
ns1.evil.com   

查询该名字服务器的 IP:
1
root@bt:~# dig ns1.evil.com.



假设上面命令输出的 IP 为  192.168.0.1

向该权威名字服务器执行完全区域传送,尝试获取 evil.com 域的所有类型资源记录,包括未公开注册的,只能在其内网使用的主机名:
1
root@bt:~# dig @192.168.0.1 evil.com. axfr




向该权威名字服务器执行增量区域传送,尝试获取 evil.com 域已更新的所有类型资源记录,包括未公开注册的,只能在其内网使用的主机名:
1
root@bt:~# dig @192.168.0.1 evil.com. ixfr





使用 google 的公众 dns 服务器查询 evil.com. 域的所有 MX 记录(邮件交换服务器),并且过滤掉输出的命令版本,查询时间统计,仅显示回答部分:
1
root@bt:~# dig @8.8.8.8 +nocmd +noall +answer evil.com. mx





尝试对 evil.com 中的权威名字服务器上运行的 BIND 进行版本探测,旗标获取:
1
root@bt:~# dig @192.168.0.1 +nocmd txt chaos VERSION.BIND +noall +answer



注意,管理员可能设置不显示 BIND 的版本信息,或者修改成有误导性的信息,甚至禁止显示版本信息,例如对 baidu 的公众 dns 服务器进行版本探测结果如下:
1
2
root@bt:~# dig @202.108.22.220 +nocmd txt chaos VERSION.BIND +noall +answer
VERSION.BIND.        0    CH    TXT    "baidu dns"



上面最右侧字段双引号中的字符串就是自定义的版本信息



向 google 的公众 dns 服务器查询 dns.baidu.com 的 A 记录:
1
2
root@bt:~# dig @8.8.8.8 +nocmd  +noall +answer dns.baidu.com. a
dns.baidu.com.        503    IN    A    202.108.22.220



可以看到其 IP 和前面给出的匹配,那么,我们通过反向解析查询,验证一下
202.108.22.220 能否对应回 dns.baidu.com

1
2
3
4
5
root@bt:~# dig @8.8.8.8 +nocmd  +noall +answer -x 202.108.22.220
220.22.108.202.in-addr.arpa. 4189 IN    PTR    xd-22-220-a8.bta.net.cn.

root@bt:~# dig @8.8.8.8 +nocmd  +noall +answer xd-22-220-a8.bta.net.cn.
xd-22-220-a8.bta.net.cn. 3599    IN    A    202.108.22.220



结合上面2条查询结果可以分析出:
dns.baidu.com  与  xd-22-220-a8.bta.net.cn  都对应到 202.108.22.220
前者应该是后者的别名( CNAME )




向 google 的公众 dns 服务器查询 www.evil.com 并显示整个解析过程:
1
root@bt:~# dig @8.8.8.8 +trace www.evil.com





假设 evil.com 域禁止了区域传送,那么我们可以使用 fierce 对该域中隐藏的主机名和 IP 地址记录,进行暴力破解:
1
2
root@bt:~# cd /pentest/enumeration/dns/fierce/
root@bt:/pentest/enumeration/dns/fierce# ./fierce.pl -dns evil.com



以上命令将使用 fierce 目录内建的字典文件,使用 -wordlist 选项,可以加载你自定义的字典:
1
root@bt:/pentest/enumeration/dns/fierce# ./fierce.pl -dns evil.com -wordlist MyWordList.txt





*****通过阅读 dig 的 man 文档了解到,dig 默认使用递归查询,当我们使用 @ 操作符向指定的 dns 服务器发起请求解析它负责的域中的所有记录时,如果对方配置成不允许递归请求,那么很有可能拒绝本次查询,解决方法很简单:既然对方不准我们递归,那么我们就不要递归,这通过使用 +norecurse 参数来实现,对于安全策略不够严谨的一些 dns 服务器而言,这等同于成功的进行了一次完全区域传送,
以 baidu 的 dns 服务器为例,在使用 +norecurse 参数前,它拒绝递归解析所有查询 baidu.com 域中记录的请求:
1
2
3
root@bt:~# dig @dns.baidu.com baidu.com any

;; WARNING: recursion requested but not available



添加 +norecurse 参数,再次发起请求,我们伪装成迭代查询,注意下面返回的资源记录数量,这基本和一个被允许区域传送的客户端得到的结果一样详尽:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
root@bt:~# dig @dns.baidu.com +nocmd +noall +answer +norecurse baidu.com. any

baidu.com.        7200    IN    SOA    dns.baidu.com. sa.baidu.com. 2012121261 300 300 2592000 7200
baidu.com.        7200    IN    TXT    "v=spf1 include:spf1.baidu.com include:spf2.baidu.com include:spf3.baidu.com a mx ptr ~all"
baidu.com.        7200    IN    MX    20 jpmx.baidu.com.
baidu.com.        7200    IN    MX    20 mx50.baidu.com.
baidu.com.        7200    IN    MX    10 mx.n.shifen.com.
baidu.com.        7200    IN    MX    20 mx1.baidu.com.
baidu.com.        600    IN    A    220.181.111.86
baidu.com.        600    IN    A    123.125.114.144
baidu.com.        600    IN    A    220.181.111.85
baidu.com.        86400    IN    NS    dns.baidu.com.
baidu.com.        86400    IN    NS    ns7.baidu.com.
baidu.com.        86400    IN    NS    ns2.baidu.com.
baidu.com.        86400    IN    NS    ns3.baidu.com.
baidu.com.        86400    IN    NS    ns4.baidu.com.




可以看到,SOA,MX,NS,A 记录甚至连 TXT 记录都一览无遗

当然,这并不是说, +norecurse 是万能丹,只是碰巧 dns.baidu.com 的安全策略有逻辑上的缺陷,而这里通过 dig 挖掘到的仅是其中之一;但这个思路值得借鉴:对于那些看似固若金汤的名字服务器,应该采用多种不同的手段来测试,尝试将提交的查询请求“复杂化”,观察并根据服务器的响应修改参数再次提交,或许就能曝露出那些不为人知的错误配置和安全漏洞,这也是渗透测试的重要思想之一







《 基于shell 命令行的 whois 实战篇 》

查询 evil.com 域的注册者信息,受理注册的机构,该域的名字服务器等信息:
1
root@bt:~# whois evil.com



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-25509-1-1.html 上篇帖子: bash漏洞利用【部分转载】 下篇帖子: yum This system is not registered with RHN. RHN support will be disabled
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表