正文部分
原文作者:https://bxmbn.medium.com/
思路总结
当网站使用邮箱发送重置链接进行重置的时候,可以尝试对比一下重置链接和数据包的关系,如果在数据包中可以获取到重置链接的信息,则可以通过数据包对重置链接进行构造,导致任意用户接管
漏洞复现
我正在对一个音乐类型的网站进行测试。寻找功能点发现存在一个忘记密码的功能,我试图在密码重置请求中注入一个自定义主机标头,但是没有什么用。然后我尝试了一些其他的常见思路,例如:多加几个邮箱,看他是否会将验证码发到多个邮箱中等等。但是都没有效果。
然后我尝试使用F12去查看重置的数据包,在重置的返回包里面,有一个名为 validationSession 的json字符串
收到了一条重置密码链接的邮件
通过对比他们两个,我有了重大的突破 sessionId
- • 在密码重置的响应中有一个 sessionId,这是重置密码的凭据。
- • 在重置的链接中,也有一个sessionId,并且和响应包中的一致
所以,我可以向任意用户发送电子邮件地址,实现任意用户接管
1.通过F12查看重置请求的响应,获取sessionId
2.通过获取到sessionId的去构造重置链接
3.重置该用户的密码,实现任意用户的重置接管
原文始发于微信公众号(fkalis):【海外src漏洞挖掘】通过对比数据包和重置链接,发现 2500 美元赏金的账户接管!
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论