当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-0124026

漏洞标题:唯品会账号相关漏洞可通过csrf登录任意账号

相关厂商:唯品会

漏洞作者: il0vnn

提交时间:2015-07-02 10:10

修复时间:2015-08-16 18:32

公开时间:2015-08-16 18:32

漏洞类型:CSRF

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-07-02: 细节已通知厂商并且等待厂商处理中
2015-07-02: 厂商已经确认,细节仅向厂商公开
2015-07-12: 细节向核心白帽子及相关领域专家公开
2015-07-22: 细节向普通白帽子公开
2015-08-01: 细节向实习白帽子公开
2015-08-16: 细节向公众公开

简要描述:

唯品会账号相关漏洞可通过csrf登录任意账号

详细说明:

漏洞产生的功能页面:账号绑定,http://myi.vip.com/userbind.html
绑定账号

z1.png


调用weibo的oauth2接口参数中state参数遗漏,没有设值

z2.png


那么微博授权回调的state也没有值了

z3.png


这个state到底什么用呢?且看weibo文档的解释

z4.png


很明显的,没有state这个抗csrf的token保护,很容易被csrf
只要通过一段script脚本,将事先请求过的oauth的code进行csrf传递,那么就可以绑定账号。
-------分割线------
如果已经绑定了账号,怎么办呢?同样的解绑接口可以通过csrf进行解绑。

z5.png


漏洞证明:

poc如下,先解绑,再绑定。

<script src='https://passport.vip.com/unbound/weibo'></script>
<script src='https://passport.vipshop.com/callback/weibo?state=0&code=#####code#######'></script>


绑定后的账号,可以通过第三方账号登陆

z6.png

修复方案:

正确使用oauth接口中的state

版权声明:转载请注明来源 il0vnn@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2015-07-02 18:31

厂商回复:

感谢白帽子对唯品会安全的支持~小礼品会立即发出~

最新状态:

暂无