nsonaniya2010/SubDomainizer
GitHub: nsonaniya2010/SubDomainizer
SubDomainizer 是一款用于发现隐藏子域名、云存储 URL 和敏感密钥的安全信息收集工具。
Stars: 1875 | Forks: 235
[](https://www.python.org/)
[](https://twitter.com/neeraj_sonaniya)
## 请我喝杯[咖啡](https://www.buymeacoffee.com/neerajson)
## SubDomainizer
SubDomainizer 是一款旨在发现隐藏子域名以及存在于给定 URL 的网页、Github 和外部 javascripts 中的机密信息的工具。
该工具还能从这些 JS 文件中查找 S3 bucket、cloudfront URL 等内容,这可能非常有趣,例如 S3 bucket 处于开放读取/写入状态,或者发生子域名接管,cloudfront 也有类似的情况。
它还可以扫描包含您文件的给定文件夹内部。
## 支持的云存储服务:
SubDomainizer 能够查找以下云存储服务的 URL:
```
1. Amazon AWS services (cloudfront and S3 buckets)
2. Digitalocean spaces
3. Microsoft Azure
4. Google Cloud Services
5. Dreamhost
6. RackCDN.
```
## 密钥搜索:(测试版)
SubDomainizer 还将查找存在于页面内容和 javascripts 文件中的机密信息。
这些机密信息的查找依赖于某些特定关键字和 *Shannon Entropy* 公式。
工具搜索到的某些机密信息可能为误报。
此密钥搜索功能处于测试阶段,后续版本可能会提高搜索结果的准确性。
## 截图:


## 安装步骤
1. 从 git 克隆 SubDomainizer:
```
git clone https://github.com/nsonaniya2010/SubDomainizer.git
```
2. 切换到该目录:
```
cd SubDomainizer
```
3. 安装依赖项:
```
pip3 install -r requirements.txt
```
4. 尽情享用该工具。
## 更新到最新版本:
使用以下命令更新到最新版本:
```
git pull
```
## 用法
简写 | 全写 | 描述
------------- | ------------- |-------------
-u | --url | 您想要查找(子)域名的 URL。
-l | --listfile | 包含需要扫描的 URL 列表的文件。
-o | --output | 您需要保存结果的输出文件名。
-c | --cookie | 需要随请求一起发送的 Cookie。
-h | --help | 显示帮助信息并退出。
-cop | --cloudop | 提供您需要存储云服务结果的文件名。
-d | --domains | 给出 TLD(例如,对于 www.example.com,您必须给出 example.com),以逗号分隔(逗号之间无空格),从而查找给定 TLD 的子域名。
-g | --gitscan | 如果您还想通过 Github 获取内容,则需要此项。
-gt | --gittoken | 如果需要扫描,则需要 Github API token(同时还需要加上 -g)。
-gop | --gitsecretop | 将在 github 中发现的机密信息保存到文件中。
-k | --nossl | 使用此项可绕过 SSL 证书验证。
-f | --folder | 包含文件/文件夹的根目录。
-san | --subject_alt_name | 查找所有已发现子域名的 Subject Alternative Names,选项:'all','same'。
## SAN 选项说明:
* all - 此选项将查找所有域名和子域名。
* same - 这将仅查找特定子域名的子域名。
## 示例
* 列出有关该工具的帮助信息:
```
python3 SubDomainizer.py -h
```
* 查找给定单个 URL 的子域名、s3 bucket 和 cloudfront URL:
```
python3 SubDomainizer.py -u http://www.example.com
```
* 从给定的 URL 列表中查找子域名(通过文件提供):
```
python3 SubDomainizer.py -l list.txt
```
* 将结果保存在 (output.txt) 文件中:
```
python3 SubDomainizer.py -u https://www.example.com -o output.txt
```
* 提供 Cookie:
```
python3 SubDomainizer.py -u https://www.example.com -c "test=1; test=2"
```
* 通过 github 进行扫描:
```
python3 SubDomainizer.py -u https://www.example.com -o output.txt -gt -g
```
* 不进行 SSL 证书验证:
```
python3 SubDomainizer.py -u https://www.example.com -o output.txt -gt -g -k
```
* 文件夹扫描:
```
python3 SubDomainizer.py -f /path/to/root/folder/having/files/and/folders/ -d example.com -gt -g -k
```
* Subject Alternative Names:
```
python3 SubDomainizer.py -u https://www.example -san all
```
* 将在 github 中扫描发现的机密信息保存到文件中:
```
python3 SubDomainizer.py -u https://www.example.com -o output.txt -gt -g -gop filename_to_save
```
## 结果差异(在 facebook.com 上使用和不使用 Cookie):
在 SubDomainizer 中使用 facebook cookie 之前的结果:

在 SubDomainizer 中使用 facebook cookie 之后的结果:

## 更改:
在最新版本 (2.0) 中,添加了以下重要功能:
1. 查找已发现子域名的 Subject Alternative Names。
2. 增加了显示发现机密信息位置的功能。
## 许可证
本工具基于 MIT 许可证授权。请查看 [LICENSE](https://github.com/nsonaniya2010/SubDomainizer/blob/master/LICENSE) 了解相关信息。
## 想要帮忙?
如果您喜欢这些功能和工具,或者喜欢这款工具,想要提供帮助吗?
[在此帮忙](https://paypal.me/BugsByNeeraj)
标签:动态插桩