本人菜鸡,大佬们亲喷~
长话短说就是得到了授权测试一下网站,事先说了网站是前后端分离的。整个过程没有啥骚操作,都比较基础。
02给了一个url,由于这是公司某业务系统的管理口,只有一个登录界面。如下图。
常规测试下登录框,没有sql注入,从源代码中也没有看到什么有用的信息,用dirsearch扫了一下,阿里云还是狠,马上就给ban了,不给测试账号,还玩****
03那咋办嘛~总不能就这样放弃了吧,抱着试一试的心态,访问了一下url的前几级目录,发现可以浏览目录下文件信息,
一番浏览,比较有用的就是上图的env.js内容了。
在访问到/html/这级目录的时候,发现网站并没有直接显示登录界面,而是有个页面一闪而过,然后才跳转到登录界面。于是burp抓包,看看具体是怎么一个过程。
挨个重放,发现在访问这级目录(不加login.html)时,浏览器先去display的子域名下查询了后台数据,此时直接显示了后台页面,然后才去api-gateway下发送了一个身份验证的包,这时才会跳转到登录框界面。那么这里首先有个洞就是查询数据时并没有验证身份。测试了下sql注入,并没有(可能是我太菜了)
丢弃身份认证包看到的后台界面如下图。
em。。。具体为什么会造成这种结果我也不清楚,还望知道的可以留言回答一哈。
04既然发现了两个后端子域名,首先查了下IP,发现和前端是同一个IP,然后访问看看。两个都是显示500。
既然是同一台阿里云,这里应该也扫不了目录吧...那又玩不下去了呀...
其他的方法搞了好久,一直没有什么进展(扫端口扫到个redis,但是要身份验证)。结果抱着死妈当活马医的心态,dirsearch扫了一波,扫出东西了。。。(不会吧不会吧,不会真有人以为同一台阿里云就不能扫了吧~)
扫到了.git和.env,通过GitHack下载了源码,结果没啥东西,.env里面就不一样了嘿嘿嘿。
泄露了数据库的地址、端口、账号和密码。是个influxdb数据库,从网上下载了该数据库的客户端软件,连接,如下图。
由于不知道网站根路径,这里尝试了往默认的/var/www/html/目录下写webshell,由于没接触过influxdb这个数据库,百度也没找到进一步利用方式,简单学了下语法之后尝试的,也不知道能不能这样利用,反正就是没成功,说到底就是我太菜了。
05
又又又不知道过了多久,还是一点进展都没有。期间用之前泄露出来的账号密码试了ssh,不对。也试了redis,确实能进去,但是常规的三种利用方式都不行(不是没权限就是路径不对,据说公司之前吃过亏,补了)。
然后就是,刚好那段时间获取到了试用版的xray高级版。那就玩玩嘛,结果扫到了其他的几个子域名,访问需要登录,又用前面泄露的账号密码进去了。都是业务管理口,这里就不截屏了,其中比较关键的一个子域名是portainer。进去之后如下图。
这才发现该域名下的所有网站都是用docker搭建在同一个服务器上的,portainer可以用来进行虚拟机逃逸,由于我懒,具体的过程有大佬已经写过了,这里贴个链接。
https://mp.weixin.qq.com/s/08CSshSNfcWc4C9W17JH-w