深入了解子域名挖掘tricks
字数 1072 2025-08-26 22:11:57
子域名挖掘技术深度解析
一、DNS域传送漏洞
1. 原理与背景
DNS区域传送(DNS zone transfer)是后备DNS服务器从主服务器获取数据以更新自身zone数据库的机制,用于提供DNS服务的冗余备份。错误配置会导致安全漏洞:许多DNS服务器被错误配置为向任何AXFR请求进行域传送。
2. 漏洞利用方法
Windows环境:
- 使用
nslookup进入交互式shell - 使用
server命令设定查询的DNS服务器 - 使用
ls命令列出域中所有域名
Linux环境:
dig @DNS服务器IP 目标域名 axfr
Kali工具:
dnswalk 目标域名.
Nmap扫描:
nmap --script dns-zone-transfer --script-args dns-zone-transfer.domain=目标域名 -p 53 -Pn DNS服务器
3. 正确配置方法
- IP限制:
allow-transfer {ipaddress;}; - Key限制:
allow-transfer { key transfer; };
二、子域名枚举技术
1. 从DNS获取子域名
dig 子域名.目标域名
2. HTTPS证书信息利用
三种方法:
- 提取证书中"使用者可选名称"(SAN)字段值
- 通过资产搜索引擎(如Censys)收集证书信息
- 向域名A记录IP的443端口请求获取证书信息
Censys搜索示例:
https://censys.io/certificates?q=目标域名
3. 其他信息泄露源
- robots.txt文件
- crossdomain.xml(跨域策略文件)
- 流量分析
- GitHub信息泄露
- 搜索引擎结果(
site:目标域名)
4. 常用枚举工具
- Hydra
- Sublist3r(整合搜索引擎和crt.sh)
- Subbrute(字典枚举)
- SubDomainBrute
三、泛解析问题与对抗策略
1. 泛解析问题
泛解析是对抗子域名挖掘的有效手段,将所有未定义的子域名解析到特定IP或页面。
2. 解决方案
- 使用绝对不存在的子域名页面作为基准
- 计算相似度识别泛解析
- 检查多个DNS解析IP(防止因出口线路不同导致的误判)
四、优秀工具推荐
1. OneForAll
- Python开发
- 多源收集:证书/DNS/爬虫/威胁情报/搜索引擎
- 支持子域名爆破和泛解析判断
- 多线程调用
2. Sublert
- 子域名监控工具
- 基于证书监控
- 可搭建服务端推送新发现子域名到Slack
- 适合Bug Bounty项目
五、实战案例参考
- 顺丰某处DNS域传送漏洞
- 雷锋网DNS域传送漏洞
六、最佳实践建议
- 优先使用DNS查询而非HTTP请求(避免未上线/拒绝访问等问题)
- 结合多种信息源进行交叉验证
- 定期监控新出现的子域名
- 使用高质量子域名字典(如DNSPod top2000)
通过综合运用这些技术和方法,可以全面、高效地进行子域名挖掘工作,为渗透测试和网络安全评估提供坚实基础。