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

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

缺陷编号:wooyun-2012-014571

漏洞标题:优酷网存在账号被劫持风险

相关厂商:优酷

漏洞作者: 心伤的胖子

提交时间:2012-11-10 00:02

修复时间:2012-11-15 00:03

公开时间:2012-11-15 00:03

漏洞类型:未授权访问/权限绕过

危害等级:高

自评Rank:20

漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-11-10: 细节已通知厂商并且等待厂商处理中
2012-11-15: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

今天某公司发表了"互联网最大规模账号劫持漏洞即将引爆"微博搞的人心惶惶的,但是由于只提到说不是以前的oauth漏洞而且没有任何细节,所以只好根据描述的信息自己去测试一下了。
但是在测试过程中的确发现某些互联网厂商比如优酷存在账号被劫持漏洞,但是感觉可能和所发表的内容存在一定的出入,也许不是一个地方?按照我个人的理解整个过程有点繁琐,虽然能够对用户发起定向攻击,但是还是有一定的成本,并且由于应用环境的局限性还是较难直接攻击多个账号的,可以在后面看到整个攻击的详细过程。

详细说明:

简单描述下漏洞的背景
1、oauth2.0目前国内大部分互联网公司也都已经应用了,但是并没有严格按照标准去执行,导致在第三方应用接入或者第三方账号共享上存在一些问题
2、Implicit Flow这种授权模式之前存在的一些问题在wooyun上也报过,同时认为Authorization Code Flow这种相对安全的授权模式不存在问题,但是从今天知道创宇发表的内容和实际测试情况来看国内互联网公司在实现上还是有一定的缺陷,下面会有详细的描述优酷账号是如何被劫持的。
模拟劫持过程:
1、准备一个新的优酷账号,没有绑定任何网站,等下就劫持这个账号,看下图:

youku_no.jpg


2、准备一个已经登陆的人人网账号和另外一个优酷账号,为了方便测试在同一浏览器中开发,看下图:

renren_no.jpg


youku_no_1.jpg


3、在第2步中的浏览器中设置代理到Burp Suite中,同时开启拦截模式,然后在第2步中的优酷页面中进入到优酷账号->基本设置->绑定网站中,点击人人网后面的“立即绑定”
4、这个时候在Burp Suite中单步forward,当到如下图的界面中停止forward,同时复制出这一步的URL,为

http://i.youku.com/partner_renrenOauthCallback_wintype_?code=nOxfokUeUu42WuKlYz1hJOT4xWPimrad


这一步很关键,由于这个URL后面的code为OAuth2中的Authorization Code Flow授权模式返回的Authorization Code,优酷网拿到这个code后才可以换取能够访问人人网账号的access token。并且这一步的code为一次性的,所以避免被返回到优酷使用。

youku_code.jpg


5、把第4步中复制出来的URL,放到第1步我们要被劫持的优酷账号浏览器中访问。效果如下图

youku_bind.jpg


6、至此整个攻击完成,我们刷新看看第1步中那个优酷账号的绑定网站页面,已经绑定了一个人人网账号

youku_bind_1.jpg


可以看到由于缺乏对整个过程的有效检验,可以通过与目标交互的方式攻击特定目标的账号。

漏洞证明:

漏洞证明这里就是当我们退出第二步中的那个优酷账号,然后用人人网账号登陆优酷就会发现此时已经登陆了我们要劫持的那个优酷账号。

youku_hijacking.jpg


但是目前一般都是一个账号绑定一个账号的方式,较难一对多的进行攻击。

修复方案:

完全遵守oauth2.0的标准,请@horseluke 补充

版权声明:转载请注明来源 心伤的胖子@乌云


漏洞回应

厂商回应:

危害等级:无影响厂商忽略

忽略时间:2012-11-15 00:03

厂商回复:

最新状态:

2012-11-15:研究一下怎么处理。