利用hosts碰撞暴露内网泄露系统

admin 2022年7月25日11:04:45评论130 views字数 953阅读3分10秒阅读模式

0x01 hosts碰撞

在某些时候我们用IP访问时,目标资产响应多为: 401、403、404、500,但是用域名请求却能返回正常的业务系统,这是因为大多数系统都会需要绑定域名才能访问,而且这种情况默认是在内网访问。


举个例子就懂了,网站对外主域名为www.test.com,而内网中存在多个业务系统,皆有绑定内网域名,比如manage.test.com,这是内网自定义的域名,无法在公网DNS解析到,即不是备案过的子域名,无法直接访问到,因为公网无法解析其IP。


利用hosts碰撞暴露内网泄露系统

系统管理员其实是这样配置的,利用apache或nginx进行配置配置,使无法直接通过IP去访问系统,因为公网DNS无法解析自定义子域名,因此访问系统有两个条件,即知道系统的内网域名和对应的IP,利用本地DNS解析即可访问。


0x02 DNS缓存

简单说明下DNS解析机制。当我们访问某个域名时,会解析到对应的IP去访问业务系统,大致顺序如下:


  • 浏览器缓存,先检查自身缓存中有没有被解析过的这个域名对应的ip地址。

  • 本地缓存hosts文件,在C盘系统文件下有个hosts文件,记录域名和对应的IP地址(此步骤就是hosts碰撞的修改点)

  • 本区域域名服务器(LDNS),即你所在或附近城市的域名服务器,大约80%的域名解析到这里就完成了。

  • 再高一级域名服务器,如果还是解析不到就继续往上一级查,此处就不赘述了。


0x03 批量检测

hosts碰撞原理如下图。此处的本地DNS解析可以在hosts文件配置。知道了原理,我们就可以收集内网系统的域名和目标资产的IP段,将两者进行组合遍历,便可发现一些暴露在公网的内网资产了。


利用hosts碰撞暴露内网泄露系统


这里是推荐一个批量发现工具,针对hosts碰撞批量发现。

https://github.com/fofapro/Hosts_scan


把IP列表放在ip.txt,把某系统的可能的子域名或是内网域名放在host.txt,工具截图如下:

利用hosts碰撞暴露内网泄露系统


公众号回复:0724,获取工具包。


利用hosts碰撞暴露内网泄露系统


声明:该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白名单。

请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与本公众号无关。


原文始发于微信公众号(白帽学子):利用hosts碰撞暴露内网泄露系统

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年7月25日11:04:45
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   利用hosts碰撞暴露内网泄露系统https://cn-sec.com/archives/1198135.html

发表评论

匿名网友 填写信息