前言
本文适合Web安全爱好者,其中会提到8种思路,7个工具和还有1个小程序,看本文前需要了解相关的Web基础知识、子域名相关概念和Python 程序的基础知识。
感谢我的好友龙哥的技巧大放送以及Oritz分享的小程序~
首先我们引用一句名言作为开篇:
在渗透测试中,信息搜集能力的差距,不明显,也最明显。
这句话是龙哥说的,而在技术分享上,我们觉得授之以鱼之前,更重要的是授之以渔。因此本篇文章首先进行子域名搜集思路的梳理,抛砖引玉,然后介绍一下常用的工具,最后分享一个基于 HTTPS 证书的子域名查询小工具。
最简单的一种方法,对于 Web 子域名来说,猜测一些可能的子域名,然后浏览器访问下看是否存在。
比如 site:163.com
如查询 MX、CNAME 记录等
比如用 nslookup 命令
nslookup -qt=any bing.com
还有一种基于DNS查询的暴力破解,举个栗子,比如用 nslookup 命令挨个查询猜测的子域名,看能否查询到结果。
可以利用爬虫从页面源代码中提取子域名
以 burp 的爬虫为例:
至于 IP 如何获取,也会有一些玩法,有机会咱们再梳理。
如: DNS 域传送漏洞
有很多子域名的查询站点,可以搜索“子域名查询”寻找,如:
1)http://i.links.cn/subdomain/ 可查询二级、三级等子域名
2)http://dns.aizhan.com/ 查询同 IP 绑定了哪些域名
3)https://crt.sh/ 根据 HTTPS 证书查询子域名
1)Layer 子域名挖掘机
2)wydomain
猪猪侠:https://github.com/ring04h/wydomain
3)subDomainsBrute
lijiejie:https://github.com/lijiejie/subDomainsBrute
4)Sublist3r
aboul3la: https://github.com/aboul3la/Sublist3r
最后分享下团队小伙伴 Oritz 写的基于 HTTPS 证书的子域名收集练习小程序 “GetDomainsBySSL.py” ,程序异常处理之类的还没完善,感兴趣的小伙伴可以当做例子继续开发哦。
下载链接:Youdao
程序原理:集成了 crt.sh 和 Google 的查询接口,以及调用 OpenSSL 去解析 HTTPS 证书的信息(需要说明的是,Google 的查询接口可能需要代理访问,而 OpenSSL 模块在 Linux 下通常自带)。
程序依赖的模块:
1)lxml:https://pypi.python.org/pypi/lxml/2.3/
2)OpenSSL
Windows下运行(没有OpenSSL的情况运行):
Linux下运行(kali自带了OpenSSL模块):
好了,时间过得真快,又到了说再见的时候。今天的小分享就到这里,一句话概括就是8 种思路,7 个工具,还有 1个小程序,欢迎交流讨论哦~
*作者:网易安全应急响应中心(企业账号),转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)
已有 29 条评论
小程序挂了,补一下链接吧
@ 河蟹 试试这个吧:http://note.youdao.com/share/?id=247d97fc1d98b122ef9804906356d47a&type=note#/ 可能地址缺个参数就没显示出附件,我刚才试了下,这个应该可以的
威武
虽然大部分知道,但是有人能整理出来还是比较好的。点赞。
黄易老司机前来视察
不管你是什么程序,不管你有多叼, 最终还是要看字典。。。。 字典才是王道。
@ 666 大实话。。。之前挖一个洞,怎么挖的挖不到。后面叫朋友来帮忙看看,一会儿就搞定了。我问怎么挖到的,他说:“挖毛线啊,直接社工裤查邮箱账号密码,进入邮件,什么东西都搞到了”
不错。。。
收集信息是 打好每一仗的关键。
随便查一个https的域名比如baidu.com,出现NameError: global name ‘ConnectionError’ is not defined是怎么回事?
@ whale 推测是由于网速问题超时了,因为程序中设置了一个超时时间,这个是练习写的一个小程序,没做什么异常处理。小编也遇到过,再执行试试应该就可以了。我Windows用的是这个语句 python GetDomainsBySSL_161018.py baidu.com
不错不错,静静的做小板凳
网易的域名list直接告诉我就行了!
@ kindsjay 有时候对于网易的域名list 可能白帽子们比我们更清楚,尤其是长期潜水的白帽子些。欢迎大家闲暇时间来NSRC交漏洞 http://aq.163.com/module/hole/hole-submit.html
logout接口
猜二级域名 还好
猜三级域名才是难猜..mab.xxx.xxx.xxx.cn
mab25.xxx.xxx.xxx.cn
user.xxx.xxx.xxx.cn.
等等好多乱七八糟的…
一般点了大点网站的都有dns服务..
可以从这方面入手..能大到这程度的网站 还是少碰些…wooyun 到现在都彻底死了..还是有点忌讳吧..
大佬,有没有放到github的项目。
@ 周鸿尔 感谢建议!如果以后有什么拿得出手的程序分享,会考虑建个github的
@网易安全应急响应中心 真心水,怪不得被脱裤
@ 河蟹 您可能说出了很多人对网易安全的印象和心声。
其实是这样,至于这篇文章水不水,如果是根据难易程度来判断的话,我想说每篇文章都有它的读者群体。对于一篇逻辑清晰、排版整齐、理论+实践的梳理性文章,我们愿意分享出来,能让一部门人觉得读了有收获就够了。您也可以分享一些你认为高水平的文章出来,技术人交流切磋从来不靠吐槽和口水。
每当安全事件发生的时候,受伤害的是公司品牌、是产品业务团队,但最受伤害的是广大用户。作为公司的安全工程师,真是五味杂陈。
而真正的攻击者破坏者那些强盗骗了钱之后逍遥自在却永远不会被指责? 你觉得这样的逻辑靠谱吗。
而在如今的网络安全形势下,哪家公司敢保证自己的安全不会出问题,那请您查阅一下,Google、微软、苹果有没有发生过数据泄露事件,是不是一旦数据被窃取了就说明水。按照这个逻辑,是不是说只要有犯罪发生,就说明警察水。
但我们其实觉得,警察不水,Google、微软、苹果也不水。但我们NSRC工程师团队,我们很多时候自己都觉得自己水。我们不是什么大牛,好像也没有什么过人的攻防技术,我们很多也都是从计算机基础、程序设计、安全攻防技术一点点积累一点点成长,我们也没法保证不出安全问题,我们觉得互联网安全建设,知不易,行更难。但我们一直在积累,在努力。工作中,每一位白帽子都是我们的老师,我们只是想尽快修复每一个漏洞,产品安全内测时尽量多发现一个漏洞,希望我们制定的安全策略能落到实处,能发挥更大的价值。我们希望我们每天的努力,能让产品稳健一点点,能让用安心一点点,也尽力想让白帽子的福利多一点点。
那现在,我们也愿意总结一些东西分享出来,为安全圈贡献一点蓝色。我们很佩服大牛们,可是每一个真正练就一身武艺的人都是靠冬练三九夏练三伏这么过来的,他们靠着一种忘我的热情持续投入进去磨练,数年如一日,最终自己也不知道怎么就发现具备了无坚不摧的实力。 我们很羡慕,但我们告诉自己,面对那些大牛们的时候也不要气馁,要清楚,积累是一个过程,而不是结果。没什么可不服气的,回去继续修炼就好。
刚刚收到一个漏洞,标题是“今天看见网易SRC官方账号在Freebuf上打云笔记和SRC的广告,我就来提个云笔记的漏洞”。笑~真心希望白帽子多提漏洞多打脸,更希望有更多的安全专业同学、安全从业者、安全大牛能加入我们,带领我们走向胜利。
@ NSRC 建议第一次回复下表明态度就行了,以后可以笑笑就过去了,只要做事总会有喷子的。支持NSRC的态度
@ NSRC 赞一个,总结的挺好的
bing里用 “ip:xx.x.x.x”会弹出几个hash?什么情况呀
网易的安全团队不管是nsrc还是安全会议,都很少看到发声,有没有外界都不知道,今天终于看到了,给文章点个赞!
至少是一篇逻辑清晰、排版整齐、理论+实践的梳理性文章!
至少省去小白们去百度了!
除此之外,没啥深度··· ···
————————–
对了,这样的文章越来越多后,新手连百度Google都不会了!不管你们认不认可,想想是不是这么回事·
积累给自己,分享也给需要的··· ···
不错,挺详细的,条理清楚。
Kali下fierce -dns就可以了
新人觉得不错啊
收藏了