声明:请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。
前段时间的一次授权渗透,整个渗透测试过程密不可分,觉得挺有意思的,于是记录一下分享分享,话不多说,直接开始正文。
简单的尝试了一下弱口令,无果,查看报文发现对用户名密码参数进行了加密,那么就得去js里面找找加密算法了,不然不好开展下一步工作。如下,成功找到AES加密算法的key和iv(此处省略js调试部分)。
使用找到的加密算法对用户名字典进行加密,然后利用老表写的工作进行撞库攻击,如下,成功获取到一枚弱口令账号。
使用爆破获取到的账号登录系统,发现只是一个普通用户账号,基本没有什么功能,如下。
直接对API接口进行拼接越权测试,发现存在不少接口可以进行越权操作,如下。
查看log接口发现,log日志记录了其他用户登录的token信息。
好家伙,直接找一个其他用户的token进行替换登录,如下,成功以其他用户身份访问系统,这权限看着舒服多了,但还不够。
回到前面的越权接口,看看是否还有其他可以利用的点,通过查找发现了一个querypasswd接口,和password有关的东西,我一向高度重视,如下。
报错了,但是不是报权限错误,说明有看头,查找之前的接口,发现有一个usercode参数,话不多说,直接拼接,如下,成功获取到超级管理员的账号密码。
原文始发于微信公众号(安全无界):一次完整的渗透测试经历
评论