OSINT:发现子域名 | 网络罪恶与安全
介绍
我们许多从事安全咨询、漏洞赏金或网络情报工作的人,经常会遇到需要查找子域名的情况。这种需求可能来自双方 - 评估客户网络存在的顾问,或是验证自身数字足迹的公司。十多年来,这种情况屡见不鲜:人们往往不了解自己仍在运行的旧资产,这些资产可能被利用来损害品牌形象或实际网络,甚至被用作代理或跳板来访问本应受到良好保护的数据。
传统方法
到目前为止,搜索子域名最常见的方法是使用Google搜索语法:site:example.com。为了深入挖掘,可以使用结果中所有可见的子域名进行迭代,例如site:example.com -www或site:example.com -www -test。这将排除example.com、www.example.com和test.example.com等。
后来我发现了一些工具,如[Pentest Tool Subdomain]、[DNS Dumster]、[Cloudpiercer]、[Netcraft]等。但这些工具要么价格昂贵,要么效果不佳。
FindSubDomains工具
在与SPYSE团队(CertDB项目背后的杰出团队)交流时,我了解到他们的新项目[FindSubDomains],这是一个用于查找给定域名的子域名的免费优秀工具/项目。
该工具不仅列出子域名,还提供大量情报信息,如:
- IP地址
- DNS记录
- 国家
- 子网
- AS区块
- 组织名称等
这些参数中的任何一个都可用于过滤子域名列表或进行搜索 - 这真是太棒了!
工具对比测试
为了测试,我们以apple.com域名为例,尝试使用不同的工具/媒介查找子域名。
传统Google搜索: 经过4-5次搜索/迭代后,这个过程变得繁琐。当你尝试自动化时,Google会弹出验证码挑战。总的来说,搜索少数目标域名是值得的,但查询通配符子域名则毫无价值。不推荐用于此类任务!
Pentest-tools工具: 首先,这不是免费服务,需要购买积分。我执行了一次免费搜索,结果并不令人信服 - 只找到了87个apple.com的子域名,详细信息包括子域名和相应的IP地址。
Netcraft和DNSDumster的结果同样令人失望 - 前者找到了180条记录,但无法下载或过滤;后者限制在150个结果,且UI/UX很差。总之,没有一个工具能提供直接且智能的子域名列表。
FindSubDomains的优势
同样的apple.com子域名搜索通过[FindSubDomains]执行,得到了1900多个结果。这非常了不起!
所有1900多个结果都可以免费使用,没有弹出广告、积分或限制等。不仅可以在UI上列出这些结果,还可以将其下载为TXT文件。此外,还可以查看每个子域名的IP地址、地理区域、IP段和相应的AS区块详细信息。这真是令人瞩目的开源情报,无需脚本或无限迭代即可在瞬间获得!
搜索和过滤功能
除了搜索功能,他们的过滤器也非常出色,可以在域名、子域名或其相应字段上搜索特定信息。他们还有一些预过滤的结果或琐事点:
- 前100个网站及其子域名
- 子域名数量最多的网站
- 子域名数量最多的国家
- 子域名最常见的名称(我的最爱)
最后一个在调查客户网络或用其数字足迹震惊客户时非常方便。
仪表板和自定义任务
登录后(注册很容易),会看到一个显示总任务、进行中任务和剩余任务的仪表板。我可以使用域名或关键词开始新任务。如果我不知道完整的域名,关键词搜索非常有用。此任务执行功能可以补充主页面或现有数据库中未找到的任何内容(相信我,这个数据库非常庞大)。
对于每个任务,它最多可以列出50,000个子域名,耗时约6分钟(可以设置警报,平台会在任务完成时通过电子邮件通知您)。
技术原理
执行查找子域名的任务使用了各种技术:
- 通过网站爬虫和分析其页面以及资源文件来定义许多子域名
- 对一些域名的AXFR(DNS区域传输)请求通常会揭示大量有价值的信息
- 历史数据的搜索和分析通常与搜索词匹配
虽然这个工具令人印象深刻,但我希望它能通过API执行任务,并通过命令行/终端以某种可编程方式实现自动化。
使用场景
以下是我可以使用此工具的一些场景:
- 在渗透测试侦察阶段,收集目标网络的信息
- 作为收集公司及其相应域名的网络情报的支持工具
- 评估公司的网络和数字足迹
- 跟踪面向外部的子域名 - UAT、SIT、STAGING等
总结
这是继[CertDB]之后又一个令人惊叹的工具,展示了SPYSE团队的潜力。[FindSubDomains]使我的搜索变得更加轻松高效。我强烈建议读者使用此工具来查找子域名。
封面图片:由[Himesh Kumar Behera]拍摄