ory/fosite · Security
Redirect URL matching ignores character casing
- GHSA ID
- GHSA-grfp-q2mm-hfp6
- CVE ID
- CVE-2020-15234
- Severity
- medium
- Published
- Updated
- CVSS
- 6.1 · CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:H/A:N
- CVSS v3
- 6.1 · CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:H/A:N
Description
Impact
Before version v0.34.1, the OAuth 2.0 Client's registered redirect URLs and the redirect URL provided at the OAuth2 Authorization Endpoint where compared using strings.ToLower while they should have been compared with a simple string match:
- Registering a client with allowed redirect URL
https://example.com/callback - Performing OAuth2 flow and requesting redirect URL
https://example.com/CALLBACK - Instead of an error (invalid redirect URL), the browser is redirected to
https://example.com/CALLBACKwith a potentially successful OAuth2 response, depending on the state of the overall OAuth2 flow (the user might still deny the request for example).
CWEs
- CWE-20 · Improper Input Validation
- CWE-178 · Improper Handling of Case Sensitivity
- CWE-601 · URL Redirection to Untrusted Site ('Open Redirect')