利用hosts碰撞测试,暴露内网系统

0x01 hosts碰撞

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

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

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

0x02 DNS缓存

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

  1. 浏览器缓存,先检查自身缓存中有没有被解析过的这个域名对应的ip地址。
  2. 本地缓存hosts文件,在C盘系统文件下有个hosts文件,记录域名和对应的IP地址(此步就是hosts碰撞的修改点)
  3. 本区域域名服务器(LDNS),即你所在或附近城市的域名服务器,大约80%的域名解析到这里就完成了。
  4. 再高一级域名服务器,如果还是解析不到就继续往上一级查,此处就不赘述了。

0x03 批量检测

hosts碰撞原理如下图。此处的本地DNS解析可以在hosts文件配置。知道了原理,我们就可以收集内网系统的域名和目标资产的IP段,将两者进行组合遍历,便可发现一些暴露在公网的内网资产了。
在这里插入图片描述
这里是推荐一个批量发现工具,针对hosts碰撞批量发现。

https://github.com/fofapro/Hosts_scan

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

在这里插入图片描述

关注公众号:白帽学子,回复 0724,获得工具包。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值