最新域名和子域名信息收集技术
本文部分节选于《web安全攻防渗透测试实战指南(第二版)》
域名信息收集
1.WHOIS查询
WHOIS是一个标准的互联网协议,可用于收集网络注册信息、注册域名﹑IP地址等信息。简单来说,WHOIS就是一个用于查询域名是否已被注册及注册域名详细信息的数据库(如域名所有人、域名注册商)。
在WHOIS查询中,得到注册人的姓名和邮箱信息通常对测试中小网站非常有用。我们可以通过搜索引擎和社交网络挖掘出域名所有人的很多信息,对中小网站而言,域名所有人往往就是管理员。
以腾讯云的域名信息(WHOIS)查询网站为例,输入“ms08067.com”后,返回结果如图1-1所示。
图1-1
可以看到,通过腾讯云的域名信息(WHOIS)查询网站查询出了“ms08067.com”的部分注册信息,包括域名所有人的姓名和邮箱、域名注册商及注册时间等。
使用全球WHOIS查询网站查询“ms08067.com”,返回结果如图1-2所示。
使用全球WHOIS查询网站查询出的WHOIS信息明显比腾讯云的域名信息(WHOIS)查询网站显示的信息更全面,不仅列出了“ms08067.com”的注册信息,如域名ID、域名状态及网页主机IP地址等,还列出了注册局WHOIS主机的域名。
通过不同的WHOIS查询网站查询域名注册信息,可以得到更全面的WHOIS信息。
图1-2
常用的WHOIS信息在线查询网站如下:
爱站工具网
站长之家
VirusTotal
微步在线
爱站网
全球WHOIS查询
ViewDNS
2.SEO综合查询
SEO(Search Engine Optimization,搜索引擎优化),是指利用搜索引擎的规则提高网站在有关搜索引擎内的自然排名。目的是让其在行业内占据领先地位,获得品牌收益,将自己公司的排名前移,很大程度上是网站经营者的一种商业行为。通过SEO综合查询可以查到该网站在各大搜索引擎的信息,包括网站权重、预估流量、收录、反链及关键词排名等信息,十分有用。
使用站长工具网站对“ms08067.com”进行SEO综合查询的结果如图1-3所示。
图1-3
通过以上查询,可以看到“ms08067.com”的SEO排名信息、在各搜索引擎中的权重信息、域名注册人邮箱等。可以将此类信息与收集到的其他信息进行对比,从而更好地完善收集到的域名注册信息。
常用的SEO综合查询网站如下:
站长工具
SEO查
3.域名信息反查
域名信息反查本可以被归类到WHOIS查询中,为什么这里要单独列出呢?是因为在收集目标主站域名信息时,通常会发现主站可以收集到的信息十分有限,这时就需要扩大信息收集的范围,即通过WHOIS查询获得注册当前域名的联系人及邮箱信息,再通过联系人和邮箱反查,查询当前联系人或邮箱下注册过的其他域名信息。往往可以通过这种“曲线方式”得到意想不到的结果,搜集到的Web服务内容很可能和目标域名下的Web服务注册在同一台服务器上,也可称为同服站点。
国内的域名信息反查在线网站很多,这里以站长工具查询站长之家官网“chinaz.com”为例,如图1-4所示。
图1-4
可以利用域名、邮箱、联系电话等进行域名信息反查,获得更多有价值的信息。这里我们选择通过联系电话反查域名注册信息,如图1-5所示,查询当前联系电话下的所有注册域名信息。
图1-5
可以看到,利用当前联系电话反查出来的域名有很多,通过对这些域名再进行一次WHOIS查询,可以获得更多信息。
常用的域名信息反查网站如下:
站长之家
微步在线
4.cn
西部数码
ViewDNS
子域名信息收集
子域名是指顶级域名下的域名。如果目标网络规模比较大,那么直接从主域入手显然是很不明智的,可以先渗透目标的某个子域,再迂回渗透目标主域,是个比较好的选择。常用的方法有以下几种。
1.工具自动收集
目前已有几款十分高效的子域名自动收集工具,如子域名收集工具OneForAll,具有强大的子域名收集能力,还兼具子域爆破、子域验证等多种功能,图1-11所示为使用OneForAll对“ms08067.com”进行检测。
图1-11
使用参数可以更好地辅助我们进行子域名爆破,其中参数“--target”指目标主域,参数“--fmt”指子域名结果导出格式,导出.csv的文件格式便于我们使用Excel进行查看。更多参数使用方法,可以参考帮助文档。子域名导出结果如图1-12所示。
图1-12
可以看到,导出结果包含了很多项目,不仅有子域名,还有IP地址、Banner信息、端口信息等,十分全面。
常用子域名自动收集工具如下。
OneForAll
Fofa_view
Sublist3r
DNSMaper
subDomainsBrute
Maltego CE
2.网站配置文件
某些域名下可能存在存储与其相关子域名信息的文件。搜索此类域名一般需要查看跨域策略文件crossdomain.xml或者网站信息文件sitemap,通常只需将其拼接到需要查询的域名后进行访问。如果路径存在,则显示相应的域名资产。
图1-13所示为某网站拼接crossdomain.xml文件访问得到的子域名资产信息。
图1-13
并不是所有的网站都会存在crossdomain和sitemap这两类文件,有的网站管理者会隐藏敏感文件或者干脆不用这两类文件进行跨域访问策略导向和网站信息导向,因此读者可以将这种方法作为一种辅助手段,或许会带来意想不到的结果。
3.搜索引擎枚搜集
利用搜索引擎语法搜索子域名或含有主域名关键字的资产信息,例如使用Bing搜索“ms08067.com”旗下的子域名及其资产,就可以使用“site:ms08067.com”语法,如图1-14所示。
图1-14
图1-14所示为包含“ms08067.com”的子域名网站及其主域名资产信息,此类语法可以辅助我们找到众多子域名。也可以通过不同的搜索引擎,如Bing、Edge等,或者使用网络空间资产搜索引擎FOFA、Shodan等获取较全面的子域名信息。
4.DNS应用服务反查子域名
很多第三方DNS查询服务或工具汇聚了大量DNS数据集,可通过它们检索某个给定域名的子域名。只需在其搜索栏中输入域名,就可检索到相关的子域名信息,如图1-15所示,使用DNSdumpster在线网站查询DNS Host解析记录可以得到子域名。
图1-15
可以看到,查询的Host解析记录中有很多子域名的解析记录,可以利用这些记录进一步反查DNS,看是否可以得到更全面的子域名。当然,除了利用上述在线网站查询,还可以利用本地的DNS命令行工具进行查询,具体的使用方法可参考帮助文档。
常用的DNS服务反查在线工具如下。
DNSdumpster
Ip138
ViewDNS
常用的本地DNS服务反查命令行工具如下。
Dig
Nslookup
5.证书透明度公开日志搜集
证书透明度(Certificate Transparency,CT)是证书授权机构(CA)的一个项目,证书授权机构会将每个SSL/TLS证书发布到公共日志中。一个SSL/TLS证书通常包含域名、子域名和邮件地址,这些也经常成为攻击者非常想获得的有用信息。查找某个域名所属证书的最简单的方法就是使用搜索引擎搜索一些公开的CT日志。
如图1-16所示,使用“crt.sh”进行子域名搜集。
图1-16
搜集出来的结果有crt的ID值、过去使用记录的时间,以及子域名信息等。
常用的搜集CT公开日志的在线工具如下。
crt.sh
Censys
扫描客服微信 获取更多课件+学习资料