从收集方法来看各类子域名收集工具 – 作者:webvul

字数500以内,建议阅读时间5分钟。
子域名信息收集作为渗透前期的主要工作,收集信息的完整、详细,对于后续的渗透提供的帮助就不多赘述了,网上各种子域名收集的姿势、工具、在线平台也非常多,为了方便了解子域名信息收集的方法都有哪些,不同工具都支持哪些方式,横向来选出最适合自己的工具。目前还没有一个工具能完全覆盖到全部的收集方法,在实际渗透过程中组合方式来进行使用吧。
另外开源工具提供的字典数量有限,需要自己去收集和补充后,效果更佳。
水平有限,没法收集全部的工具、方法,如有遗漏或不准确的地方,请多执教,欢迎补充。
一、常用子域名收集的方法
编号 常用收集方法 原理 具体实现方法
001-1 利用证书透明度收集 要向用户提供加密流量,网站必须先向可信的证书授权中心 (CA) 申请证书。然后,当用户尝试访问相应网站时,此证书即会被提供给浏览器以验证该网站 https://crt.sh
001-2 https://developers.facebook.com/tools/ct
001-3 https://www.entrust.com/ct-search
001-4 https://sslmate.com/certspotter/api
001-5 https://api.certspotter.com/v1/issuances
001-6 https://spyse.com/search/certificate
001-7 https://censys.io/certificates
001-8 https://google.com/transparencyreport/https/ct
001-9 https://scans.io/study/sonar.ssl
002-1 域传送漏洞收集 域传送操作是指备用服务器向主服务器查询来刷新自己的Zone数据库,保证数据一致性 dig @ns2.xx.comxxx.comaxfr

002-2 nmap –script dns-zone-transfer –script-args dns-zone-transfer.domain=xx.com-p 53 -Pn dns30.hichina.com
003-1 站点配置文件 信息泄露问题主要就是某域名下的一些文件会存储与其相关的一些域名,如子域名 crossdomain.xml
003-2 robots.txt
003-3 sitemap.xml
003-4 sitemap.txt
003-5 sitemap.html
003-6 sitemapindex.xml
004-1 内容安全策略CSP 内容安全策略(CSP,Content Security Policy)是一种声明的安全机制,可以让网站运营者能够控制遵循CSP的用户代理(通常是浏览器)的行为。通过控制要启用哪些功能,以及从哪里下载内容,可以减少网站的攻击面。CSP的主要目的是防御跨站点脚本(cross-ste scripting,XSS)攻击。例如,CSP可以完全禁止内联的JavaScript,并且控制外部代码从哪里加载。它也可以禁止动态代码执行

其中*-src可能会存在域名信息

HTTP Header的Content-Security-Policty属性中 -src中是否存在域名信息
005-1 DNS查询 通过枚举常见的SRV记录并做查询来收集子域srv,以及通过查询域名的DNS记录中的MX,NS,SOA,TXT记录来收集子域 nmap –script dns-srv-enum.nse –script-args “dns-srv-enum.domain=’xx.com‘”
005-2 >set type=mx\ns\soa\txt
>xx.com
006-1 利用DNS公开数据集 利用互联网公开的DNS服务器的请求记录进行收集 https://site.ip138.com/{domain}/domain.htm
006-2 https://hackertarget.com/find-dns-host-records
006-3 https://findsubdomains.com
006-4 http://www.sitedossier.com
006-5 https://dnsdumpster.com
006-6 https://searchdns.netcraft.com
006-7 https://alexa.chinaz.com
006-8 https://www.robtex.com/dns-lookup
006-9 https://ipv4info.com
006-10 https://dnsdb.io/zh-cn/search?q={domain}
006-11 https://dns.bufferover.run/dns?q={domain}
006-12 https://riddler.io/search?q=pid:{domain}
006-13 http://rapiddns.io/subdomain/{self.domain}
006-14 https://api.securitytrails.com/v1/domain/
006-15 http://www.sitedossier.com/parentdomain/
006-16 https://api.spyse.com/v2/data/domain/subdomain
006-17 https://api.sublist3r.com/search.php?domain={domain}
006-18 https://api.binaryedge.io/v2/query/domains/subdomain/
006-19 https://ce.baidu.com/index/getRelatedSites
006-20 https://apidata.chinaz.com/CallAPI/Alexa
006-21 https://www.circl.lu/pdns/query/
006-22 https://api.cloudflare.com/client/v4/
006-23 https://searchdns.netcraft.com/?restriction=site+contains
006-24 http://api.passivedns.cn
006-25 https://public.intelx.io/phonebook/search
006-26 https://www.dnsscan.cn/dns.html?keywords={self.domain}&page={num}
006-27 https://www.threatcrowd.org/searchApi/v2/domain/report?domain=
006-28 http://114.55.181.28/check_web/databaseInfo_mainSearch.action
006-29 http://sbd.ximcx.cn/DomainServlet
006-30 https://scans.io/study/sonar.rdns_v2
006-31 https://www.passivetotal.org
006-32 http://i.links.cn/subdomain/
007-1 利用威胁情报平台数据集 利用互联网公开的威胁情报数据集进行收集 https://otx.alienvault.com/api/v1/indicators/domain/{domain}/{section}
007-2 https://pentest-tools.com/information-gathering/find-subdomains-of-domain#
007-3 https://www.virustotal.com/gui/domain/{domain}/relations
007-4 https://www.threatminer.org/domain.php?q={domain}
007-5 https://x.threatbook.cn/v3/domain/sub_domains
007-6 https://community.riskiq.com/search/{domain}/subdomains
008-1 利用搜索引擎发现 通过搜索引擎搜索语法进行收集
“-” 排除不想搜集到的域名,例如www
site:xx.com-www
site:x.x.x.x (目标IP)或x.x.x.*进行C段搜索
https://www.search.ask.com/web
008-2 https://www.baidu.com/s
008-3 https://www.bing.com/search
008-4 https://api.cognitive.microsoft.com/bing/v7.0/search
008-5 https://search.gitee.com/
008-6 https://api.github.com/search/code
008-7 https://www.google.com/search
008-8 https://www.googleapis.com/customsearch/v1
008-9 https://www.so.com/s
008-10 https://www.sogou.com/web
008-11 https://search.yahoo.com/search
008-12 https://yandex.com/search
009-1 域名备案搜集 查找域名备案信息发现同备案的其他域名资产 www.beianbeian.com
010-1 whois whois查询和反查 http://whois.chinaz.com/xx.com
http://whois.chinaz.com/reverse?host=**@xx.com&ddlSearchMode=1&domain=xx.com
011-1 域名枚举 爆破就是通过字典去枚举域名的A记录,但是需要先解决泛解析问题 会首先访问一个随机的并不存在的域,通过返回结果判断是否存在泛解析,确定存在泛解析以后,程序会开始不断的循环产生随机域名,去向服务器查询,将每次查询到的IP和TTL记录下来,直到大部分的IP地址出现次数都大于两次,则IP黑名单的收集结束,在得到了IP黑名单以后,oneforall接下来会将自己的字典中的每一项和要指定查询的域名进行拼接。在爆破过程中根据IP黑名单进行过滤
012-1 网页爬虫 利用网页爬虫提取对应的子域名 BurpSuite的spider
013-1 github和pastebin的代码中收集 通过github和pastebin上公开的代码中检测发现的域名信息 GSIL
013-2 github-Monitor
013-3 x-patrol
014-1 网络空间搜索引擎发现 利用网络空间资产搜索引擎类似google的方式进行搜索收集 https://fofa.so/api/v1/search/all
014-2 https://api.shodan.io/shodan/host/search
014-3 https://api.zoomeye.org/web/search
015-1 在线收集平台 利用在线的收集平台的已结构化的结果 https://d.chinacycc.com
015-2 http://www.yunsee.cn
016-1 置换扫描 使用已知域或子域的组合来确定新的子域 Altdns
二、常用子域名收集工具横向对比
推荐指数 项目地址 收集方式列举 优点 缺点
5颗星 oneforall https://github.com/shmilylty/OneForAll 001-1\001-3\001-5\001-6\001-7\001-8\002-1\003-1\003-2\003-3\003-4\003-5\003-6
004-1\005-1\005-2\006-1\006-2\006-4\006-5\006-7\006-8\006-9\006-10\006-11\006-12\006-13\006-14\006-18\006-19\006-20\006-21\006-22\006-23\006-24\006-26\006-27\006-28\006-29\007-1\007-3\007-4\007-5\007-6\008-1\008-2\008-3\008-4\008-5\008-6\008-7\008-8\008-9\008-10\008-11\008-12\011-1\012-1
功能全
被动源全
数量多
输出格式全
速度慢
存在较多误收集
泛解析判断只进行一次判断,不够准确,导致误判情况比较多
4颗星 SubdomainBrute https://github.com/lijiejie/subDomainsBrute 011-1 爆破速度快
准确度高
存在漏收集
结果数量相对较少
4颗星 wydomain https://github.com/ring04h/wydomain 001-8\006-7\006-6\006-4\006-27\006-31\006-32\007-4\011-1 字典强大 默认字典可枚举的子域名数量少
4颗星 ESD https://github.com/FeeiCN/ESD 008-2\008-3\008-7\008-11\011-1\012-1\014-1\014-2\014-3\001-7 速度极快
域名泛解析处理严格
性能要求高
输出结果不稳定
4颗星 BadDNS https://github.com/joinsec/BadDNS 001-8 支持域名泛解析
速度快
模式单一,不支持第三方信息收集
4颗星 Layer子域名挖掘机 https://github.com/euphrat1ca/LayerDomainFinder 011-1 支持多级子域名挖掘
速度快
结果准确度高
功能单一
3颗星 subfinder https://github.com/projectdiscovery/subfinder 011-1 结果多
基数大
速度快
输出格式多
无字典爆破功能
被动源相比其他工具少
2颗星 teemo https://github.com/webvul/Teemo 001-1\001-7\001-8\006-4\006-5\006-6\006-7\006-10\006-21\006-24\006-27\007-3\007-4\008-1\014-1 速度快 多级子域名枚举效果不好
误报多
2颗星 Sublist3r https://github.com/aboul3la/Sublist3r 011-1\008-1\008-2\008-3\008-7\008-11\006-6\006-5\007-3\001-1\006-27\006-24 N/A N/A
2颗星 AQUATONE https://github.com/michenriksen/aquatone 001-8\006-2\006-6\006-27\007-3\014-1 速度快
结果多
效果一般
干扰信息太多
1颗星 GSDF https://github.com/We5ter/GSDF 011-1 N/A 功能单一
1颗星 FuzzDomain https://github.com/Chora10/FuzzDomain 011-1 N/A 功能单一
1颗星 dnsbrute https://github.com/Q2h1Cg/dnsbrute 006-2\011-1 N/A 功能单一
1颗星 DNSRecon https://github.com/darkoperator/dnsrecon 005-1\005-2 N/A 功能单一
1颗星 Altdns https://github.com/infosec-au/altdns 016-1 置换扫描方式独特 功能单一
1颗星 subbrute https://github.com/TheRook/subbrute 005-2\011-1 N/A 功能单一
1颗星 sublert https://github.com/yassineaboukir/sublert 001-1 N/A 功能单一
1颗星 cloudflare_enum https://github.com/mandatoryprogrammer/cloudflare_enum 011-1 N/A 功能单一
三、参考链接

来源:freebuf.com 2020-08-23 15:11:46 by: webvul

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论