大家好,我是Omar Hamdy (Seaman),今天我将介绍我在Bugcrowd的私人邀请漏洞挖掘中发现的最cool的漏洞之一
我有一个私人邀请漏洞挖掘的目标,我们称它为redacted.com,经过一段时间的信息收集,我开始检查密码重置功能,通常我会寻找像(ATO,Host Header 注入)这样的漏洞
简单地说,当用户想要重设密码时,他输入他的名字和姓氏以及电子邮件。密码重置链接将发送到他的电子邮箱。
我请求为我的帐户重设密码,然后拦截请求(通过Zap 代理)以仔细检查它。
我发现请求是这样的:
密码重置链接是:
https://redacted.com/Reset?token=04294876770750
到目前为止没有什么令人兴奋的,我使用了链接,更改了密码并拦截了请求,在这里我发现了一些非常有趣的东西。
我发现请求是这样的:
如果您查看此请求,您会发现用于重置密码的令牌,它与用户请求重置密码时发送的现有令牌相同
从这里我可以通过更改受害者的密码来接管我想要的任何帐户
1- 请求重置受害者帐户的密码并使用 Burpsuite 阻止该请求。
2- 您将找到用于重置受害者密码的令牌。
3- 请求为您的帐户重置密码,然后使用密码重置链接,更改您的密码并通过 Burpsuite 拦截请求。
4- 您会发现这样的请求:
5- 用受害者的令牌替换您的令牌,受害者的密码将成功更改。
当我向公司报告漏洞时,他们将风险从 P2 降低到 P3,因为我需要知道受害者的名字和姓氏,但后来通过进一步研究我发现我只需要知道受害者的电子邮件,如果我输入错误的名字和姓氏,我仍然能够获得受害者的令牌。
最终,我获得了2000美金的漏洞赏金。
推荐阅读:
点赞,转发,在看
原文地址:见阅读原文
作者:Omar Hamdy