一旦测试人员确定有在线且感兴趣的项目目标,下一步就是确定IP地址和到达目标的路由。DNS侦察是确定谁拥有特定的域名或一系列IP地址(这些信息可以通过whois获得,尽管随着《通用数据保护条例》(GDPR)从2018年5月起在整个欧洲执行,whois展示信息的揭露程度与公布方式已大幅改革)。DNS信息定义了分配给目标的实际域名和IP地址,以及渗透测试人员或攻击者到达最终目标之间的路由。
这种信息收集是半主动的,部分信息可以从免费公开来源获得(如dnsdumpster.com),而一些信息需要从第三方获得(如DNS注册商)。尽管注册商可能会从提交的请求数据里收集和攻击者有关的IP,但很少会提供给最终目标。可由目标直接监控的信息(如DNS服务器日志)很少被审查或保留。
因为所需的信息可以使用确定的系统和方法进行查询,其收集过程可以自动化。
注意,DNS信息可能包含过时或不正确的条目。为了减少误报,可以查询不同的源服务器和使用不同的工具来交叉验证结果。审查结果,并对任何可疑的发现进行手动验证。
GDPR生效之前,whois命令曾经是识别IP地址的首选方法。以前,whois命令用于查询存储互联网资源注册用户信息的数据库,如域名或IP地址。根据被查询的数据库,对whois请求的响应将提供姓名、实际地址、电话号码和电子邮件地址(有利于社会工程攻击),以及IP地址和DNS服务器名称。在2018年5月25日之后,不再提供注册人的详细信息;然而,攻击者可以了解whois的响应来自哪个服务器,并检索它的域名数据库,包括可用性、所有权、创建、到期细节和名称服务器。图3.6显示了对facebook.com这个域名运行whois命令的结果。
图3.6 facebook.com域名的whois详情,包括名称服务器详情