子域名扫描工具与使用指南
一、子域名扫描工具
子域名扫描工具是指用于对目标网站进行子域名枚举和探测的软件。常见的子域名扫描工具有三大类,包括:
1. 基于字典的扫描工具
这类工具是通过事先准备好的字典文件进行扫描,最基础的实现方式就是通过暴力破解的方法进行穷举,依次尝试可能的子域名组合。常见的字典文件有 FuzzDB、Seclists 等。
# 使用 FuzzDB 中的 quickhits-backup-domains.txt 进行子域名扫描
wfuzz -w quickhits-backup-domains.txt -H "Host: FUZZ.example.com" http://example.com
2. 基于搜索引擎的扫描工具
这类工具是利用搜索引擎的功能,对目标网站进行搜索,获取相关的子域名信息。常见的搜索引擎有 Google、Bing、Yahoo 等。
# 使用 Google 搜索引擎进行子域名扫描
python3 subdomain.py -d example.com --scraping
3. 基于区块链技术的扫描工具
这类工具是基于区块链技术构建的分布式子域名扫描网络,依靠共识机制来保证数据的可信性和安全性。
# 使用 ESD 进行区块链域名解析
esd -d example.com -r
二、子域名扫描器有哪些
子域名扫描器是指用于对目标网站进行全面、系统的子域名探测和枚举的工具,其不仅可以使用单一的字典,还可以采用多种方式,包括搜索引擎搜索、查询 DNS 记录、爬取社交媒体等。常见的子域名扫描器有以下几个:
1. Sublist3r
Sublist3r 是一款使用 Python 编写的子域名枚举工具,可以从多个搜索引擎和网站获取子域名信息。
# 使用 Sublist3r 进行子域名扫描
python sublist3r.py -d example.com
2. Amass
Amass 是一款开源的子域名枚举工具,支持多种扫描方式,包括字典搜索、搜索引擎搜索、网络空间枚举等。
# 使用 Amass 进行子域名扫描
amass enum -d example.com
3. Subfinder
Subfinder 是一款基于 Go 语言开发的快速子域名枚举工具,支持多种引擎和平台,可以快速生成远程主机的子域名列表。
# 使用 Subfinder 进行子域名扫描
subfinder -d example.com
三、子域名扫描 esd
ESD 是一种基于区块链技术构建的去中心化 DNS 解析系统,具有高效、安全、去中心化等优点。在子域名扫描中,ESD 可以通过查询节点来获取目标网站的信息,实现快速可信的子域名枚举。
# 使用 ESD 进行区块链域名解析
esd -d example.com -r
四、子域名扫描常见扫描端口
在进行子域名扫描时,常见的扫描端口包括以下几个:
1. 端口 80
端口 80 是 HTTP 协议的默认端口,当浏览器访问一个网站时,会自动连接到该网站的 80 端口。
2. 端口 443
端口 443 是 HTTPS 协议的默认端口,用于安全传输 HTTP 协议信息。
3. 端口 22
端口 22 是 SSH 协议的默认端口,主要用于远程登录和管理操作系统。
4. 端口 21
端口 21 是 FTP 协议的默认端口,主要用于文件传输。
5. 端口 53
端口 53 是 DNS 协议的默认端口,用于解析域名到 IP 地址。
五、子域名在线扫描
除了本地扫描工具之外,还有一些在线的子域名扫描平台,可以在线快速地进行子域名枚举和扫描。常见的在线子域名扫描平台有以下几个:
1. HackerTarget
HackerTarget 是一款基于互联网上的公共数据源的在线子域名扫描平台,可以快速获取目标网站的子域名信息。
2. Censys
Censys 是一款基于互联网上的公共数据源的在线子域名扫描平台,可以快速获取目标网站的子域名、端口和 SSL 证书等信息。
3. VirusTotal
VirusTotal 是一款在线的恶意软件扫描平台,除了对文件进行扫描之外,还可以用于子域名的扫描和探测。
六、子域名 IP 查询
在进行子域名扫描之后,我们可以使用 IP 查询工具来查询子域名对应的 IP 地址。常见的子域名 IP 查询工具有以下几个:
1. ping 命令
ping 命令是一种基于 ICMP 协议的网络诊断工具,可以用于查询域名对应的 IP 地址。
# 使用 ping 命令查询域名对应的 IP 地址
ping example.com
2. nslookup 命令
nslookup 命令是一种基于 DNS 协议的网络诊断工具,可以用于查询域名对应的 IP 地址和 DNS 记录。
# 使用 nslookup 命令查询域名对应的 IP 地址
nslookup example.com
3. whois 命令
whois 命令是一种查询域名注册信息的工具,可以用于查询所有权和联系人信息等。
# 使用 whois 命令查询域名的注册信息
whois example.com
七、子域名二级域名查询
在进行子域名扫描和枚举后,我们还可以使用二级域名查询工具来对子域名进行分类和整理。常见的二级域名查询工具有以下几个:
1. Sublist3r
Sublist3r 在进行子域名扫描时,可以自动进行二级域名查询和分类,方便后续的使用。
# 使用 Sublist3r 查询目标网站的二级域名
python sublist3r.py -d example.com --recursive
2. Amass
Amass 在进行子域名扫描时,也可以自动进行二级域名查询和分类,支持多种查询方式。
# 使用 Amass 查询目标网站的二级域名
amass enum -d example.com -brute -w Sublist3r Lists
3. SecurityTrails
SecurityTrails 是一款在线的域名信息查询平台,可以快速获取目标网站的子域名和二级域名信息。
# 使用 SecurityTrails 查询目标网站的二级域名
https://securitytrails.com/domain/example.com/dns
八、扫描子域名的工具选取
针对不同的情况和需求,我们可以选用不同的子域名扫描工具来进行枚举和探测。例如,在进行快速的子域名探测时,可以采用基于搜索引擎的扫描工具,例如 Subfinder;在进行精细的子域名枚举和分类时,可以选择基于字典的扫描工具,例如 Sublist3r。