CVE-2023-6291
The redirect_uri validation logic allows for bypassing explicitly allowed hosts that would otherwise be restricted
Impact
An issue was found in the redirect_uri validation logic that allows for a bypass of otherwise explicitly allowed hosts. The problem arises in the verifyRedirectUri method, which attempts to enforce rules on user-controllable input, but essentially causes a desynchronization in how Keycloak and browsers interpret URLs. Keycloak, for example, receives "[www%2ekeycloak%2eorg%2fapp%2f:y@example.com](https://www%2ekeycloak%2eorg%2fapp%2f:y@example.com/)" and thinks the authority to be keycloak.org when it is actually example.com. This happens because the validation logic is performed on a URL decoded version, which no longer represents the original input. ### Acknowledgements Karel Knibbe
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| maven | org.keycloak:keycloak-services | < 23.0.3 | 23.0.3 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Redhat | Keycloak | before 22.0.7 |
| Redhat | Single Sign-On | All versions Version 7.6 |
| Redhat | Openshift Container Platform | Versions 4.11, 4.12 |
| Redhat | Openshift Container Platform For Ibm Z | Versions 4.9, 4.10 |
| Redhat | Openshift Container Platform For Linuxone | Versions 4.9, 4.10 |
| Redhat | Openshift Container Platform For Power | Versions 4.9, 4.10 |
| Redhat | Migration Toolkit For Applications | Versions 6.0, 7.0 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://access.redhat.com/errata/RHSA-2023:7854
- https://access.redhat.com/errata/RHSA-2023:7855
- https://access.redhat.com/errata/RHSA-2023:7856
- https://access.redhat.com/errata/RHSA-2023:7857
- https://access.redhat.com/errata/RHSA-2023:7858
- https://access.redhat.com/errata/RHSA-2023:7860
- https://access.redhat.com/errata/RHSA-2023:7861
- https://access.redhat.com/errata/RHSA-2024:0798
- https://access.redhat.com/errata/RHSA-2024:0799
- https://access.redhat.com/errata/RHSA-2024:0800
- https://access.redhat.com/errata/RHSA-2024:0801
- https://access.redhat.com/errata/RHSA-2024:0804
- https://access.redhat.com/security/cve/CVE-2023-6291
- https://bugzilla.redhat.com/show_bug.cgi?id=2251407
- https://github.com/advisories/GHSA-mpwq-j3xf-7m5w
- https://github.com/keycloak/keycloak/security/advisories/GHSA-mpwq-j3xf-7m5w
- https://github.com/keycloak/keycloak/commit/b2e91105315ccf2c1df549b4f6c5948322cbfd1b
- https://nvd.nist.gov/vuln/detail/CVE-2023-6291