🛡️ CVE-2020-11053 — oauth2-proxy

🟠 CVSS 8.0 — High ✅ No Known Exploit CWE-601 OSV
8.0
CVSS Score
0 Low4 Medium7 High9 Critical10

Description

Open Redirect in OAuth2 Proxy

Impact

As users can provide a redirect address for the proxy to send the authenticated user to at the end of the authentication flow. This is expected to be the original URL that the user was trying to access.

This redirect URL is checked within the proxy and validated before redirecting the user to prevent malicious actors providing redirects to potentially harmful sites.

However, by crafting a redirect URL with HTML encoded whitespace characters (eg. %0a, %0b,%09,%0d) the validation could be bypassed and allow a redirect to any URL provided.

Patches

@rootxharsh and @iamnoooob provided this patch as potential solution:

```

From 4b941f56eda310b5c4dc8080b7635a6bfabccad4 Mon Sep 17 00:00:00 2001

From: Harsh Jaiswal <[email protected]>

Date: Fri, 1 May 2020 20:38:31 +0530

Subject: [PATCH] Fixes redirect issue

oauthproxy.go | 3 ++-

1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/oauthproxy.go b/oauthproxy.go

index 1e9bb7c..f8beb4d 100644

--- a/oauthproxy.go

+++ b/oauthproxy.go

@@ -577,8 +577,9 @@ func validOptionalPort(port string) bool {

// IsValidRedirect checks whether the redirect URL is whitelisted

func (p *OAuthProxy) IsValidRedirect(redirect string) bool {

+ matched, _ := regexp.MatchString(^/\s+/|\\, redirect)

switch {

  • case strings.HasPrefix(redirect, "/") && !strings.HasPrefix(redirect, "//") && !strings.HasPrefix(redirect, "/\\"):

+ case strings.HasPrefix(redirect, "/") && !strings.HasPrefix(redirect, "//") && !matched:

return true

case strings.HasPrefix(redirect, "http://") || strings.HasPrefix(redirect, "https://"):

redirectURL, err := url.Parse(redirect)

--

2.17.1

```

This issue was also reported to us separately by @mik317 several hours later

The fix was implemented in [#xxx]() and released as version 5.1.1

How this vulnerability can be exploited

This issue can be reached over the network, attack complexity is low, an attacker needs no privileges on the target. A user must be tricked into taking some action. The scope is changed, meaning a successful attack can affect components beyond the vulnerable one. Rated impact: confidentiality low, integrity low, availability low.

Weakness class

CVE-2020-11053 is classified as CWE-601: Open Redirect. A redirect target is taken from user input, so a trusted link can send the visitor to an attacker's site.

Affected software

CVE-2020-11053 is recorded against 2 packages.

  • github.com/oauth2-proxy/oauth2-proxy
  • oauth2-proxy

Timeline and source

Published on 20 December 2021 and last revised on 13 March 2026. No public exploit is currently recorded for this entry. Record sourced from OSV.

References

github.com (Web)
nvd.nist.gov (Advisory)
github.com (Web)

Details

Severity HIGH
CVSS Score 8.0
CVSS Vector CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L
CWE CWE-601
Public Exploit ✅ No
Source OSV
Published 2021-12-20
Updated 2026-08-12
Modified 2026-03-13
Fix URL N/A

Affected Packages

Software From version Fixed in
github.com/oauth2-proxy/oauth2-proxy
oauth2-proxy

Similar Threats

Site Security Check

Is oauth2-proxy part of your stack?

CVE-2020-11053 is rated CVSS 8.0 High. BotEraser scans your installation against known CVE records and tells you whether this vulnerability applies to the versions you actually run.

Scan My Site Free →

No credit card required  ·  Results in minutes

ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.