1\SSL/TLS 证书
当 CA(证书颁发机构)为域创建 SSL/TLS(安全套接字层/传输层安全)证书时,CA 会参与所谓的“证书透明度 (CT) 日志”。这些是为域名创建的每个 SSL/TLS 证书的可公开访问的日志。证书透明度日志的目的是阻止恶意和意外制作的证书被使用。我们可以利用此服务来发现属于某个域的子域, https://crt.sh 和 https://ui.ctsearch.entrust.com/ui/ctsearchui等网站 提供可搜索的证书数据库,显示当前的证书和历史结果
2\搜索引擎
搜索引擎包含数万亿个指向超过十亿个网站的链接,这可以成为查找新子域的极好资源。 在 Google 等网站上使用高级搜索方法(例如 site:filter)可以缩小搜索结果范围。例如,“-site:www.domain.com site:*.domain.com”将仅包含指向域名domain.com的结果,但排除任何指向www.domain.com的链接;因此,它只向我们显示属于domain.com 的子域名。
转到Google并使用搜索词-site:www.tryhackme.com site:*.tryhackme.com,这应该会显示 tryhackme.com 的子域;
3\暴力 DNS(域名系统)
枚举是从预定义的常用子域列表中尝试数十、数百、数千甚至数百万个不同的可能子域的方法。由于此方法需要许多请求,因此我们使用工具将其自动化,以使过程更快。在本例中,我们使用名为 dnsrecon 的工具来执行此操作:
dnsrecon -t brt -d acmeitsupport.thm
4\使用 Sublist3r 实现自动化
为了加快 OSINT 子域发现的过程,我们可以借助 Sublist3r等工具自动化上述方法,单击“查看站点”按钮打开静态站点并运行 sublist3r 模拟来发现新的子域:
./sublist3r.py -d acmeitsupport.thm
5\使用ffuf来爆破子域名
user@machine$ ffuf -w /usr/share/wordlists/SecLists/Discovery/DNS/namelist.txt -H "Host: FUZZ.acmeitsupport.thm" -u http://10.10.170.168
上面的命令使用-w开关来指定我们要使用的单词列表。-H开关添加/编辑标头(在本例中为主机标头),我们在子域通常所在的空间中有FUZZ关键字,这就是我们将尝试单词列表中的所有选项的地方。
因为上面的命令总是会产生有效的结果,所以我们需要过滤输出。我们可以通过使用-fs开关的页面大小结果来做到这一点。编辑以下命令,将 {size} 替换为之前结果中出现次数最多的大小值,并在 AttackBox 上尝试。
噗噗
user@machine$ ffuf -w /usr/share/wordlists/SecLists/Discovery/DNS/namelist.txt -H "Host: FUZZ.acmeitsupport.thm" -u http://10.10.170.168 -fs {size}
除了-fs开关之外,此命令的语法与第一个命令类似,该开关告诉 ffuf 忽略指定大小的任何结果

上图先输入了第一条命令,会有很多报错,因此需要进行筛选,找到size出现最多的,如本例子为2395,那么在第二条命令用 2395 替换掉 {size}
fierce:扫子域名 kali自带

wydomain:国内搜集子域名比较全

在线子域名查询:

http://tool.chinaz.com/subdomain/
https://phpinfo.me/old/domain/
