领先一步
VMware 提供培训和认证,助您加速进步。
了解更多Spring Security OAuth 的 2.3 版本(2.3.5 之前)、2.2 版本(2.2.4 之前)、2.1 版本(2.1.4 之前)和 2.0 版本(2.0.17 之前)以及更早的未受支持的版本可能容易受到开放重定向攻击,该攻击可能导致授权码泄露。恶意用户或攻击者可以通过授权码授予类型构造一个发送到授权端点的请求,并通过“redirect_uri”参数指定一个被操纵的重定向 URI。这可能导致授权服务器将资源所有者的用户代理重定向到攻击者控制的、包含泄露的授权码的 URI。
此漏洞暴露了满足以下所有要求的应用程序
此漏洞**不会**暴露以下应用程序
DefaultRedirectResolver 之外的另一个 RedirectResolver 实现受影响版本的用户应采取以下缓解措施
无需其他缓解步骤。
对于 Spring Boot 1.5.x 和 Spring IO Platform Cairo 的用户,强烈建议将 spring-security-oauth 版本覆盖到包含此 CVE 补丁的最新版本。要覆盖版本,您需要声明/设置属性 spring-security-oauth.version。
以下是 **Spring Boot 1.5.x** 用户的说明。
要使用 Maven 覆盖属性,请在 pom 的 `
要使用 Gradle 覆盖属性,请在您的 build.gradle 脚本中配置该值
ext['spring-security-oauth.version'] = '2.0.17.RELEASE'
或者在 gradle.properties 中
spring-security-oauth.version=2.0.17.RELEASE
注意: 对于 Spring IO Platform Cairo 的用户,相同的说明也适用。但是,需要指定的版本是 2.2.4.RELEASE。
此问题由 dotloop 的 Dirk Koehler(github.com/phrinx)发现并负责任地报告。特别感谢 NTT、NTT Comware、NTT DATA Corporation 的 Macchinetta 框架开发团队帮助验证解决方案并识别额外的漏洞利用方式。
https://github.com/spring-projects/spring-security-oauth/blob/master/tests/annotation/approval/src/main/java/demo/Application.java#L36'>@EnableAuthorizationServer</a></code> 的示例配置
历史
2019-02-21:首次发布漏洞报告。
报告漏洞要报告 Spring 组合项目中存在的安全漏洞,请参阅安全策略