rix4uni/subdog
GitHub: rix4uni/subdog
通过聚合多个公开数据源来快速、全面地枚举目标域名的子域名,帮助安全人员在侦察阶段高效收集攻击面信息。
Stars: 49 | Forks: 11
## subdog
一个强大的子域名枚举工具,通过聚合来自多个数据源的信息来创建全面的根子域名列表。
## 功能特性
- **多数据源**:聚合来自 17 个以上不同来源的子域名
- **外部工具**:支持 `subfinder` 等外部工具(带 `--all` 标志)
- **去重处理**:自动移除所有来源中重复的子域名
- **输出到文件**:将结果保存到文件,同时仍在终端显示输出
- **详细模式**:提供详细的汇总表,显示每个来源的数量、耗时和状态
- **并行处理**:同时运行多个数据源以加快获取速度
- **标准化**:自动过滤掉泛解析(wildcard)子域名和电子邮件地址
- **灵活的数据源选择**:可选择特定的数据源或排除不需要的数据源
## 安装
```
go install github.com/rix4uni/subdog@latest
```
## 下载预编译二进制文件
```
wget https://github.com/rix4uni/subdog/releases/download/v0.0.6/subdog-linux-amd64-0.0.6.tgz
tar -xvzf subdog-linux-amd64-0.0.6.tgz
rm -rf subdog-linux-amd64-0.0.6.tgz
mv subdog ~/go/bin/subdog
```
或者下载适用于您平台的[二进制发布版本](https://github.com/rix4uni/subdog/releases)。
## 从源码编译
```
git clone --depth 1 https://github.com/rix4uni/subdog.git
cd subdog; go install
```
## 使用方法
```
Usage of subdog:
-a, --all Run all sources including external tools (subfinder)
-e, --exclude-source string Comma-separated list of sources to exclude when using --source all
-l, --list-sources List all available sources and exit
-o, --output string Save subdomain results to a file
-p, --parallel Run all sources in parallel to speed up scanning
--silent Silent mode.
-s, --source string Choose source(s) to use, or 'all' for all sources. Use --list-sources to see available sources (default "all")
--verbose Enable verbose mode (shows detailed summary table with counts and timing)
--version Print the version of the tool and exit.
```
### 可用数据源
- `subdomaincenter` - [Subdomain Center API](https://api.subdomain.center)
- `jldc` - [JLDC Subdomains](https://jldc.me)
- `virustotal` - [VirusTotal API](https://www.virustotal.com)
- `alienvault` - [AlienVault OTX](https://otx.alienvault.com)
- `urlscan` - [URLScan.io](https://urlscan.io)
- `certspotter` - [CertSpotter API](https://api.certspotter.com)
- `hackertarget` - [HackerTarget API](https://api.hackertarget.com)
- `crtsh` - [crt.sh Certificate Search](https://crt.sh)
- `trickest` - [Trickest Inventory](https://github.com/trickest/inventory)
- `subdomainfinder` - [C99 Subdomain Finder](https://subdomainfinder.c99.nl)
- `chaos` - [Chaos Project Discovery](https://chaos.projectdiscovery.io)
- `merklemap` - [MerkleMap API](https://api.merklemap.com)
- `shodan` - [Shodan API](https://api.shodan.io)
- `reverseipdomain` - [Reverse IP Domain](https://sub-scan-api.reverseipdomain.com)
- `dnsdumpster` - [DNS Dumpster](https://dnsdumpster.com)
- `bugbountydata` - [BugBountyData](https://github.com/rix4uni/BugBountyData)
- `subfinder` - [subfinder](https://github.com/projectdiscovery/subfinder)(外部工具,需要 `--all` 标志)
## 使用示例
### 使用所有数据源进行基本扫描
```
echo "example.com" | subdog
```
### 仅使用特定数据源
```
echo "target.com" | subdog --source crtsh,certspotter
```
### 排除特定数据源
```
echo "target.com" | subdog --exclude-source shodan,virustotal
```
### 并行处理以提高速度
```
echo "target.com" | subdog --silent --parallel
```
### 将结果保存到文件
```
echo "target.com" | subdog --output target.com.txt
```
### 带有汇总表的详细输出
```
echo "target.com" | subdog --verbose
```
### 保存结果并显示详细汇总
```
echo "target.com" | subdog --verbose --output target.com.txt
```
### 包含外部工具(subfinder)
```
echo "target.com" | subdog --all
```
### 运行所有内容 - 所有数据源 + 外部工具 + 详细输出
```
echo "target.com" | subdog --all --verbose
```
### 扫描多个域名
```
cat subs.txt | subdog
```
### 并行使用包括 subfinder 在内的所有工具进行扫描
```
cat subs.txt | subdog --all --parallel --verbose
```
标签:API聚合, ESC4, EVTX分析, GitHub, Go语言, OSINT, 域名探测, 子域名挖掘, 子域名枚举, 安全侦查, 搜索引擎挖掘, 数据去重, 日志审计, 程序破解, 系统安全, 网络安全, 资产测绘, 隐私保护, 黑盒测试