CVE-2025-54576: OAuth2-Proxy has authentication bypass in oauth2-proxy skip_auth_routes due to Query Parameter inclusion
Impact This vulnerability affects oauth2-proxy deployments using the skipauthroutes configuration option with regex patterns. The vulnerability allows attackers to bypass authentication by crafting URLs with query parameters that satisfy the configured regex patterns, potentially gaining unauthorized access to protected resources.
The issue stems from skipauthroutes matching against the full request URI (path + query parameters) instead of just the path as documented. This discrepancy enables authentication bypass attacks where attackers append malicious query parameters to access protected endpoints.
Example Attack:
Configuration: skipauthroutes = [ "^/foo/./bar$" ] Intended behavior: Allow /foo/something/bar Actual vulnerability: Also allows /foo/criticalendpoint?param=/bar
Deployments using skipauthroutes with regex patterns containing wildcards or broad matching patterns are most at risk, especially when backend services ignore unknown query parameters.
Patches A patch has been released with version v7.11.0.
Workarounds
Immediate mitigations:
1. Review regex patterns: Audit all skipauthroutes configurations for overly permissive patterns 2. Use precise patterns: Replace wildcard patterns with exact path matches where possible 3. Anchor patterns: Ensure regex patterns are properly anchored (start with ^ and end with $) 4. Path-only matching: Consider implementing custom validation that strips query parameters before regex matching
Example secure configuration:
toml Instead of: "^/public/." Use specific paths: "^/public/assets$", "^/public/health$" skipauthroutes = ["^/public/assets$", "^/public/health$", "^/api/status$"]
Other sources
OAuth2-Proxy is an open-source tool that can act as either a standalone reverse proxy or a middleware component integrated into existing reverse proxy or load balancer setups. In versions 7.10.0 and below, oauth2-proxy deployments are vulnerable when using the skipauthroutes configuration option with regex patterns. Attackers can bypass authentication by crafting URLs with query parameters that satisfy configured regex patterns, allowing unauthorized access to protected resources. The issue stems from skipauthroutes matching against the full request URI. Deployments using skipauthroutes with regex patterns containing wildcards or broad matching patterns are most at risk. This issue is fixed in version 7.11.0. Workarounds include: auditing all skipauthroutes configurations for overly permissive patterns, replacing wildcard patterns with exact path matches where possible, ensuring regex patterns are properly anchored (starting with ^ and ending with $), or implementing custom validation that strips query parameters before regex matching.
— MITRE
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2025-54576?
CVE-2025-54576 is classified as a high-severity vulnerability due to its potential for allowing authentication bypass.
How do I fix CVE-2025-54576?
To address CVE-2025-54576, upgrade your oauth2-proxy deployment to version 7.11.0 or later.
What software is affected by CVE-2025-54576?
CVE-2025-54576 affects oauth2-proxy versions up to 7.10.0 that utilize the skip_auth_routes configuration option.
Can CVE-2025-54576 be exploited remotely?
Yes, attackers can remotely exploit CVE-2025-54576 by crafting specific URLs that meet the regex patterns in the configuration.
Is authentication path traversal a concern with CVE-2025-54576?
Yes, CVE-2025-54576 introduces concerns of authentication path traversal due to its vulnerability exploitation mechanism.