CVE-2023-6787 Keycloak: session hijacking via re-authentication
Attackers can hijack active Keycloak sessions and take over accounts by exploiting a flaw in the re-authentication mechanism when users cancel login prompts.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2023-6787?
CVE-2023-6787 is a medium-severity authentication bypass vulnerability in Redhat Build of Keycloak, published on 25 Apr 2024. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.
Official description
A flaw was found in Keycloak that occurs from an error in the re-authentication mechanism within org.keycloak.authentication. This flaw allows hijacking an active Keycloak session by triggering a new authentication process with the query parameter "prompt=login," prompting the user to re-enter their credentials. If the user cancels this re-authentication by selecting "Restart login," an account takeover may occur, as the new session, with a different SUB, will possess the same SID as the previous session.
Weakness: CWE-287
Which versions are affected by CVE-2023-6787?
4 open source packages ship an affected version, including org.keycloak:keycloak-services. It affects 2 products.
| Package | Affected | Fixed in |
|---|---|---|
org.keycloak:keycloak-services Maven | All versions | 22.0.10 |
org.keycloak:keycloak-services Maven | All versions | 22.0.10 |
org.keycloak:keycloak-services Maven | From 23.0.0 | 24.0.3 |
org.keycloak:keycloak-services Maven | From 23.0.0 | 24.0.3 |
Products include Redhat Build of Keycloak, Redhat Keycloak.
How do I fix CVE-2023-6787?
Upgrade org.keycloak:keycloak-services to a fixed version for your release line: 22.0.10 or 24.0.3.
Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.
Is CVE-2023-6787 being exploited?
There is no known exploitation of CVE-2023-6787 in the wild and no public exploit code.
Other vulnerabilities in Redhat Build of Keycloak
- CVE-2026-15572 Keycloak-services: keycloak-services: dcr protocol mapper type-swap policy bypass allows privilege escalation
- CVE-2026-3047 Keycloak SAML Broken has Authentication Bypass by Primary Weakness
- CVE-2026-15573 Keycloak-services: keycloak-services: authorization bypass via unnormalized uri matching in pathmatcher
- CVE-2026-16102 Keycloak-services: keycloak-services: default dcr policy allows role forgery via user property mappers
- CVE-2026-1609 Org.keycloak/keycloak-quarkus-server: keycloak: unauthorized access via jwt authorization grant with disabled users
Sources
Also known as GHSA-c9h6-v78w-52wj.