0x00 前言
子域名挖掘,是信息收集中的一部分,在SRC的漏洞挖掘中非常重要。所以,今天总结一些子域名挖掘的思路和工具。
0x01 被动挖掘
通过搜索引擎,常见的搜索引擎有百度、谷歌、bing、搜狗、360搜索等。
搜索语法:
site: xxxx.com
0x02 通过证书透明度
2.1 什么是证书透明度?
证书透明度(英语:Certificate Transparency,简称CT)也称证书透明、证书透明化,它是一个实验性的IETF开源标准[1]和开源框架,目的是监测和审计数字证书。通过证书日志、监控和审计系统,证书透明度使网站用户和域名持有者可以识别不当或恶意签发的证书,以及识别数字证书认证机构(CA)的作为。
2.2 在线网址
https://crt.sh/
http://censys.io/
2.3 使用案例
0x03 子域名挖掘工具
3.1 subDomainsBrute
本工具用于渗透测试目标域名收集。高并发DNS暴力枚举,发现其他工具无法探测到的域名, 如Google,aizhan,fofa。
3.1.1 安装
1 2 3
| git clone https://github.com/lijiejie/subDomainsBrute.git cd subDomainsBrute pip install dnspython gevent
|
3.1.2 使用教程
语法:
subDomainsBrute.py [options] target.com
参数:
1 2 3 4 5 6 7 8
| --version #显示版本号 --help #查看帮助信息 -f #加载本地的子域名字典,默认使用的是subnames.txt字典 --full #完全扫描subnames_full.txt -i #忽略指向私有ip的域 -t #扫描线程,默认是200 -p #扫描进程,默认是6 -o #输出结果,默认是target.txt
|
3.3.3 案例演示
3.2 Gobuster
Gobuster是用于暴力破解的工具:
- 网站中的URI(目录和文件)。
- DNS子域(具有通配符支持)。
- 目标Web服务器上的虚拟主机名。
3.2.1 安装
先安装go环境
1 2 3 4 5 6 7 8 9 10 11 12 13
| wget -c https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz
tar -C /usr/local/ -zxvf go1.8.3.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> /etc/profile
source /etc/profile
go --version
|
直接下载编译好的二进制文件
1 2 3 4 5 6 7
| wget https://github.com/OJ/gobuster/releases
7z x gobuster-linux-amd64.7z
cd gobuster-linux-amd64
chmod +x gobuster
|
cd gobuster
查看帮助
查看相对命令下的子命令
3.2.2 使用教程
gobuster -m dns -w subdomains.txt -u baidu.com -i
命令参数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| -fw-暴力与通配符域处理的结果。 -m <mode>-对使用哪个模式,dir或dns(默认:dir) -q-标题下划线/禁用输出。 -t <threads>-运行的线程数(默认:10)。 -u <url/domain>-完整的URL名称(包括方案)或基本域名。 -v显示详细输出(-)的所有结果。 -w <wordlist>-字典的路径使用暴力破解。 ========================================================== 命令行选项dns模式 -cn-CNAME记录显示(不可以使用“-i”选项)。 -i-显示所有IP地址的结果。 ============================================================= 命令行选项dir模式 -a <user agent string>-指定要发送的用户代理字符串的请求标头中。 -c <http cookies>-定义任何cookies,您可能需要模拟(AUTH)。 -e-使扩展模式指定完整的URL。 -f-附加的目录/暴力。 -k-跳过验证的SSL证书。 -l-表示所述长度的响应。 -n-“无状态”模式,禁用的输出结果的状态代码。 -o <file>-指定一个文件名,并将输出写到。 -p <proxy url>-指定要使用的代理方案对于所有请求URL匹配(多方案)。 -r-遵循重定向”。 -s <status codes>-逗号分隔的列表的状态代码被认为是“阳性”(默认:200,204,301,302,307)。 -x <extensions>-扩展的列表来检查,如果有的话)。 -P <password>-HTTP基本身份验证(仅限授权密码,如果丢失的提示)。 -U <username>-授权(HTTP基本认证的用户名)。
|
3.2.3 案例演示
爆破百度的子域名
3.3 子域名挖掘机
3.3.1 安装
https://download.csdn.net/download/milkway2013/12100105
下载后直接打开即可。
3.3.2 使用教程
输入一级域名以后,点击启动就可以了,