收集美团 6k+ 子域名仅需 15 秒
2021-05-18 12:15:00 Author: mp.weixin.qq.com(查看原文) 阅读量:695 收藏

HT1001 系列是信安之路推出的黑客工具实战系列课程,完整系列课程需加入信安之路知识星球获取,部分内容需关注信安之路微信公众号查看。

当前更新进度:知识星球更新至十六期《HT1152 Shodan 自动化利用》(加入星球查看全部内容)

先看一个图,收集美团 6k+ 子域名,仅需 15 秒:

subfinder 是由 GO 语言开发的一款子域名收集工具,除了 DNS 枚举之外,集成了多个在线网站的域名查询功能,包括:Binaryedge,Certspotter,Censys,Chaos,DnsDB,Github,Intelx,Passivetotal,Recon.dev,Robtex,SecurityTrails,Shodan,Spyse,Threatbook,Virustotal,Zoomeye,项目地址:

https://github.com/projectdiscovery/subfinder

安装方式(go 版本要求为 1.14+):

go get -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder

安装完成之后,首先查看帮助信息:

subfinder -h

如果你已经有了多个网站的 API KEY,可以编辑配置文件,将 API KEY 更新之后,再来使用,配置文件地址:

/root/.config/subfinder/config.yaml

配置案例:

resolvers:  - 1.1.1.1  - 1.0.0.1sources:  - binaryedge  - bufferover  - censys  - passivetotal  - sitedossierbinaryedge:  - 0bf8919b-aab9-42e4-9574-d3b639324597  - ac244e2f-b635-4581-878a-33f4e79a2c13censys:  - ac244e2f-b635-4581-878a-33f4e79a2c13:dd510d6e-1b6e-4655-83f6-f347b363def9certspotter: []passivetotal:  - [email protected]:sample_passwordsecuritytrails:   - GZPDgZXK56pS5255xr5h4pMPbseX7p0u  - fZtaC7q0R95KyqKBhfpC7MVb6hGT4sUm  - UdbuQzjz44qbSOlGLZ46PnsqCrhzu9E4  - ITTUAQ0A0v4yzSbClTTySceSjPbwswsC  shodan:  - AAAAClP1bJJSRMEYJazgwhJKrggRwKAgithub:  - d23a554bbc1aabb208c9acfbd2dd41ce7fc9db39  - asdsd54bbc1aabb208c9acfbd2dd41ce7fc9db39

在使用之前,前面几期已经收集了多个 API key 信息,今天来收集一下 securitytrails 网站(子域名搜索)的 API KEY,API 地址:

https://api.securitytrails.com/v1/domain/

下注册一下账号,注册地址:

https://securitytrails.com/app/signup

注册完成之后,访问下面的地址,获取 API KEY:

https://securitytrails.com/app/account/credentials

API 使用文档:

https://docs.securitytrails.com/docs

该网站认证方式为在查询参数中添加 apikey 或者在 Header 中添加 apikey,案例如下:

curl --include --header "APIKEY: your_api_key" 'https://api.securitytrails.com/v1/ping'ORhttps://api.securitytrails.com/v1/ping?apikey=your_api_key

接下来,我们在 GitHub 搜索关键词(securitytrails apikey)寻找泄漏的 KEY,免费的账号限制每月查询 50 次,频率限制 2 秒,搜索结果如下:

589MZT3zFGjUUuAyR4ZkvbwqcxUgTXKlGZPDgZXK56pS5255xr5h4pMPbseX7p0uY6lDrPh8uFuzi602zUk5933bCbAEWd5vq8XmVyUGODxfsGObTZ5PcNDygiz73rLxfZtaC7q0R95KyqKBhfpC7MVb6hGT4sUmoSc5Ud5Vw9pQM2no5eoObwmkMLsuOyyXUdbuQzjz44qbSOlGLZ46PnsqCrhzu9E4bD3GgfbOM1xmze49pas57XkdOOTv81HA0T0lwYQa2kNlNkxnnM868wTf5r7Vd9lp35ZoQkxGLPHIYYgepbnrihU0Km6oS8UhITTUAQ0A0v4yzSbClTTySceSjPbwswsCqYBHatqjiJ0XqudU1LdAn62pKzropP9VHP9up5LK5YT0tNJWg1Fd0KRRCrWDRNv1blw0TiVLivBCXwHXZgy212suJ35uejEK

现在用 python 来写个脚本验证一下这些 KEY 是否能用,脚本如下:

import requestsimport timeapi = 'https://api.securitytrails.com/v1/account/usage'for apikey in open("key.txt"):    headers = {'APIKEY': apikey.strip()}    url = api    r = requests.get(url, headers=headers).text    if 'False' in r or 'Invalid authentication' in r:        print('\tKey could not be authenticated exiting program.')    else:        print(apikey + "|" + str(r))    time.sleep(2)

可用 KEY 如下:

Y6lDrPh8uFuzi602zUk5933bCbAEWd5vq8XmVyUGODxfsGObTZ5PcNDygiz73rLxoSc5Ud5Vw9pQM2no5eoObwmkMLsuOyyX0T0lwYQa2kNlNkxnnM868wTf5r7Vd9lpqYBHatqjiJ0XqudU1LdAn62pKzropP9V#遗下 key 可用,但是超出使用限制GZPDgZXK56pS5255xr5h4pMPbseX7p0ufZtaC7q0R95KyqKBhfpC7MVb6hGT4sUmUdbuQzjz44qbSOlGLZ46PnsqCrhzu9E4ITTUAQ0A0v4yzSbClTTySceSjPbwswsC

接下来我们就可以把可用的 KEY 更新到配置文件中,开始使用本文的主角工具了。

最简单的使用方法,直接在参数中使用 -d 参数指定目标域名:

subfinder -d xazlsec.com

从结果上看,把我以前设置的几个 CTF 的域名都找出来了,很强!这些域名都是从哪里找出来的呢?我们使用 -v参数看看详情:

结果比较多的情况下,可以使用 -o参数输出到文件中,这里就不做测试了。

如果要搜索目标比较多的情况下,可以使用-dL参数指定目标域名所在文件:

subfinder -dL domain.txt 

总结

这款工具收集二级域名的方式主要通过各大平台获取,没有暴力枚举的功能,只要平台的授权 API 丰富,数据结果就很丰富,所有平台的 API KEY 都可以自己注册申请,也可以通过 GitHub 上寻找泄漏的 KEY,关于如何收集,本文也有,方法类似,剩下就看你自己的了。


文章来源: http://mp.weixin.qq.com/s?__biz=MzI5MDQ2NjExOQ==&mid=2247495274&idx=1&sn=3720aef315a5af2c90b52bdbbf0d838f&chksm=ec1dde42db6a57546f21b4924def7378a5f9807ce421f89a6aed90a29ccf2e4119f7d5c8a9f5#rd
如有侵权请联系:admin#unsafe.sh