Description
Spring Security OAuth, versions 2.3 prior to 2.3.4, and 2.2 prior to 2.2.3, and 2.1 prior to 2.1.3, and 2.0 prior to 2.0.16, and older unsupported versions could be susceptible to a privilege escalation under certain conditions. A malicious user or attacker can craft a request to the approval endpoint that can modify the previously saved authorization request and lead to a privilege escalation on the subsequent approval. This scenario can happen if the application is configured to use a custom approval endpoint that declares AuthorizationRequest as a controller method argument. This vulnerability exposes applications that meet all of the following requirements: Act in the role of an Authorization Server (e.g. @EnableAuthorizationServer) and use a custom Approval Endpoint that declares AuthorizationRequest as a controller method argument. This vulnerability does not expose applications that: Act in the role of an Authorization Server and use the default Approval Endpoint, act in the role of a Resource Server only (e.g. @EnableResourceServer), act in the role of a Client only (e.g. @EnableOAuthClient).
Remediation
References
http://www.securityfocus.com/bid/105687
https://access.redhat.com/errata/RHSA-2019:2413
https://pivotal.io/security/cve-2018-15758
Related Vulnerabilities
CVE-2015-1840 Vulnerability in npm package jquery-ujs
CVE-2017-16821 Vulnerability in maven package org.b3log:symphony
CVE-2019-20921 Vulnerability in maven package org.webjars.bower:bootstrap-select
CVE-2019-1003030 Vulnerability in maven package org.jenkins-ci.plugins.workflow:workflow-cps
CVE-2021-43308 Vulnerability in npm package markdown-link-extractor