信息收集之域名发现
前言
因为马上毕业了,给自身定位大概是红队这样的方向。所以现在学习目标以红队知识和毕业论文设计为主,最近star一个师傅的面试经https://github.com/vvmdx/Sec-Interview-4-2023,发现其中一些问题没有很好理解,现在正好系统学习一下,并把它集成到我的毕业论文里。
域名发现
在实际渗透测试中,企业对于www.xxx.com这样的主站防护措施健全,而对于子域名应用的防护不一定及时。攻击者在主站域名找不到突破口时,就可以进行子域名的信息收集,通过子域名进行迂回攻击
枚举发现子域名
- 使用Layer子域名挖掘工具
将结果保存为txt中
- 使用subDomiansBrute
https://github.com/lijiejie/subDomainsBrute
通过纯DNS爆破来找到子域名,同时可以最新更新增加-w参数强制扫描泛解析的域名
搜索引擎发现子域名
google hack
site:xxx.com
第三方聚合服务发现子域名
- sublist3r
https://github.com/aboul3la/Sublist3r
使用公开来源情报和搜索引擎枚举子域名
python sublist3r.py -d xxx.com
聚合:
supported_engines = {'baidu': BaiduEnum, 'yahoo': YahooEnum, 'google': GoogleEnum, 'bing': BingEnum, 'ask': AskEnum, 'netcraft': NetcraftEnum, 'dnsdumpster': DNSdumpster, 'virustotal': Virustotal, 'threatcrowd': ThreatCrowd, 'ssl': CrtSearch, 'passivedns': PassiveDNS }
同时使用随机数判断是否泛解析,但是并不支持
证书透明性信息发现子域名
- 使用crt.sh对域名进行搜索
- 使用google对域名进行搜索
https://transparencyreport.google.com/https/certificates
dns域传送漏洞
漏洞原理
正常情况下,主DNS服务器的DNS区域传送请求只会转发给从DNS服务器,进行 数据更新,但是很多DNS服务器由于错误配置导致任意DNS区域传送请求都会进行数据库同步,区域数据库的信息就会被非正常获取,此时即可搜集数据库中存储的攻击域下面的所有子域名相关信息
正确的配置包括
allow-transfer {ipaddress;}; 通过ip限制可进行域传送的服务器
allow-transfer { key transfer; }; 通过key限制可进行域传送的服务器
漏洞利用
- windows下利用:
- nslookup命令进入交互式shell
- server命令 参数设定查询将要使用的DNS服务器
- ls命令列出某个域中的所有域名
- linux下利用:
dig xxx.com ns 判断DNS服务器 dig axfr @dns xxx.com 发起axfr请求,获取其域内所有域名
域名泛解析问题
泛解析会导致,将本不存在的子域名被解析到某个ip上。为了验证是否存在泛解析的情况,我们可尝试请求随机字符串构造的子域名,若多次尝试的结果均可解析到某一ip,则放弃对其子域名的大量爆破,转由其他手段进行分析。
这时通过DNS泛解析域名时返回的TTL相同。根据确切不存在的子域名记录(md5(domain).domain)获取黑名单 IP,对爆破过程的结果进行黑名单过滤。但这种宽泛的过滤很容易导致漏报,如泛解析记录为 1.1.1.1,但某存在子域名也指向 1.1.1.1,此时这个子域名便可能会被黑名单过滤掉。可以将 TTL 也作为黑名单规则的一部分,评判的依据是:在权威 DNS 中,泛解析记录的 TTL 肯定是相同的,如果子域名记录相同,但 TTL 不同,那这条记录可以说肯定不是泛解析记录。
总结
目前论文智能化渗透系统信息收集阶段思路是把OneForAll集成进去,同时和fofa接口对接,再把楞洞也集成进行,看看信息收集效果如何。一点一点搬砖ing,要学的太多啦!!!
原文链接:https://www.cnblogs.com/karsa/p/15922412.html
原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/23221