白帽故事 · 2023年11月3日 0

一起全帐户接管漏洞案例

背景介绍

今天分享一个如何完全接管某应用程序管理账户的故事,由于漏洞披露要求,目标网站在下文中均以target.com替代。

file

漏洞发现

对于上面这个登录框,白帽小哥首先使用Dirsearch/Gobuster/Waybackurls 对其进行了一些模糊测试,但是并没有任何收获,而后白帽小哥尝试手动输入一些参数,同样没有任何收获。

那么只有利用Burp来抓包看看了,随便输入admin/admin登录,然后查看抓包数据:

file

接着尝试密码重置:

file

居然可以通过尝试不同的电子邮件来确认账号是否存在,有点意思,那么将POST请求改为GET会怎样呢?

file

似乎没什么效果,那么如果向API/USERS 发送GET请求会怎样呢?

file

成功获得64条用户记录!

由于在登录页面发现过一些JS文件,于是将请求改为GET /main.js HTTP/2,再次查看:

file

可以从中发现几条访问路径,当通过admin/country-dashboard访问时,居然成功绕过访问控制,直接以管理员身份进入了控制面板:

file

而通过管理员控制面板可以创建新账户自然也不在话下,那么接下来就是提交漏洞报告,静静等待赏金了。