信息收集之子域名收集

上一次我们分享了主域名收集的思路和方法,但除了主域名外,子域名也是域名信息收集中的一个重要环节,在当今各种防护设备满天飞的情况下,想要拿下主域名越来越难,但我们可以使用迂回策略,从子域名下手,慢慢靠近主域名以达到shell的目的。

子域名收集可以帮助我们发现目标对外开放的更多的资产,如果能找到一些被遗忘或目标不关注的子域名,将其作为突破点,可能达到事半功倍的效果。

子域名收集的方式很多,但如何尽可能全的收集到所有的子域名却不是那么容易的事儿;本次将从手工和工具两种方式为大家进行讲解。

手工操作

证书透明度收集子域

介绍

要向用户提供加密流量,网站必须先向可信的证书授权中心 (CA) 申请证书。然后,当用户尝试访问相应网站时,此证书即会被提供给浏览器以验证该网站。近年来,由于 HTTPS 证书系统存在结构性缺陷,证书以及签发证书的 CA 很容易遭到入侵和操纵。Google 的证书透明度项目旨在通过提供一个用于监测和审核 HTTPS 证书的开放式框架,来保障证书签发流程安全无虞。

收集方法

可以通过以下链接进行在线查询:

输入域名,即可查询

image-20210826111214264

DNS域传送

介绍

DNS服务器分为主服务器,备份服务器,缓存服务器。

域传送是指备份服务器从主服务器上复制数据,然后更新自身的数据库,以达到数据同步的目的,这样是为了增加冗余,一旦主服务器出现问题可直接让备份服务器做好支撑工作。

域传送漏洞则是由于DNS配置不当,导致匿名用户可以获取某个域的所有记录,造成整个网络的拓扑结构泄露给潜在的攻击者,凭借这份网络蓝图,攻击者可以节省大量的扫描时间,同时提升了目标的准确度。

检测方法

nslookup

# 查询nameserver
nslookup -type=ns knownsec.com 119.29.29.29
# 指定nameserver,列举域名信息
nslookup
    server f1g1ns1.dnspod.net
    ls knownsec.com

image-20210826114157302

如果提示无法列出域,那就说明此域名不存在域传送漏洞。

dig

axfr 是q-type类型的一种,axfr类型是Authoritative Transfer的缩写,指请求传送某个区域的全部记录。

我们只要欺骗dns服务器发送一个axfr请求过去,如果该dns服务器上存在该漏洞,就会返回所有的解析记录值

# 找到NS服务器
dig knownsec.com ns

image-20210826113540595

# 发送axfr请求
dig axfr @f1g1ns2.dnspod.net knownsec.com

image-20210826113628748

nmap

nmap的脚本dns-zone-transfer可以帮我们探测是否存在域传送漏洞

nmap --script dns-zone-transfer --script-args dns-zone-transfer.domain=knownsec.com -p 53 -Pn f1g1ns1.dnspod.net

image-20210826114715954

DNS公开数据集

介绍

Rapid7的开源数据项目收集了多种全互联网范围内的扫描数据,任何人都可下载这些数据,而本次主题中主要涉及两个数据集,分别是FDNS和RDNS,可从中获取到大量的子域名信息。

收集方法

image-20210826150940616

搜索引擎

介绍

搜索引擎通过对互联网进行大量爬行后,往往收集了大量的子域名,只需要输入对应的语法,就可以从搜索引擎的数据库中查询到我们想要的内容。

收集方法

普通搜索引擎

此处以Google为例,使用减号来排除不想收集到的子域名

site:knownsec.com  -www

image-20210826152450184

空间搜索引擎

此处以zoomeye为例

https://www.zoomeye.org/searchResult?q=site%3A%20knownsec.com

site: knownsec.com

image-20210826164304785

信息泄露

网站爬虫

很多网站的页面中,会有跳转到其他系统的功能,如OA、邮箱系统等,其中可能就包含有其他子域名相关的信息,此外部署了内容安全策略(CSP)的网站在header头Content-Security-Policy中,也可能存在域名的信息。可使用burpsuite或者awvs类工具对站点进行爬取分析。

文件泄漏

很多网站有跨域策略文件crossdomain.xml、站点地图sitemap.xmlrobots.txt等,其中也可能存在子域名的信息。

GitHub

在GitHub中直接搜索域名关键词,除了可以发现敏感的泄漏信息外,也可以发现部分子域名信息。

image-20210826171706438

第三方在线平台

介绍

通过第三方在线平台提供的一些服务,可以快速发现部分子域名。

使用各种搜索引擎搜索关键词 “在线子域名查询” 即可快速寻找到一些直接可用的在线平台

image-20210825204142518

收集方法

image-20210826151954937

子域名枚举爆破

介绍

所谓子域名枚举爆破,就是通过不断的拼接字典中的子域名前缀去枚举域名的A记录,如knownsec.com拼接前缀test组合成test.knownsec.com,再对其进行验证,但是该方法一般需要解决泛解析问题。

收集方法

获取一些常见子域名前缀后,整理成字典,依次拼接主域名在浏览器进行访问验证即可,或通过nslookup进行验证即可。

image-20210826153428339

工具自动化

通过前面手工部分的讲解,可以看到大多收集步骤均为重复性的工作,那如果把所有的手工操作都自动化结合成一个工具,那么肯定能够达到事半功倍的效果。

OneForAll

https://github.com/shmilylty/OneForAll

解决大多传统子域名收集工具不够强大、不够友好、缺少维护和效率问题的痛点,是一款集百家之长,功能强大的全面快速子域收集终极神器。

image-20210826161814344

ksubdomain

https://github.com/knownsec/ksubdomain

ksubdomain是一款基于无状态子域名爆破工具,支持在Windows/Linux/Mac上使用,它会很快的进行DNS爆破,在Mac和Windows上理论最大发包速度在30w/s,linux上为160w/s的速度。

image-20210826162811689

Layer子域名挖掘机

https://github.com/euphrat1ca/LayerDomainFinder

Layer子域名挖掘机是一款子域名收集工具,拥有简洁的界面和简单的操作模式,支持服务接口查询和暴力枚举获取子域名信息,同时可以通过已获取的域名进行递归爆破。

image-20210826162225839

参考链接

Copyright © aaron 2023 all right reserved,powered by Gitbook该文章修订时间: 2023-06-12 21:42:06

results matching ""

    No results matching ""