子域名枚举工具

1️⃣ Subfinder

✅ 安装配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# 安装 Go 语言环境
sudo apt update
sudo apt install golang-go -y

# 验证 Go 安装
go version

# 配置 Go 环境变量(按需)
echo 'export GOPATH=$HOME/go' >> ~/.zshrc
echo 'export PATH=$PATH:$GOPATH/bin' >> ~/.zshrc
source ~/.zshrc

# 设置 Go 模块代理
go env -w GOPROXY=https://goproxy.cn,direct

# 安装 Subfinder
go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest

# 验证安装
subfinder -version || sudo ln -s $HOME/go/bin/subfinder /usr/local/bin/subfinder
​````

### 🛠 常见用法

​```bash
# 基本子域名枚举
subfinder -d example.com

# 输出到文件
subfinder -d example.com -o result.txt

# 使用配置文件(推荐设置 API)
subfinder -d example.com -pc subfinder-config.yaml

# 批量扫描多个域名
subfinder -dL domains.txt -oL output.txt

# 配合 httpx 探测活跃子域
subfinder -d example.com | httpx -silent

2️⃣ Knock

  • 项目地址🔗 https://github.com/guelfoweb/knock

  • 功能:Python 编写的子域名爆破工具,使用字典枚举

  • 语言:Python

  • 特点

    • 可自定义字典进行暴力枚举
    • 支持 WHOIS 检测
    • 脚本化扩展能力强

✅ 安装方式

1
2
3
git clone https://github.com/guelfoweb/knock.git
cd knock
pip3 install -r requirements.txt

🛠 常见用法

1
2
3
4
5
6
7
8
# 使用默认字典
python3 knockpy.py example.com

# 指定字典
python3 knockpy.py example.com -w /path/to/wordlist.txt

# 输出结果保存到目录
python3 knockpy.py example.com -o output_dir

3️⃣ TheHarvester

  • 项目地址🔗 https://github.com/laramies/theHarvester

  • 功能:信息收集利器,可用于枚举子域名、邮箱、员工、IP 等

  • 语言:Python

  • 特点

    • 被动信息收集,支持多个搜索引擎
    • 可收集邮箱/IP 等社工信息
    • 适合 APT 情报分析与前期侦察

✅ 安装方式(Kali 自带)

1
2
3
4
git clone https://github.com/laramies/theHarvester.git
cd theHarvester
pip3 install -r requirements.txt
python3 theHarvester.py -h

🛠 常见用法

1
2
3
4
5
6
7
8
9
10
11
# 使用 Baidu 枚举子域
python3 theHarvester.py -d example.com -b baidu

# 多个搜索引擎组合使用
python3 theHarvester.py -d example.com -b bing,crtsh

# 输出为 HTML 文件
python3 theHarvester.py -d example.com -b bing -f result

# 查看所有支持的数据源
python3 theHarvester.py -h

4️⃣ Amass

  • 项目地址🔗 https://github.com/OWASP/Amass

  • 功能:最强大的子域名枚举框架之一,支持主动/被动混合模式,数据可视化

  • 语言:Go

  • 特点

    • 支持主动扫描 + 被动收集 + 混合模式
    • 支持 ASN 分析、DNS 爆破、端口识别等
    • 输出格式支持 TXT/JSON/GDF 等
    • 可视化结果可联动 Neo4j、Maltego

✅ 安装方式(Kali 可直接安装)

1
2
3
sudo apt install amass
# 或者使用 go 安装
go install -v github.com/owasp-amass/amass/v4/...@latest

🛠 常见用法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 被动模式枚举
amass enum -passive -d example.com

# 主动扫描模式(需 DNS 解析权限)
amass enum -active -d example.com

# 暴力破解 + 源信息标注
amass enum -brute -d example.com -src

# 输出结构化结果(JSON)
amass enum -d example.com -oA amass_output

# 可视化分析图谱
amass viz -d3 -dir amass_output

📦 工具对比总结表

工具 模式 特点 是否支持暴力 是否需配置 API 输出格式
Subfinder 被动 快速、支持 API、多源整合 是(可选) TXT / JSON
Knock 字典暴力 简单、定制强、易扩展 ✅ 是 TXT
TheHarvester 被动 多维情报收集,社工必备 TXT / HTML
Amass 主动 / 被动 / 混合 架构完整、可视化输出、功能最强大 ✅ 是 ✅ 建议配置 TXT / JSON / GDF

子域名枚举工具
https://bae-ace.github.io/2025/07/21/子域名枚举工具/
作者
bae
发布于
2025年7月21日
许可协议