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

admin 2017年4月11日05:37:03评论485 views字数 206阅读0分41秒阅读模式
摘要

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

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

缺陷编号: WooYun-2016-190769

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

相关厂商: 知乎

漏洞作者: RoCn

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

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

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

危害等级: 高

自评Rank: 20

漏洞状态: 厂商已经确认

漏洞来源:www.wooyun.org ,如有疑问或需要帮助请联系

Tags标签: 敏感接口缺乏认证

21人收藏


漏洞详情

披露状态:

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:

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

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

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

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

修复方案:

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

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:18

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

厂商回复:

确认,谢谢反馈!

最新状态:

暂无


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):

登陆后才能进行评分


评价

  1. 2016-03-30 17:00 | king7 ( 普通白帽子 | Rank:1902 漏洞数:253 | 早知如此绊人心,何如当初莫相识。)

    1

    这?.......

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

    1

    @king7 这表哥。。

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

    1

    66666666666

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

    1

    这。。

  5. 2016-03-30 17:04 | king7 ( 普通白帽子 | Rank:1902 漏洞数:253 | 早知如此绊人心,何如当初莫相识。)

    1

    楼主直接留方式,发offer

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

    1

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

    1

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

  8. 2016-03-30 18:18 | 肖泽 ( 实习白帽子 | Rank:53 漏洞数:15 | ....)

    2

    @RoCn 求分享

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

    1

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

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

    1

    oauth2?

  11. 2016-03-30 19:24 | loli 知乎客户端登录任意用户账号 ( 普通白帽子 | Rank:649 漏洞数:59 | 每个男人心中都住着一个叫小红的88号技师。)

    1

    这个牛逼

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

    1

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

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

    1

    这个...确实6啊

  14. 2016-03-30 21:23 | Vern 知乎客户端登录任意用户账号 ( 普通白帽子 | Rank:748 漏洞数:108 | Keep It Simple, Stupid)

    1

    牛逼 求思路

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

    1

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

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

    1

    为什么我看不了洞?

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

    1

    牛逼牛逼

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

    1

    果然是这个。。

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

    1

    哈哈哈,看到了

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

    1

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

  21. 2016-05-14 18:25 | Acvrock ( 路人 | Rank:4 漏洞数:2 | Java 开发者)

    2

    这个之前新浪微博就有发警告了。尊敬的开发者: 您好: 新浪安全发现第三方应用的部分开发者直接使用返回uid值来作为的第三方应用身份凭证,导致指定任意授权第三方应用的帐号uid登陆第三方应用。 因为此uid值可以被攻击者代理拦截篡改其他用户的uid值,攻击者就可以直接控制受害人的第三方应用账户。 请开发人员一定要检验accesstoken和uid的一致性再进行授权。

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin