CVE-2019-3778
Open Redirect in spring-security-oauth2
Spring Security OAuth, versions 2.3 prior to 2.3.5, and 2.2 prior to 2.2.4, and 2.1 prior to 2.1.4, and 2.0 prior to 2.0.17, and older unsupported versions could be susceptible to an open redirector attack that can leak an authorization code. A malicious user or attacker can craft a request to the authorization endpoint using the authorization code grant type, and specify a manipulated redirection URI via the "redirect_uri" parameter. This can cause the authorization server to redirect the resource owner user-agent to a URI under the control of the attacker with the leaked authorization code. This vulnerability exposes applications that meet all of the following requirements: Act in the role of an Authorization Server (e.g. @EnableAuthorizationServer) and uses the DefaultRedirectResolver in the AuthorizationEndpoint. This vulnerability does not expose applications that: Act in the role of an Authorization Server and uses a different RedirectResolver implementation other than DefaultRedirectResolver, act in the role of a Resource Server only (e.g. @EnableResourceServer), act in the role of a Client only (e.g. @EnableOAuthClient).
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- Low
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
6.5
Spring Security OAuth, versions 2.3 prior to 2.3.5, and 2.2 prior to 2.2.4, and 2.1 prior to 2.1.4, and 2.0 prior to 2.0.17, and older unsupported versions could be susceptible to an open redirector attack that can leak an authorization code. A malicious user or attacker can craft a request to the authorization endpoint using the authorization code grant type, and specify a manipulated redirection URI via the "redirect_uri" parameter. This can cause the authorization server to redirect the resource owner user-agent to a URI under the control of the attacker with the leaked authorization code. This vulnerability exposes applications that meet all of the following requirements: Act in the role of an Authorization Server (e.g. @EnableAuthorizationServer) and uses the DefaultRedirectResolver in the AuthorizationEndpoint. This vulnerability does not expose applications that: Act in the role of an Authorization Server and uses a different RedirectResolver implementation other than DefaultRedirectResolver, act in the role of a Resource Server only (e.g. @EnableResourceServer), act in the role of a Client only (e.g. @EnableOAuthClient).
- Record
CVE-2019-3778- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - CVSS 2.0
- 6.4 Medium
AV:N/AC:L/Au:N/C:P/I:P/A:N - Weakness
- CWE-601
- Updated
- 2026-11-02
CVE List No score
Open Redirect in spring-security-oauth2
Spring Security OAuth, versions 2.3 prior to 2.3.5, and 2.2 prior to 2.2.4, and 2.1 prior to 2.1.4, and 2.0 prior to 2.0.17, and older unsupported versions could be susceptible to an open redirector attack that can leak an authorization code. A malicious user or attacker can craft a request to the authorization endpoint using the authorization code grant type, and specify a manipulated redirection URI via the "redirect_uri" parameter. This can cause the authorization server to redirect the resource owner user-agent to a URI under the control of the attacker with the leaked authorization code. This vulnerability exposes applications that meet all of the following requirements: Act in the role of an Authorization Server (e.g. @EnableAuthorizationServer) and uses the DefaultRedirectResolver in the AuthorizationEndpoint. This vulnerability does not expose applications that: Act in the role of an Authorization Server and uses a different RedirectResolver implementation other than DefaultRedirectResolver, act in the role of a Resource Server only (e.g. @EnableResourceServer), act in the role of a Client only (e.g. @EnableOAuthClient).
- Record
CVE-2019-3778- Weakness
- CWE-601
- Updated
- 2026-11-02
EUVDEUVD-2019-0373 No score
Spring Security OAuth, versions 2.3 prior to 2.3.5, and 2.2 prior to 2.2.4, and 2.1 prior to 2.1.4, and 2.0 prior to 2.0.17, and older unsupported versions could be susceptible to an open redirector attack that can leak an authorization code. A malicious user or attacker can craft a request to the authorization endpoint using the authorization code grant type, and specify a manipulated redirection URI via the "redirect_uri" parameter. This can cause the authorization server to redirect the resource owner user-agent to a URI under the control of the attacker with the leaked authorization code. This vulnerability exposes applications that meet all of the following requirements: Act in the role of an Authorization Server (e.g. @EnableAuthorizationServer) and uses the DefaultRedirectResolver in the AuthorizationEndpoint. This vulnerability does not expose applications that: Act in the role of an Authorization Server and uses a different RedirectResolver implementation other than DefaultRedirectResolver, act in the role of a Resource Server only (e.g. @EnableResourceServer), act in the role of a Client only (e.g. @EnableOAuthClient).
- Record
EUVD-2019-0373- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-77rv-6vfw-x4gc
6.5
spring-security-oauth and spring-security-oauth2 Open Redirect vulnerability
Spring Security OAuth, versions 2.3 prior to 2.3.5, and 2.2 prior to 2.2.4, and 2.1 prior to 2.1.4, and 2.0 prior to 2.0.17, and older unsupported versions could be susceptible to an open redirector attack that can leak an authorization code.
A malicious user or attacker can craft a request to the authorization endpoint using the authorization code grant type, and specify a manipulated redirection URI via the "redirect_uri" parameter. This can cause the authorization server to redirect the resource owner user-agent to a URI under the control of the attacker with the leaked authorization code.
This vulnerability exposes applications that meet all of the following requirements: Act in the role of an Authorization Server (e.g. @EnableAuthorizationServer) and uses the DefaultRedirectResolver in the AuthorizationEndpoint.
This vulnerability does not expose applications that: Act in the role of an Authorization Server and uses a different RedirectResolver implementation other than DefaultRedirectResolver, act in the role of a Resource Server only (e.g. @EnableResourceServer), act in the role of a Client only (e.g. @EnableOAuthClient).
- Record
GHSA-77rv-6vfw-x4gc- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-601
- Updated
- 2026-11-02
OSV
6.5
Spring Security OAuth, versions 2.3 prior to 2.3.5, and 2.2 prior to 2.2.4, and 2.1 prior to 2.1.4, and 2.0 prior to 2.0.17, and older unsupported versions could be susceptible to an open redirector attack that can leak an authorization code. A malicious user or attacker can craft a request to the authorization endpoint using the authorization code grant type, and specify a manipulated redirection URI via the "redirect_uri" parameter. This can cause the authorization server to redirect the resource owner user-agent to a URI under the control of the attacker with the leaked authorization code. This vulnerability exposes applications that meet all of the following requirements: Act in the role of an Authorization Server (e.g. @EnableAuthorizationServer) and uses the DefaultRedirectResolver in the AuthorizationEndpoint. This vulnerability does not expose applications that: Act in the role of an Authorization Server and uses a different RedirectResolver implementation other than DefaultRedirectResolver, act in the role of a Resource Server only (e.g. @EnableResourceServer), act in the role of a Client only (e.g. @EnableOAuthClient).
- Record
CVE-2019-3778- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Updated
- 2026-11-02
OSVGHSA-77rv-6vfw-x4gc
6.5
spring-security-oauth and spring-security-oauth2 Open Redirect vulnerability
Spring Security OAuth, versions 2.3 prior to 2.3.5, and 2.2 prior to 2.2.4, and 2.1 prior to 2.1.4, and 2.0 prior to 2.0.17, and older unsupported versions could be susceptible to an open redirector attack that can leak an authorization code.
A malicious user or attacker can craft a request to the authorization endpoint using the authorization code grant type, and specify a manipulated redirection URI via the "redirect_uri" parameter. This can cause the authorization server to redirect the resource owner user-agent to a URI under the control of the attacker with the leaked authorization code.
This vulnerability exposes applications that meet all of the following requirements: Act in the role of an Authorization Server (e.g. @EnableAuthorizationServer) and uses the DefaultRedirectResolver in the AuthorizationEndpoint.
This vulnerability does not expose applications that: Act in the role of an Authorization Server and uses a different RedirectResolver implementation other than DefaultRedirectResolver, act in the role of a Resource Server only (e.g. @EnableResourceServer), act in the role of a Client only (e.g. @EnableOAuthClient).
- Record
GHSA-77rv-6vfw-x4gc- CVSS 3.1
- 6.5 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N - Weakness
- CWE-601
- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
org.springframework.security.oauth:spring-security-oauthMaven |
before 2.0.17.RELEASE | 2.0.17.RELEASE |
org.springframework.security.oauth:spring-security-oauth2Maven |
before 2.0.17.RELEASE | 2.0.17.RELEASE |
org.springframework.security.oauth:spring-security-oauthMaven |
2.1.0.RELEASE up to 2.1.4.RELEASE | 2.1.4.RELEASE |
org.springframework.security.oauth:spring-security-oauth2Maven |
2.1.0.RELEASE up to 2.1.4.RELEASE | 2.1.4.RELEASE |
org.springframework.security.oauth:spring-security-oauthMaven |
2.2.0.RELEASE up to 2.2.4.RELEASE | 2.2.4.RELEASE |
org.springframework.security.oauth:spring-security-oauth2Maven |
2.2.0.RELEASE up to 2.2.4.RELEASE | 2.2.4.RELEASE |
org.springframework.security.oauth:spring-security-oauthMaven |
2.3.0.RELEASE up to 2.3.5.RELEASE | 2.3.5.RELEASE |
org.springframework.security.oauth:spring-security-oauth2Maven |
2.3.0.RELEASE up to 2.3.5.RELEASE | 2.3.5.RELEASE |
org.springframework.security.oauth:spring-security-oauthMaven |
before 2.0.17.RELEASE, plus listed versions 1.0.0.RELEASE1.0.1.RELEASE1.0.2.RELEASE1.0.3.RELEASE1.0.4.RELEASE Show 18 moreShow less1.0.5.RELEASE2.0.0.RELEASE2.0.1.RELEASE2.0.10.RELEASE2.0.11.RELEASE2.0.12.RELEASE2.0.13.RELEASE2.0.14.RELEASE2.0.15.RELEASE2.0.16.RELEASE2.0.2.RELEASE2.0.3.RELEASE2.0.4.RELEASE2.0.5.RELEASE2.0.6.RELEASE2.0.7.RELEASE2.0.8.RELEASE2.0.9.RELEASE |
2.0.17.RELEASE |
org.springframework.security.oauth:spring-security-oauth2Maven |
before 2.0.17.RELEASE, plus listed versions 1.0.0.RELEASE1.0.1.RELEASE1.0.2.RELEASE1.0.3.RELEASE1.0.4.RELEASE Show 18 moreShow less1.0.5.RELEASE2.0.0.RELEASE2.0.1.RELEASE2.0.10.RELEASE2.0.11.RELEASE2.0.12.RELEASE2.0.13.RELEASE2.0.14.RELEASE2.0.15.RELEASE2.0.16.RELEASE2.0.2.RELEASE2.0.3.RELEASE2.0.4.RELEASE2.0.5.RELEASE2.0.6.RELEASE2.0.7.RELEASE2.0.8.RELEASE2.0.9.RELEASE |
2.0.17.RELEASE |
Show 6 moreShow less
| Package | Affected | Fixed |
|---|---|---|
org.springframework.security.oauth:spring-security-oauthMaven |
2.1.0.RELEASE up to 2.1.4.RELEASE, plus listed versions 2.1.1.RELEASE2.1.2.RELEASE2.1.3.RELEASE |
2.1.4.RELEASE |
org.springframework.security.oauth:spring-security-oauth2Maven |
2.1.0.RELEASE up to 2.1.4.RELEASE, plus listed versions 2.1.1.RELEASE2.1.2.RELEASE2.1.3.RELEASE |
2.1.4.RELEASE |
org.springframework.security.oauth:spring-security-oauthMaven |
2.2.0.RELEASE up to 2.2.4.RELEASE, plus listed versions 2.2.1.RELEASE2.2.2.RELEASE2.2.3.RELEASE |
2.2.4.RELEASE |
org.springframework.security.oauth:spring-security-oauth2Maven |
2.2.0.RELEASE up to 2.2.4.RELEASE, plus listed versions 2.2.1.RELEASE2.2.2.RELEASE2.2.3.RELEASE |
2.2.4.RELEASE |
org.springframework.security.oauth:spring-security-oauthMaven |
2.3.0.RELEASE up to 2.3.5.RELEASE, plus listed versions 2.3.1.RELEASE2.3.2.RELEASE2.3.3.RELEASE2.3.4.RELEASE |
2.3.5.RELEASE |
org.springframework.security.oauth:spring-security-oauth2Maven |
2.3.0.RELEASE up to 2.3.5.RELEASE, plus listed versions 2.3.1.RELEASE2.3.2.RELEASE2.3.3.RELEASE2.3.4.RELEASE |
2.3.5.RELEASE |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| Exploit-DB | Spring Security OAuth - Open Redirector | 2019-06-17 |
| PoC in GitHub | BBB-man/CVE-2019-3778-Spring-Security-OAuth-2.3-Open-Redirection | 2019-10-14 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases | EUVD | |
| first indexed | CVE List, Exploit-DB, GitHub Advisories, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2019-3778 is a medium vulnerability (CVSS 6.5) in Pivotal Software Spring Security Oauth, published March 7, 2019. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 16.6%, the 97th percentile. Fixed in org.springframework.security.oauth:spring-security-oauth 2.0.17.RELEASE.
References
securityfocus.com/bid/107153
oracle.com/security-alerts/cpujan2021.html
packetstormsecurity.com/files/153299/Spring-Security-OAuth-2.3-Open-Redirection.html
pivotal.io/security/cve-2019-3778
nvd.nist.gov/vuln/detail/CVE-2019-3778
web.archive.org/web/20200227084837/http://www.securityfocus.com/bid/107153
github.com/advisories/GHSA-77rv-6vfw-x4gc
github.com/spring-attic/spring-security-oauth