频道栏目
首页 > 安全 > 网站安全 > 正文

Subfinder:一个子域名发现工具,可以为任何目标枚举海量有效子域名

2018-07-05 09:57:10      个评论    来源:[db:作者]  
收藏   我要投稿


SubFinder是一个子域发现工具,可以为任何目标枚举海量的有效子域名。它已成为sublist3r项目的继承者。SubFinder使用被动源,搜索引擎,Pastebins,Internet Archives等来查找子域,然后使用灵感来自于altdns的置换模块来生成排列,并使用强大的bruteforcing引擎快速的解析它们。如果需要,它也可以执行纯粹的爆破。此外,SubFinder还具有高可定制性。其代码构建模块化的特点,使你能够轻松地添加功能或移除错误。
视频演示:https://asciinema.org/a/177851
特性
简单且模块化的代码库使你能够轻松地为其添加功能或移除错误。
快速且强大的Bruteforcing模块
强大的置换生成引擎。(开发中)
海量被动数据源(目前有29个)
支持多种输出格式
Ask, Archive.is, Baidu, Bing, Censys, CertDB, CertSpotter, CrtSH, DnsDB, DNSDumpster, Dogpile, Entrust CT-Search, Exalead, FindSubdomains, Hackertarget, IPv4Info, Netcraft, PassiveTotal, PTRArchive, Riddler, SecurityTrails, SiteDossier, Shodan, SSL Certificates, ThreatCrowd, ThreatMiner, Virustotal, WaybackArchive, Yahoo
使用
./subfinder -h
显示帮助信息
Flag
描述
示例
-b
使用bruteforcing查找子域
./subfinder -d example.com -b
-c
不要显示彩色输出
./subfinder -c
-d
通过域名查子域
./subfinder -d example.com
-dL
通过域名列表查子域
./subfinder -dl hosts.txt
-nW
删除通配符子域
./subfinder -nw
-o
输出文件名(可选)
./subfinder -o output.txt
-oT
以Aquatone风格的JSON格式写入输出(必需与-nW一起使用)
./subfinder -o output.txt -nw -oA
-oJ
以JSON格式写入输出
./subfinder -o output.json -oJ
-oD
输出到目录(使用多个主机时)
./subfinder -od ~/misc/out/
-r
逗号分隔域名解析服务器地址
./subfinder -r 8.8.8.8,1.1.1.1
-rL
包含要使用的解析列表文件
./subfinder -rL resolvers.txt
–recursive
使用递归查找子域(默认为:true)
./subfinder –recursive
–set-config
更改配置选项
./subfinder –set-config example=something
–set-settings
更改设置选项
./subfinder –set-settings CensysPages=10
–silent
仅显示找到的子域
./subfinder –silent
–sources
逗号分隔使用的源文件列表(可选)
./subfinder –sources threatcrowd,virustotal
–exclude-sources
逗号分隔不使用的源文件列表(可选)
./subfinder –exclude-sources threatcrowd,virustotal
-t
并发线程数(爆破)
./subfinder -t 10
–timeout
等待直到退出连接
./subfinder –timeout 10
-v
显示详细输出
./subfinder -v
-w
用于执行bruteforcing和置换的字典列表
./subfinder -w words.txt
安装说明
直接安装
SubFinder需要go1.10+的环境才能成功安装!使用go get命令下载SubFinder:
go get github.com/Ice3man543/subfinder
更新
你还可以使用-u命令来强行更新代码包:
go get -u github.com/Ice3man543/subfinder
在Docker Container中运行
Git clone repo,然后使用以下命令在container中构建并运行subfinder
git clone https://github.com/Ice3man543/subfinder.git
创建你的docker container
docker build -t subfinder .
在container创建后,执行以下命令。
docker run -it subfinder
以上命令与运行-h相同
注意:请务必按照后安装步骤正确配置该工具。
例如,以下将针对uber.com运行该工具,并将结果输出到你的主机文件系统
docker run -v $HOME/.config/subfinder:/root/.config/subfinder -it subfinder -d uber.com > uber.com.txt
后安装说明
在成功安装Subfinder后,我们还需要做一些配置工作。某些服务的使用,需要我们手中有API密钥。如果没有,以下服务将会无法正常工作:
Virustotal
Passivetotal
SecurityTrails
Censys
Riddler
Shodan
这些是你必须通过命令行指定的配置选项。
VirustotalAPIKey
PassivetotalUsername
PassivetotalKey
SecurityTrailsKey
RiddlerEmail
RiddlerPassword
CensysUsername
CensysSecret
ShodanAPIKey
这些值存储在首次运行该工具时被创建的$HOME/.config/subfinder/config.json文件中。使用–set-config选项设置服务API密钥:
./subfinder --set-config VirustotalAPIKey=0x41414141
./subfinder --set-config PassivetotalUsername=hacker,PassivetotalKey=supersecret
如果你使用的是docker,则首先需要你手动来创建保存subfinder配置文件的目录结构。你可以在主机系统中运行二进制文件,然后让它创建文件的目录结构,之后可以使用–set-config选项设置api值。手动创建命令如下:
mkdir $HOME/.config/subfinder
cp config.json $HOME/.config/subfinder/config.json
nano $HOME/.config/subfinder/config.json
配置完成后,你可以运行以下命来枚举目标子域:
sudo docker run -v $HOME/.config/subfinder:/root/.config/subfinder -it subfinder -d freelancer.com
运行
查找目标域子域:
./subfinder -d freelancer.com
[CERTSPOTTER] www.fi.freelancer.com
[DNSDUMPSTER] hosting.freelancer.com
[DNSDUMPSTER] support.freelancer.com
[DNSDUMPSTER] accounts.freelancer.com
[DNSDUMPSTER] phabricator.freelancer.com

[DNSDUMPSTER] cdn1.freelancer.com
[DNSDUMPSTER] t1.freelancer.com
[DNSDUMPSTER] wdc.t1.freelancer.com
[DNSDUMPSTER] dal.t1.freelancer.com
-o命令可用于指定输出文件。
./subfinder -d freelancer.com -o output.txt
你还可以使用-oJ选项,将输出格式显示为json。–silent:仅显示没有任何其他信息的子域。–set-config:更改配置选项值。–set-setting:更改设置选项,例如我们可以使用该选项指定Censys的检查页数:
./subfinder -d freelancer.com --sources censys --set-settings CensysPages=2 -v
如果要检查censys返回的所有页面,则可以使用 “all” 选项。注意,这是一个字符串。
以下是当前支持的设置
CensysPages
AskPages
BaiduPages
BingPages
对于bruteforcing功能,你可以使用-b和-w选项来指定一个字典列表。
./subfinder -d freelancer.com -b -w jhaddix_all.txt -t 100 --sources censys --set-settings CensysPages=2 -v
你也可以以Aquatone风格的JSON格式写入输出。
./subfinder -d freelancer.com -o result_aquatone.json -oT -nW -v
指定域名解析服务地址:
./subfinder -d freelancer.com -o result_aquatone.json -oT -nW -v -r 8.8.8.8,1.1.1.1
./subfinder -d freelancer.com -o result_aquatone.json -oT -nW -v -rL resolvers.txt

 

上一篇:初链新任CEO:黑客新时代
下一篇:揭秘ISIS内部黑客组织
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站