如何通过重定向参数实现账户劫持并获取2500美元漏洞赏金

如何在不获取密码的情况下劫持账户并通过重定向参数获得2500美元赏金

Assalamualaikum
大家好

在这篇文章中,我想分享一个概念验证(PoC),作为漏洞猎人和安全研究员的你们肯定已经知道这种类型的漏洞了哈哈。

没错,这是一个从开放重定向到XSS的漏洞。故事始于我在聊天功能中发现存储型XSS漏洞后,出于好奇想寻找其他漏洞的探索。

发现过程

我从尝试创建第二个账户开始,并没有立即使用Burp Suite,而是注意到网站的跳转过程。结果发现参数没有被读取或捕获到Burp Suite中。后来我发现网站使用了客户端重定向方法(JavaScript重定向)。

客户端重定向,特别是使用JavaScript的方法,是一种无需刷新或重新加载页面就能将用户从一个网页重定向到另一个网页的技术。这种重定向发生在用户浏览器内部,而不是在Web服务器上。与通过HTTP代码(通常表现为301或302状态码)执行的服务器端重定向不同,客户端重定向完全在用户浏览器中进行。

漏洞利用

我尝试了三次捕获这个请求并成功了:

member-area/auth-success?redirectTo=https://webvuln.com/dashboard

然后我尝试更改为evil.com和XSS:

member-area/auth-success?redirectTo=https://evil.com 200 OK
member-area/auth-success?redirectTo=javascript:alert(document.cookie) 200 OK with pop up

我注意到存储在显示cookie中的认证信息是通过服务器发送的。接着我尝试将自己的访问令牌更改为受害者的访问令牌。

基于漏洞细节,我成功通过会话劫持实现了账户接管(Account Takeover),因为我只需替换Bearer accessToken和有效的accessToken就能访问属于其他用户的资源,实际上就是进入了用户的账户。

实用建议

快速拦截网站URL上的任何页面重定向,并在报告前始终检查document.cookie中的内容。

漏洞影响

  1. 账户接管(ATO):无需密码即可登录其他用户账户
  2. 个人身份信息(PII)泄露:电话号码、电子邮件、地址、出生日期、位置等
  3. 权限滥用

感谢阅读
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
公众号二维码

posted @ 2025-07-25 22:16  qife  阅读(8)  评论(0)    收藏  举报