子域名发现工具
利用公共资源
- 搜索引擎(Google,Bing,Yahoo,Baidu等等)
- https://virustotal.com/ - 在 Search 里输入 “domain:target.com”,然后 virustotal 会提供一份子域名列表,和其他一些辅助信息以帮助你观察子域名。
- https://dnsdumpster.com - 名字说明了一切!你只需要输入目标域名,然后点击搜索按钮,完事。
- https://crt.sh/?q=%25target.com - 有些时候 SSL 中会包含很多有用的信息,使用这个网站搜索 "%target.com" 即可得到你所需要的子域名信息。
- https://censys.io - 不是非常好,但有时也会提供一些有用的信息。
- http://searchdns.netcraft.com/ - 另一种选择。
- https://www.shodan.io - 无需多言,不仅可以看到子域名信息,还会显示对应的服务器版本及其他更多数据。
- 谷歌透明度报告 - 也是利用 SSL 证书发现子域名
利用工具爆破
国外的:
- Subbrute - 快速枚举 DNS 记录和子域名。
- dnscan - 使用 Python 写的基于字典查询 DNS 的子域名扫描器。
- Nmap - 不仅仅只是端口扫描,可以使用脚本枚举子域名。使用
--script dns-brute
脚本。 - Recon-Ng - Recon-Ng 框架是一个 Web 信息收集工具,其包含暴力枚举子域名的模块。
- DNSRecon - 一个强大的 DNS 枚举脚本。
- Fierce - 一个半轻量级的枚举子域名扫描器。
- Gobuster - Go 语言编写的枚举目录和文件的工具,最新版支持 DNS 查询。
- DNSenum - 提供多线程和递归枚举子域名。
- AltDNS - 提供基于对已发现子域名进行置换的暴力枚举方式。
国人的:
- wydomain2 - 猪猪侠的作品,好用不解释。
- 从alexa、chaxunla、ilinks、google、sitedossier、netcraft、threatcrowd、threatminer爬取结果,再与openssl证书+字典穷举结果合并,生成最终的子域名集合。
- subDomainsBrute - 曾经乌云核心白帽李劼杰的作品
- Layer 子域名挖掘机 - 法师的作品,因为是用.NET写的,所以基本只能在Win下使用,也是相当好用的。
原理
子域名发现的原理无非就是以下几种:
- 利用现有搜索引擎:
- 网页搜索引擎(如:谷歌等)
- 空间搜索引擎(如:Shodan等)
- SSL证书(如:crt.sh等),这个主要针对大站
- 进行爆破,而爆破又分为两种:
- 直接访问子域名
- 利用 DNS 请求
- 其他泄露信息:
- 如 crossdomain.xml 文件等
- 爬虫递归爬取等
- DNS域传送漏洞等
最后补一句,子域名发现很多的时候还是靠字典,如果你没有很好的子域名字典,我这里在放一个国外组织统计的最受欢迎子域名列表:bitquark-subdomains-popular
DeeLMind'Blog| 再坚持10十年就不信还不成大神!!!懂进攻-知防守--先正向-后逆向