声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由用户承担全部法律及连带责任,文章作者不承担任何法律及连带责任。 |
防走失:https://gugesay.com/archives/4359
不想错过任何消息?设置星标↓ ↓ ↓
前期侦察
在分析 Target.com 时,通过 Burp Suite 中监控 HTTP 请求,发现一处 有趣的 API 端点:
GET /accounts/manage-users-data HTTP/2
在响应包中,包含了以下参数:
"showResetPassword": false,"showModifyEmails": false
这些值表示用户角色禁用了密码重置和电子邮件修改选项。
漏洞利用
在 Burp 中使用匹配和替换 ,将响应包修改为:
"showResetPassword": true,"showModifyEmails": true
刷新页面会发现可以访问两个新选项:
测试密码重置
当启用这些选项后,白帽小哥决定测试是否可以为团队中的用户重置密码 。
首先选择一个团队成员的帐户 ,然后单击 Reset Password(重置密码 ),系统响应 200 OK, 并提供了有效的密码重置链接 :
复制该链接,浏览器中打开后成功设置了新密码,并成功登录了该成员的帐户 。
这证实了我们可以为团队内部的用户重置密码 ——那么该漏洞是否适用于团队外部的用户呢?
任意用户密码重置
当单击 Reset Password(重置密码) 时,拦截请求:
{"userId": 9438867,"resetAccessKey": false}
请求中包括用户的数字 ID,这立刻引起了白帽小哥的注意。
为了确认用户 ID 是连续的 ,白帽小哥创建了一个新账户并检查了其用户 ID。
新账户的 ID为 9438868,这意味着系统使用了增量用户 ID。
修改该请求,将 userId 替换为另一个非团队用户 ID:
{"userId": 9438868,"resetAccessKey": false}
服务器响应 200 OK, 同时收到了有效的密码重置链接 !成功成功登录受害者的帐户!
白帽小哥立即报告了该漏洞,最终漏洞被定级为严重,白帽小哥也顺利获得了丰厚的漏洞赏金。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...