zoukankan      html  css  js  c++  java
  • [典型漏洞分享]结合YS业务分析使用oauth协议的风险

    结合YS业务分析oauth协议风险

    问题描述:

             YS 使用QQ互联的openAPI实现QQ登录YS的功能,使用该功能需要在腾讯注册登录时的回调地址,根据oauth协议,用户的code或者access_token将被发送到这个回调地址,而目前出于域名变动等各种因素考虑,目前使用的是通配符域名进行注册,这可能存在用户的access_token被盗取的风险。一旦获取用户QQaccess_token就可以通过openAPI获取此QQ的相关信息。关于oauth协议和开发细节请参考:

    http://wiki.connect.qq.com/

    测试步骤:

    1、  YS登录页选择“QQ登录”。

    2、  QQ登录页面输入用户名和密码进行认证。

    3、  使用burp拦截http://graph.qq.com/oauth2.0/authorize接口请求,将response_type参数的值从code改为token,将回调地址二级域名从test3.YS.com改为bbs.YS.com,最后再记住该请求中的client_id的值(即申请QQ登录时腾讯分配的appid),如下图所示:

    clip_image002

    4、  可以看到腾讯服务器返回了用户的access_token,并携带该token重定向到了YS BBS,如下图:

    clip_image004

    5、  此时,如果指定跳转的YS BBS URL存在XSS漏洞,当漏洞被触发时,JS代码可以读取URL参数值,那么通过BBS就可能大量获取用户access_token,从而导致用户信息泄漏。

    问题扩展:

             该漏洞的关键还是需要跳转的二级域名存在XSS漏洞,就目前YS业务来讲,BBS的安全没有专人负责,并且使用的是第三方站点框架,容易出现公开的漏洞,如果不及时升级维护就可能出现上述的攻击。

     

    解决建议:

     

             在向腾讯申请QQ登录权限时锁定二级域名

  • 相关阅读:
    监控Nginx
    监控Tomcat
    监控memcache
    监控Redis
    14-SpringCloud Bus
    13-SpringCloud Config
    12-SpringCloud GateWay
    11-SpringCloud Hystrix
    10-SpringCloud OpenFeign
    09-SpringCloud Ribbon
  • 原文地址:https://www.cnblogs.com/fishou/p/4187413.html
Copyright © 2011-2022 走看看