技术特征:
1.一种oauth2.0开放式重定向漏洞的检测方法,其特征在于,所述方法包括以下步骤:步骤1,对于oauth2.0授权的第三方的api接口中的uri字段进行检测,发现并记录其中涉及到的所有回调参数;步骤2,基于预先定义的回调参数表,对步骤1中获取的所述所有回调参数的类型进行匹配,并基于所述匹配的结果对所述回调参数的参数值进行替换;步骤3,模拟用户请求,以调用实现过参数替换的所述api接口,并基于所述调用的响应结果实现对所述api接口中漏洞的检测。2.根据权利要求1中所述的一种oauth2.0开放式重定向漏洞的检测方法,其特征在于:所述所有回调参数至少包括redirect_uri参数和destination参数。3.根据权利要求2中所述的一种oauth2.0开放式重定向漏洞的检测方法,其特征在于:所述预先定义的回调参数表中,不仅包括预先定义的回调参数类型,还包括api接口中相关参数与回调参数类型的匹配关系、所述回调参数类型和替换参数值之间的匹配关系。4.根据权利要求3中所述的一种oauth2.0开放式重定向漏洞的检测方法,其特征在于:所述步骤2中,基于所述回调参数表中所述回调参数类型和替换参数值之间的匹配关系,对所述回调参数的参数值进行替换。5.根据权利要求4中所述的一种oauth2.0开放式重定向漏洞的检测方法,其特征在于:生成所述用户请求的用户为平台的授权用户,并允许基于oauth2.0实现对于授权第三方的接入;所述用户请求对应于所述授权第三方的、实现过参数替换的所述api接口的调用。6.根据权利要求5中所述的一种oauth2.0开放式重定向漏洞的检测方法,其特征在于:所述平台为基于oauth2.0实现第三方应用授权接入的平台,其中包括oauth2.0服务器。7.根据权利要求6中所述的一种oauth2.0开放式重定向漏洞的检测方法,其特征在于:当所述调用的响应结果与替换所述参数值之前的响应结果不一致,则判定所述参数值发生了替换,所述api接口中存在漏洞。8.根据权利要求7中所述的一种oauth2.0开放式重定向漏洞的检测方法,其特征在于:所述用户请求中授权码的获取方式为:基于arp攻击拦截http流量,并从所述http流量中解析明文授权码;或者,伪造http referer以获取所述授权码;或者,基于burpsuite截取http流量,以获取未使用过的授权码。9.一种oauth2.0开放式重定向漏洞的检测系统,其特征在于:所述系统采用如权利要求1-8任意一项中所述的一种oauth2.0开放式重定向漏洞的检测方法实现。
技术总结
一种OAuth2.0开放式重定向漏洞的检测方法及系统,其特征在于,所述方法包括以下步骤:步骤1,对于OAuth2.0授权的第三方的API接口中的URI字段进行检测,发现并记录其中涉及到的所有回调参数;步骤2,基于预先定义的回调参数表,对步骤1中获取的所述所有回调参数的类型进行匹配,并基于所述匹配的结果对所述回调参数的参数值进行替换;步骤3,模拟用户请求,以调用实现过参数替换的所述API接口,并基于所述调用的响应结果实现对所述API接口中漏洞的检测。本发明方法简单、效果良好,能够从根本上检测开放式重定向过程中URI参数被修改的问题,从而实现对于漏洞的补救和预防。从而实现对于漏洞的补救和预防。从而实现对于漏洞的补救和预防。
技术研发人员:王磊 李桐 刘扬 周小明 雷振江 李广翱 杨超
受保护的技术使用者:国网辽宁省电力有限公司 国家电网有限公司
技术研发日:2022.06.22
技术公布日:2022/10/13