漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2012-013146
漏洞标题:新浪微博gsid有效期过长,仅凭gsid可发布微博、关注用户、查看私信、修改头像等
相关厂商:新浪微博
漏洞作者: seclab_zju
提交时间:2012-10-09 11:29
修复时间:2012-11-23 11:30
公开时间:2012-11-23 11:30
漏洞类型:账户体系控制不严
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2012-10-09: 细节已通知厂商并且等待厂商处理中
2012-10-09: 厂商已经确认,细节仅向厂商公开
2012-10-19: 细节向核心白帽子及相关领域专家公开
2012-10-29: 细节向普通白帽子公开
2012-11-08: 细节向实习白帽子公开
2012-11-23: 细节向公众公开
简要描述:
新浪微博gsid有效期过长。前面sina官方在乌云回复过gsid会过期,但我这里找到有一年前的gsid仍可以使用,如这个http://tieba.baidu.com/f?kz=1065945196。持有gsid可进行除改密之外的所有才做,包括绑定手机、发布微博、关注用户、查看私信、修改头像等。
gsid的获取方法很多,可以google(如被普通用户post到论坛、贴吧等场所,我用google+baidu从网上爬下来超过500个gsid,其中有一半以上验证可用),可以arp欺骗(以及其他MITM如免费wifi钓鱼),可以从Http Referer拿到(貌似要XSS?),也可以从手机客户端的数据库读取(需要su,难度略高,如微博android客户端可以从这个数据库文件读到/data/data/com.sina.weibo/databases/sina_weibo)
另外测试了一下,当我从wap入口和手机客户端分别登入后,得到的两个gsid竟然是相同的,修改密码后gsid才会改变,因此猜测gsid是由Hash(uid,pwd,salt)构造的。如果真是如此,那gsid一旦生成,就和密码绑定了,不会有机会expire。如果用户不小心把gsid发布到了公共论坛,就等于泄漏了自己的当前密码。
详细说明:
搜索gsid入口很多,由于gsid都是以“3_5”开头的,搜索:
http://tieba.baidu.com/f/search/res?ie=utf-8&qw=gsid%3D3_5
得到的gsid基本都可以用,不仅是weibo的,*.sina.cn后面挂的gsid很多也同样有效,从google+baidu可以搜出500+个不重复的gsid,一半以上可以使用。这里随便贴几个有效的:
3_5bc653d522eecdfcd79c856f2d209651f954ce1424
3_5bc09d7220177f40dee4aeffcc8d24e782d5b14cdba5
3_58ac1d66deadd6d96b8b2b8cd60c9c9918f89d2ead41da74
构造url通过GET方式就可以登入该gsid对应用户的微博:
http://weibo.cn/?gsid=******
登入后可以进行除修改密码外的所有操作。
漏洞证明:
修复方案:
除了weibo以外,也许还需要检查一下其他使用到gsid的新浪服务,如news,blog等等。
版权声明:转载请注明来源 seclab_zju@乌云
漏洞回应
厂商回应:
危害等级:低
漏洞Rank:1
确认时间:2012-10-09 14:47
厂商回复:
最新状态:
暂无