CVE-2026-97847
Keycloak-services: keycloak-services: client manager can substitute sessionless token principal via hardcoded-claim mappers to obtain realm administrator authority
- Published
- Updated
- Reserved
- Assigned by
- redhat
Description
A flaw was found in the protocol mapper and identity resolution components of Keycloak. The issue occurs when a client manager uses hardcoded-claim mappers to override identity claims in sessionless service-account tokens. Because these tokens lack a session ID, Keycloak may incorrectly resolve the token bearer as a different, highly privileged user based on the manipulated claims. This can allow an attacker with limited client management permissions to impersonate a realm administrator and gain full control over the realm.
Scores
| Scored by | CVSS | Score | Vector |
|---|---|---|---|
| redhatCNA (assigner) | 3.1 | High7.1 | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:L |
| NVDNVD · Awaiting Analysis | 3.1 | High7.1 | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:L |
- EPSS (exploitation in 30 days)
- 0.24% · top 84% of all CVEs (6 Nov 2026)
The list uses the assigner's score when there is one, then CISA's, then NVD's: High 7.1.
Weakness
Affected products
Red Hat · Red Hat build of Keycloak 26.4
- unaffected 26.4.17-2 – < *
Red Hat · Red Hat build of Keycloak 26.4
- unaffected 26.4-29 – < *
Red Hat · Red Hat build of Keycloak 26.4
- unaffected 26.4-30 – < *
Red Hat · Red Hat build of Keycloak 26.4.17
All versions: unaffected
Red Hat · Red Hat build of Keycloak 26.4.17
All versions: unaffected
Red Hat · Red Hat build of Keycloak 26.6
- unaffected 26.6.8-2 – < *
Red Hat · Red Hat build of Keycloak 26.6
- unaffected 26.6-24 – < *
Red Hat · Red Hat build of Keycloak 26.6
- unaffected 26.6-24 – < *
Red Hat · Red Hat build of Keycloak 26.6.8
All versions: unaffected
Red Hat · Red Hat build of Keycloak 26.6.8
All versions: unaffected
Red Hat · Red Hat Single Sign-On 7
All versions: unaffected
What to do
Workaround: Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base, or stability. --- CME Mitigation Guidance (2026-11-06) --- Disclaimer: The following mitigation solutions are provided as a courtesy, pending the application of an official patch. This content was generated utilizing AI tools in conjunction with data from https://cmetaxonomy.org. Customers are advised to independently evaluate and test these temporary mitigations within their own infrastructure. The highest-value action is to prevent identity resolution in Keycloak from reconstructing authenticated UserModel principals from post-mapper claims in sessionless service-account tokens: upgrade to Keycloak 26.4.17, 26.6.8 (or the fixed Rhbk/Keycloak Rhel/Keycloak Services builds), which validates the integrity of identity claims in sessionless service-account tokens and prevents resolving authenticated identities from manipulated post-mapper claims, closing all 2 injection vectors (hardcoded-claim protocol mapper manipulation, sessionless token principal substitution). Until patched, this is a concern on Keycloak deployments with OIDC clients configured for sessionless service-account tokens where delegated users hold manage-clients permissions, so Audit and restrict manage-clients permissions on OIDC clients, avoid using sessionless service-account tokens, and monitor client protocol mappers for unauthorized sub or preferred_username overrides. As a compensating measure, Detect unauthorized addition of hardcoded-claim protocol mappers to Keycloak OIDC client configurations by monitoring application configurations against a declared baseline via drift detection. These controls limit blast radius and contain exploitation, but they do not fix the underlying improper identity resolution defect — apply the upstream patch to fully remediate. Highest-impact CME: CME-1007 Application Configuration Drift Detection (IaC Enforcement) (medium)
References (6)
- RHSA-2026:95759 (opens in a new tab)vendor-advisoryx_refsource_REDHAT
- RHSA-2026:95760 (opens in a new tab)vendor-advisoryx_refsource_REDHAT
- RHSA-2026:95761 (opens in a new tab)vendor-advisoryx_refsource_REDHAT
- RHSA-2026:95762 (opens in a new tab)vendor-advisoryx_refsource_REDHAT
- https://access.redhat.com/security/cve/CVE-2026-97847 (opens in a new tab)vdb-entryx_refsource_REDHAT
- RHBZ#2540950 (opens in a new tab)issue-trackingx_refsource_REDHAT
Sources
The same CVE in the primary databases and aggregators, to check against.
- CVE.org record (opens in a new tab)
- CVE List JSON (GitHub) (opens in a new tab)
- NVD (opens in a new tab)
- FIRST EPSS (opens in a new tab)
- OSV.dev (opens in a new tab)
- GitHub Advisories (opens in a new tab)
- CIRCL Vulnerability-Lookup (opens in a new tab)
Badge for a README or a ticket
[](https://trackcve.app/cve/CVE-2026-97847)Record last updated .