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

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

缺陷编号:wooyun-2016-0190769

漏洞标题:知乎客户端登录任意用户账号

相关厂商:知乎

漏洞作者: RoCn

提交时间:2016-03-30 16:58

修复时间:2016-05-14 17:30

公开时间:2016-05-14 17:30

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

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

知乎客户端可以登录任意用户账号

详细说明:

知乎服务器端对第3方授权返回的值没有进行2次校验,可以通过修改第3方授权的返回结果,实现登录他人的账号。

漏洞证明:

以微博登录为例子,访问Fenng(冯大辉,小道消息出品人)的微博主页,查看一下网络请求,获得他的uid是1577826897
然后打开知乎客户端,用一个微博小号登录,拦截微博授权成功的请求地址:https://api.weibo.com/oauth2/sso_authorize?sflag=1
修改Response Body,将uid改成1577826897:

QQ20160330-1.png


然后就登录了Fenng的知乎账号:

Screenshot_20160330-154228.png


声明:没有看Fenng的知乎私信,登录成功以后,看了一下私信列表,就退出了。

修复方案:

知乎服务器端在拿到客户端提交的授权成功以后,还应该调用第3方平台的token校验,以微博为例子,应该再调用一次:https://api.weibo.com/2/account/get_uid.json,看拿到的uid是否和客户端提交的uid一致。

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:18

确认时间:2016-03-30 17:26

厂商回复:

确认,谢谢反馈!

最新状态:

暂无