Answer in brief
CVE-2026-40575 records a Critical severity (CVSS 9.1) vulnerability in OAuth2 Proxy 7.15.2 through 7.15.4 Authentication Bypass via X-Forwarded-Uri Under the Default Trusted Proxy Set. The current sources do not mark it as known exploited. The current feed maps oauth2-proxy/oauth2-proxy (generic), oauth2-proxy/oauth2-proxy (generic), github.com/oauth2-proxy/oauth2-proxy (go), github.com/oauth2-proxy/oauth2-proxy/v7 (go). Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
CVSS is 9.1. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps oauth2-proxy/oauth2-proxy (generic), oauth2-proxy/oauth2-proxy (generic), github.com/oauth2-proxy/oauth2-proxy (go), github.com/oauth2-proxy/oauth2-proxy/v7 (go). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| oauth2-proxy/oauth2-proxygeneric | >= 7.5.0, < 7.15.2 | Not reported |
| oauth2-proxy/oauth2-proxygeneric | 7.15.2 | Not reported |
| github.com/oauth2-proxy/oauth2-proxygo | >=0 | Not reported |
| github.com/oauth2-proxy/oauth2-proxy/v7go | >=7.5.0 <7.15.2 | 7.15.2 |
Published upstream
Aug 24, 2026
Evidence: source:cvelist:source_dates:source-dates:recordSource modified
Aug 25, 2026
Evidence: source:cvelist:source_dates:source-dates:recordFirst seen by HOL
Jul 15, 2026
OAuth2 Proxy honours a client-supplied X-Forwarded-Uri header when deciding whether a request may skip authentication, because the guard added for CVE-2026-40575 is inert in the default reverse-proxy configuration. GetRequestURI in pkg/requests/util/util.go prefers that header over the real request URI whenever CanTrustForwardedHeaders returns true, and isAllowedPath in oauthproxy.go matches the skip_auth_routes and skip_auth_regex allow list against the resulting path. CanTrustForwardedHeaders in pkg/apis/middleware/scope.go grants that trust when the caller's address is in the trusted proxy set, and buildTrustedProxyNetSet falls back to defaultTrustedProxyIPs, which is 0.0.0.0/0 and ::/0, whenever reverse proxy mode is enabled without trusted_proxy_ip configured. Every client is therefore treated as a trusted proxy. An unauthenticated attacker can request a protected upstream path while setting X-Forwarded-Uri to a value matching an allow-listed route, so the skip-auth decision is made against the spoofed value while the upstream receives the protected path unchanged.
Quoted source text, attributed separately from HOL analysis.