请注意,我目前并未积极维护此项目。我未来可能会重新研究子域名,但目前我的安全兴趣在其他方面,时间也分散在其他事务上。如果你发现问题,欢迎提交PR或将其分支到自己的项目中。谢谢。
Turbolist3r 是 sublist3r 子域名发现工具的一个分支。除了 sublist3r 原有的开源情报(OSINT)能力外,Turbolist3r 还会对结果进行一些自动化分析,重点关注子域名接管。
Turbolist3r 会为每个发现的子域名查询公共 DNS 服务器。如果子域名存在(即解析器返回了地址),答案会被归类为 CNAME 或 A 记录。通过检查 A 记录,可以为给定域名发现潜在的渗透测试目标。同样,寻找子域名接管的过程也很简单:查看发现的 CNAME 记录,并调查任何指向适用云服务的记录。
请勿用于非法目的。


| 短格式 | 长格式 | 描述 |
|---|---|---|
| -d | --domain | 要枚举子域名的域名 |
| -b | --bruteforce | 启用 subbrute 暴力破解模块 |
| -p | --ports | 针对特定的 TCP 端口扫描发现的子域名 |
| -v | --verbose | 启用详细模式并实时显示结果 |
| -t | --threads | 用于 subbrute 暴力破解的线程数 |
| -e | --engines | 指定以逗号分隔的搜索引擎列表 |
| -o | --output | 将发现的域名保存到指定的文本文件 |
| -h | --help | 显示帮助信息并退出 |
| -a | --analyze | 进行反向 DNS 分析并输出结果 |
| (无) | --saverdns | 将反向 DNS 分析结果保存到指定文件 |
| (无) | --inputfile | 从指定文件读取域名,并用于分析 |
| (无) | --debug | 在分析模块(-a)期间打印调试信息。主要输出原始 DNS 数据,熟悉 DIG Linux DNS 工具及其输出有助于解释调试输出 |
| -r | --resolvers | 包含 DNS 服务器地址的文件,用于填充解析器。文件每行只能有一个服务器 IP 地址,且仅接受 IP 地址 |
| -q | --quiet | 仅打印发现的域名和/或 CNAME 映射。注意:错误信息也可能被打印 |
python turbolist3r.py -h
python turbolist3r.py -d example.com -a --saverdns analysis_file.txt
python turbolist3r.py -d example.com -a --inputfile subdomains.txt
python turbolist3r.py -d example.com -a --inputfile subdomains.txt -r dns_servers.txt
python turbolist3r.py -d example.com
python turbolist3r.py -d example.com -o example_hosts.txt
python turbolist3r.py -v -d example.com
python turbolist3r.py -b -d example.com
python turbolist3r.py -e google,yahoo,virustotal -d example.com
Turbolist3r 依赖于 dnslib、requests 和 argparse 这些 python 模块。暴力破解功能需要 subbrute 模块,但只要不调用暴力破解,Turbolist3r 可以在没有它的情况下运行。如果遇到问题,请提交 PR 或联系我。
dnslib 模块可以从 https://bitbucket.org/paulc/dnslib/ 下载,或通过以下命令在多数系统上安装:
pip install dnslib
sudo apt-get install python-requests
sudo yum install python-requests
sudo pip install requests
sudo apt-get install python-argparse
sudo yum install python-argparse
sudo pip install argparse
Turbolist3r 采用 GNU GPL 许可证。请查看 LICENSE 获取更多信息。
请遵守法律限制,仅针对有权测试的基础设施进行测试。