jasim-jazz/subdomain-enumeration
GitHub: jasim-jazz/subdomain-enumeration
一款基于词表与多线程的子域名枚举工具,通过 DNS 解析与 HTTP 状态检查辅助安全侦察。
Stars: 0 | Forks: 0
# 高级子域名枚举工具
本项目是一个基于 Python 的子域名枚举工具,用于学习和练习网络安全与漏洞赏金狩猎中使用的侦察技术。
该工具使用基于词表的暴力破解、DNS 解析和 HTTP 状态检查来执行子域名发现。
## 功能
* 多线程子域名枚举
* 基于词表的暴力破解
* DNS 解析以识别有效的子域名
* 发现主机的 HTTP 状态码检测
* 可选将结果保存到文件
* 使用 argparse 的命令行界面
## 要求
* Python 3.x
* requests 库
安装依赖:
```
pip install requests
```
## 安装
克隆仓库:
```
git clone https://github.com/YOUR_USERNAME/subdomain-enumerator.git
cd subdomain-enumerator
```
## 用法
```
python3 subdomain.py -w [options]
```
## 参数
| 参数 | 描述 |
| ---------- | ------------------------- |
| domain | 目标域名(example.com) |
| -w, --wordlist | 词表文件路径(必需) |
| -t, --threads | 线程数(默认:100) |
| -o, --output | 将结果保存到文件 |
## 示例
基础扫描:
```
python3 subdomain.py example.com -w subdomains.txt
```
使用自定义线程数:
```
python3 subdomain.py example.com -w subdomains.txt -t 200
```
将结果保存到文件:
```
python3 subdomain.py example.com -w subdomains.txt -o results.txt
```
使用更大的词表:
```
python3 subdomain.py example.com -w /path/to/wordlist.txt
```
## 工作原理
1. 从词表加载子域名
2. 尝试对每个子域名进行 DNS 解析
3. 若有效,则发送 HTTP 请求
4. 显示子域名及其 HTTP 状态码
5. 可选择将结果保存到文件
## 示例输出
```
[+] admin.example.com | Status: 200
[+] dev.example.com | Status: 403
[+] test.example.com | Status: No HTTP
```
## 免责声明
本工具仅供教育用途。
仅对您自己拥有或明确获得许可的系统使用。未经授权的扫描是非法的。
## 作者
Mohamed Jasim
## 后续改进
* HTTPS 支持
* 改进错误处理
* 集成更大的词表
* 更快的 DNS 解析方法
* 输出格式改进
标签:argparse, Bug赏金, CDN识别, DNS查询, DNS解析, HTTP探测, HTTP状态检测, PoC, Python开发, requests库, 侦察技术, 单词表爆破, 域名探测, 子域名探测, 子域名收集, 子域名枚举, 子域名爆破, 安全学习, 并发扫描, 开源安全工具, 开源项目, 暴力破解, 系统安全, 网络安全, 网络枚举, 逆向工具, 逆向工程平台, 隐私保护