渗透测试之子域名收集
利用谷歌语法搜索
在线爆破子域名
基于乌云漏洞知识库查找已知子域名
通过FOFA、钟馗之眼引擎搜索
基于SSL证书查询子域
证书透明度(CertificateTransparency)是证书授权机构的一个项目,证书授权机构会将每个SSL/TLS证书发布到公共日志中
一个SSL/TLS证书通常包含域名、子域名和邮件地址。查找某个域名所属证书的最简单的方法就是使用搜索引擎搜索一些公开的CT日志
查询DNS服务器,查询该域下的解析记录。
dns的工作原理,就是它以前有给这个ip做过域名解析,现在我们通过他的输入目标域名,来获取历史的解析记录
他会帮我们将这个域名所对应的ip(还解析过其他的域名对应这个ip)下的所有其他域名解析出来
获取这个ip的(旁站,可能包含目标的子域名),如果找到的是cdn的ip,凉了,换个方式
子域名扫描脚本-Sublist3r
Sublist3r安装使用:
Sublist3r安装:
git clone https://github.com/aboul3la/Sublist3r #安装命令
sudo pip3 install -r requirements.txt #进入Sublist3r加载模块
Sublist3r使用:
枚举子域名:
python sublist3r.py -d 目标域名 #枚举目标子域。-d:指定目标域名
扫描开放指定端口的子域名:
python sublist3r.py -d 目标域名 -p 80,443 #枚举子域并且显示开放80和443端口的子域
将结果保存到文件:
Python shublist3r.py -d 目标域名 -o 1.txt #枚举目标子域并保存
子域名收集-Fierce工具
Fierce下载地址
借鉴大佬文章-Fierce
Fierce简介:
Fierce是一款IP、域名互查的DNS工具
Fierce功能:
可进行域传送漏洞检测、字典爆破子域名、反查IP段、反查指定域名上下一段IP、还可以尝试与目标建立HTTP连接以确认该子域名是否存在
命令参数:
optiop:为可选参数
# 使用命令: fierce [-dns example.com] [OPTIONS]
# option选项中:如果使用了该参数命令。[] 内的数据为可选数据、<> 内为必选数据
Options:
-connect [header.txt] #对非RFC1918地址进行HTTP连接(耗时长、流量大),默认返回服务器的响应头部。可通过文件指定HTTP请求头的Host信息,如:fierce -dns example.com -connect headers.txt
-delay <number> #指定两次查询之间的时间间隔
-dns <domain> #指定查询的域名
-dnsfile <dnsfile.txt> #用文件指定反向查询的DNS服务器列表
-dnsserver <dnsserver> #指定用来初始化SOA查询的DNS服务器。(仅用于出初始化,后续查询将使用目标的DNS服务器)
-file <domain.txt> #将结果输出至文件
-fulloutput #与-connect结合,输出服务器返回的所有信息
-help #打印帮助信息
-nopattern #不适用搜索模式查找主机。(此参数暂时没有用明白)
-range <1.1.1.1/24> #对内部IP范围做IP反查(此参数尚未用明白)。必须与dnsserver参数配合,指定内部DNS服务器,如: fierce -range 111.222.333.0-255 -dnsserver ns1.example.com
-search <Search list> #指定其他的域,在其他的域内进行查找(此参数没有用明白),如: fierce -dns examplecompany.com -search corpcompany,blahcompany
-tcptimeout <number> #指定查询的超时时间
-threads [number] #指定扫描的线程数,默认单线程
-traverse [number] #指定扫描的上下IP范围,默认扫描上下5各个。
-version #打印fierce版本
-wide #扫描入口IP地址的C段。产生大流量、会收集到更多信息.
-wordlist <sub.txt> #使用指定的字典进行子域名爆破
常用命令:
firece -dns 目标 # -dns:基于DNS指定域名扫描
firece -dns 目标 -dnsserver 114.114.114.114 # -dnsserver:指定DNS服务器扫描
fierce -range 192.168.1.0-255 -dnsserver 114.114.114.114 # -rang:可指定IP段扫描