aditya777-dev/DNS-Enumeration-Tool
GitHub: aditya777-dev/DNS-Enumeration-Tool
一款集成了子域名枚举、DNS 记录查询、WHOIS 检索和区域传送漏洞检测等功能的 Python DNS 侦察工具,用于安全评估中的域名信息收集与攻击面映射。
Stars: 1 | Forks: 0
# DNS 枚举工具
一款基于 Python 的 DNS 侦察工具,用于收集全面的域名情报。支持子域名枚举、DNS 记录检索、反向 DNS 查询、WHOIS 查询、SRV 记录发现以及区域传送漏洞检查——所有功能均可通过交互式菜单使用。
在 SOC 和渗透测试工作流中,用于映射目标域名的攻击面。
## 功能
- **子域名枚举** — 使用 Sublist3r 的多源引擎发现子域名
- **DNS 记录查询** — 检索 A、MX、TXT、DNSKEY、CNAME、NS、SOA 记录
- **反向 DNS 查询** — 将 IP 地址解析回其域名(PTR 记录)
- **WHOIS 查询** — 收集域名注册详情(注册商、创建日期、到期时间、联系方式)
- **SRV 记录枚举** — 查找用于 SIP、LDAP、SMTP、IMAP、XMPP、FTP、HTTP/S 的服务记录
- **区域传送检查** — 测试域名服务器的 AXFR 配置错误(一个严重的 DNS 漏洞)
- **交互式菜单** — 可单独运行模块或一次性运行所有模块
## 前置条件
- Python 3.6+
- pip
## 安装说明
```
git clone https://github.com/aditya777-dev/DNS-Enumeration-Tool.git
cd DNS-Enumeration-Tool
pip install dnspython python-whois sublist3r
```
## 用法
```
python dns-enumeration-tool.py
```
系统会提示您输入域名,随后会显示一个交互式菜单:
| 选项 | 操作 |
|--------|--------|
| 1 | 枚举子域名 |
| 2 | 枚举 DNS 记录 |
| 3 | 反向 DNS 查询 |
| 4 | 枚举 SRV 记录 |
| 5 | 尝试区域传送(使用选项 2 中的 NS 记录) |
| 6 | WHOIS 信息 |
| 7 | 依次运行所有模块 |
| 8 | 退出 |
### 示例会话
```
Enter domain name: example.com
Select an option:
> 2
Enumerating DNS records for example.com:
A: ['93.184.216.34']
MX: ['0 .']
NS: ['a.iana-servers.net.', 'b.iana-servers.net.']
SOA: ['ns1.example.com. ...']
> 5
Attempting zone transfer for example.com:
Trying nameserver: a.iana-servers.net
Zone transfer permission denied for a.iana-servers.net
Zone transfer unsuccessful for all nameservers.
```
## SOC 相关性
DNS 枚举用于威胁情报和红队演练的**侦察(Reconnaissance)**阶段:
- 识别可能配置错误或被遗忘的暴露子域名
- 检查会泄露完整 DNS 区域数据的区域传送漏洞(AXFR)
- 在漏洞评估之前映射基础设施
- 验证 DNS 记录的规范性(SPF、DMARC、DNSKEY)
## 伦理使用
本工具只能针对您**拥有**或已获得**明确书面授权**进行测试的域名使用。未经授权的 DNS 侦察可能会触犯计算机犯罪法,包括 CFAA 和 GDPR。
## 作者
[aditya777-dev](https://github.com/aditya777-dev)
标签:逆向工具