ranjith196/subdomain-enum-toolkit
GitHub: ranjith196/subdomain-enum-toolkit
整合Subfinder、Amass等多个主流工具的自动化子域名枚举工具包,专为渗透测试新手提供一键式的资产发现能力。
Stars: 0 | Forks: 0
# 🔍 子域名枚举工具包
**适合新手的自动化子域名枚举工具包**,专为 Bug Bounty 猎手和渗透测试人员设计。
灵感来源于 GitHub 上的顶级项目:
- [projectdiscovery/subfinder](https://github.com/projectdiscovery/subfinder) (14k+ ⭐) - 快速被动枚举
- [owasp-amass/amass](https://github.com/owasp-amass/amass) (14k+ ⭐) - 深度攻击面映射
- [aboul3la/Sublist3r](https://github.com/aboul3la/Sublist3r) (11k+ ⭐)
- [tomnomnom/assetfinder](https://github.com/tomnomnom/assetfinder)
- [projectdiscovery/shuffledns](https://github.com/projectdiscovery/shuffledns) + massdns
非常适合想要简洁、可运行配置而不想处理复杂性的新手。
## ✨ 功能
- 一键进行被动 + 主动子域名枚举
- 结合多种顶级工具以实现最大覆盖率
- 自动 DNS 解析与泛解析过滤
- 整洁的输出(TXT + JSON)
- 支持字典爆破
- 简易安装脚本
- 简单的英文文档(非常适合非英语母语者)
## 📦 所用工具
| 工具 | 用途 | 来源 |
|------|---------|--------|
| **Subfinder** | 快速被动枚举 | ProjectDiscovery |
| **Amass** | 深度被动 + 主动 | OWASP |
| **Assetfinder** | 额外的被动数据源 | tomnomnom |
| **dnsx / shuffledns** | 快速解析 + 爆破 | ProjectDiscovery |
| **httprobe / httpx** | 存活主机探测 | ProjectDiscovery / tomnomnom |
## 🚀 快速开始(5分钟)
### 1. 克隆此仓库
```
git clone https://github.com/ranjith196/subdomain-enum-toolkit.git
cd subdomain-enum-toolkit
```
### 2. 安装所有内容(推荐)
```
chmod +x install.sh
./install.sh
```
这将安装:
- Go(如果未安装)
- Subfinder, Amass, Assetfinder, dnsx, httpx, shuffledns
- 所需的字典
### 3. 运行枚举
```
# 简单 passive scan
./subenum.sh -d example.com
# 完整 scan(passive + brute force)
./subenum.sh -d example.com -b
# 多个 domains
./subenum.sh -dL domains.txt -b
```
### 4. 结果
结果将保存在 `results/example.com/` 目录中:
- `all_subdomains.txt` - 所有唯一的子域名
- `live_subdomains.txt` - 仅存活的子域名
- `resolved.txt` - 包含 IP
- 各个工具的独立输出
## 📖 用法
```
./subenum.sh [options]
Options:
-d, --domain Target domain (required if no -dL)
-dL, --list File with list of domains
-b, --brute Enable bruteforce mode (uses wordlist)
-w, --wordlist Custom wordlist (default: wordlists/subdomains-top1million-5000.txt)
-o, --output Output directory (default: results/)
-t, --threads Number of threads (default: 50)
-s, --silent Silent mode (only final results)
-h, --help Show help
```
### 示例
```
# Basic
./subenum.sh -d target.com
# 使用 brute force(推荐以获得更好结果)
./subenum.sh -d target.com -b
# 自定义 wordlist + threads
./subenum.sh -d target.com -b -w wordlists/big.txt -t 100
# 目标列表
echo "target1.com" > targets.txt
echo "target2.com" >> targets.txt
./subenum.sh -dL targets.txt -b
```
## 📁 项目结构
```
subdomain-enum-toolkit/
├── subenum.sh # Main automation script
├── install.sh # One-click installer
├── wordlists/
│ └── README.md
├── results/ # All scan results go here (gitignored)
├── .gitignore
├── LICENSE
└── README.md
```
## ⚙️ 配置(配置 API 密钥以获取更好的结果)
为 Subfinder 创建 provider 配置:
```
mkdir -p ~/.config/subfinder
nano ~/.config/subfinder/provider-config.yaml
```
示例内容(获取免费的 API 密钥):
```
securitytrails: ["YOUR_KEY"]
shodan: ["YOUR_KEY"]
virustotal: ["YOUR_KEY"]
censys: ["YOUR_ID:YOUR_SECRET"]
github: ["YOUR_TOKEN"]
```
然后运行:`subfinder -up`
## 🛠️ 手动安装(如果 install.sh 失败)
```
go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest
go install -v github.com/owasp-amass/amass/v4/...@master
go install -v github.com/tomnomnom/assetfinder@latest
go install -v github.com/projectdiscovery/dnsx/cmd/dnsx@latest
go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest
go install -v github.com/projectdiscovery/shuffledns/cmd/shuffledns@latest
```
确保您的 PATH 中包含 `$GOPATH/bin`。
## 💡 获得更好结果的提示
1. **始终使用 `-b`** 对重要目标进行爆破
2. 添加 API 密钥(最大的提升)
3. 使用来自 SecLists 的优质字典
4. 在 VPS 上运行以提升速度并避免触发速率限制
5. 将结果通过管道传递给 `httpx` 以进行存活的 Web 应用和技术栈检测
## 📜 免责声明
此工具仅供**授权的安全测试和教育目的使用**。
未经许可,请勿对系统使用。作者对任何滥用行为概不负责。
## 📄 许可证
MIT License - 随意使用和修改。
**祝狩猎愉快!** 🎯
由 [Ranjith Kumar](https://github.com/ranjith196) 为社区创建
如果这对您有帮助,请给它一个 ⭐!
标签:Cutter, GitHub, 子域名发现, 子域名枚举, 实时处理, 密码管理, 数字取证, 日志审计, 系统安全, 自动化脚本, 资产测绘, 运行时操纵