漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2016-0174018
漏洞标题:微博上你点我链接我就上你绑定过的知乎账号
相关厂商:知乎
漏洞作者: zhchbin
提交时间:2016-02-01 11:44
修复时间:2016-03-14 15:10
公开时间:2016-03-14 15:10
漏洞类型:设计缺陷/逻辑错误
危害等级:高
自评Rank:15
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2016-02-01: 细节已通知厂商并且等待厂商处理中
2016-02-01: 厂商已经确认,细节仅向厂商公开
2016-02-11: 细节向核心白帽子及相关领域专家公开
2016-02-21: 细节向普通白帽子公开
2016-03-02: 细节向实习白帽子公开
2016-03-14: 细节向公众公开
简要描述:
先无耻得打个高分,不同于 @呆子不开口 的一个思路
详细说明:
这个问题其实是由一个任意跳转的漏洞引起的,之前我上报过但没有审核通过。因为的确当时我还没能展示出其危害,然后我又回来了!!知乎上回答里随意插个链接都能看到如下的URL:
因为要从referrer里偷信息,在构造链接的时候我们要用http,刚好这个接口也是支持的。课外知识:关于https -> http 跳转的referrer,http://serverfault.com/questions/520244/referer-is-passed-from-https-to-http-in-some-cases-how
在知道这个跳转漏洞之后,我想起了第三方账号的oauth过程中有一个redirect_uri的参数,例如微博的接口:
这个接口文档:http://open.weibo.com/wiki/Oauth2/authorize
试了一下,参数当然只能是知乎的域名,不过,居然子域名也是没有问题的。(微信的接口就不行),所以问题就变得简单了,构造URL如下:
用户点击之后我们就可以在referrer拿到code,如下:
拿到这个code参数之后,在浏览器用下面的接口就可以完成登录了。
其中state参数的值是知乎首页的cookie中_xsrf对应的值
这个值不对的话会403
漏洞证明:
已经证明
修复方案:
那个任意跳转的问题的确挺修复的,不知道微博redirect_uri那里能不能限制的严格一下。
版权声明:转载请注明来源 zhchbin@乌云
漏洞回应
厂商回应:
危害等级:中
漏洞Rank:8
确认时间:2016-02-01 13:11
厂商回复:
多谢,已经确认了
最新状态:
暂无