隐藏资产探测-hosts碰撞

1 hosts碰撞

很多时候访问目标资产IP响应多为:401、403、404、500,但是用域名请求却能返回正常的业务系统(禁止IP直接访问),因为这大多数都是需要绑定host才能正常请求访问的 (目前互联网公司基本的做法)(域名删除了A记录,但是反代的配置未更新),那么我们就可以通过收集到的目标的 域名 和 目标资产 的IP段组合起来,以 IP段+域名 的形式进行捆绑碰撞,就能发现很多有意思的东西。
原理:带host的请求直接到反代服务器的ip,反代服务器上面的对应host配置如果还在,就会把请求转发到后面即内网中的对应host业务服务器上,导致网站的域名删除了A记录的情况下也能访问/直接访问内网业务系统

2 脚本

https://github.com/fofapro/Hosts_scan

3 脚本原理

在发送http请求的时候,对域名和IP列表进行配对,然后遍历发送请求 (就相当于修改了本地的hosts文件一样),并把相应的title和响应包大小拿回 来做对比,即可快速发现一些隐蔽的资产。

4 实践

进行hosts碰撞需要目标的域名和目标的相关IP作为字典
域名就不说了
相关IP来源有:

  1. 目标域名历史解析IP
    https://site.ip138.com/
    https://ipchaxun.com/
  2. 页面/js源码爬取IP
    oneforall貌似实现了
    长亭的rad以burp为代理爬,保存返回包,再正则提取出IP
  3. 暴露真实ip的边缘业务
    这类业务所在的ip段
  4. src直接给了
    比如补天专属的运营商

4.1 提取域名历史解析IP

以ipchaxun为例,需要linux的grep awk等工具
https://ipchaxun.com/www.test.com/
intruder枚举

保存所有响应包到一个文件夹内

一行命令提取IP并排序去重:
cat ./* |grep -E '^<a href="/'|grep -vE 'ipchaxun.com</a>$|"></a>$'|awk -F '/' '{print$2}'|sort|uniq

4.2 碰撞

posted @ 2020-09-30 19:18  雨九九  阅读(6405)  评论(1编辑  收藏  举报