当前位置: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

厂商回复:

确认,谢谢反馈!

最新状态:

暂无


漏洞评价:

评价

  1. 2016-03-30 17:00 | king7 ( 普通白帽子 | Rank:1837 漏洞数:248 | 3P is the life I want to live.)

    这?.......

  2. 2016-03-30 17:01 | j14n ( 普通白帽子 | Rank:1731 漏洞数:318 | ... . -.-. - . .- --)

    @king7 这表哥。。

  3. 2016-03-30 17:02 | prolog ( 普通白帽子 | Rank:743 漏洞数:149 )

    66666666666

  4. 2016-03-30 17:03 | Me_Fortune ( 普通白帽子 | Rank:329 漏洞数:112 | The quiter you are,the more you're able ...)

    这。。

  5. 2016-03-30 17:04 | king7 ( 普通白帽子 | Rank:1837 漏洞数:248 | 3P is the life I want to live.)

    楼主直接留方式,发offer

  6. 2016-03-30 17:05 | 木易 ( 普通白帽子 | Rank:321 漏洞数:65 | 不,,不要误会,我不是针对谁,我是说在座...)

    以@king7表哥号为例

  7. 2016-03-30 18:03 | RoCn ( 路人 | Rank:23 漏洞数:2 | 路人甲)

    用这个漏洞思路在其他一些使用第3方登录的app上也测试了一下,发现中招的还有不少,有兴趣的可以刷rank了

  8. 2016-03-30 18:18 | 肖泽 ( 实习白帽子 | Rank:51 漏洞数:14 | 小号003号)

    @RoCn 求分享

  9. 2016-03-30 18:19 | RoCn ( 路人 | Rank:23 漏洞数:2 | 路人甲)

    @king7 我只是个业余找漏洞的,过不了试用期的,谢谢...

  10. 2016-03-30 18:58 | mango ( 核心白帽子 | Rank:2111 漏洞数:306 | 解决问题的第一步,是要承认问题的存在。)

    oauth2?

  11. 2016-03-30 19:24 | loli 认证白帽子 ( 普通白帽子 | Rank:649 漏洞数:59 | 每个男人心中都住着一个叫小红的88号技师。)

    这个牛逼

  12. 2016-03-30 20:12 | 邪少 ( 实习白帽子 | Rank:98 漏洞数:17 | 百里长苏)

    @RoCn 可是、。、、、、没看到漏洞详情

  13. 2016-03-30 20:26 | Xman ( 实习白帽子 | Rank:38 漏洞数:11 | However,it has no any egg usefull!)

    这个...确实6啊

  14. 2016-03-30 21:23 | Vern 认证白帽子 ( 普通白帽子 | Rank:731 漏洞数:105 | Keep It Simple, Stupid)

    牛逼 求思路

  15. 2016-03-30 22:12 | 表哥 ( 实习白帽子 | Rank:42 漏洞数:11 | 他依然帅气。)

    卧槽卧槽,之前搞到个非客户端的,但是当天下午就被补了。这来个客户端的有点6666。但是知乎找回密码需要手机号,不然就可以标题《以知乎四大男神为例了》

  16. 2016-03-31 04:52 | iebug ( 路人 | Rank:10 漏洞数:4 | 热爱技术)

    为什么我看不了洞?

  17. 2016-04-01 00:36 | 莱纳斯 ( 路人 | Rank:19 漏洞数:2 | 花式钓鱼,Xss learner)

    牛逼牛逼

  18. 2016-04-01 17:37 | mango ( 核心白帽子 | Rank:2111 漏洞数:306 | 解决问题的第一步,是要承认问题的存在。)

    果然是这个。。

  19. 2016-04-01 22:56 | mohack ( 路人 | Rank:4 漏洞数:1 | 天上的白云真白啊/真的,很白很白/非常白/非...)

    哈哈哈,看到了

  20. 2016-04-29 22:42 | Xman ( 实习白帽子 | Rank:38 漏洞数:11 | However,it has no any egg usefull!)

    如何捕获手机客户端的https,证书认证怎么解决