Keycloak-services: keycloak-services: client manager can substitute sessionless token principal via hardcoded-claim mappers to obtain realm administrator authority
Products / packages Red Hat build of Keycloak 26.4 · Red Hat build of Keycloak 26.4.17 · Red Hat build of Keycloak 26.6 · 2 more
Published
Severity and exploitation
KEV coverage does not rule out exploitation.
Assessment vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:LSeverity
high7.1CVSS measures technical severity, not the likelihood of an attack.
Known exploitation
Not listed in the checked CISA KEV catalog
Absence from CISA KEV does not rule out attacks.
Public exploit
Not established by this record
Missing evidence does not mean no public exploit exists.
Remediation
Source guidance available
Review the recorded instructions. Guidance may be a workaround rather than a fixed version.
What this means
A flaw in Keycloak's protocol mapper and identity resolution components allows an attacker with limited client management permissions to impersonate a realm administrator. The issue occurs when a client manager uses hardcoded-claim mappers to override identity claims in sessionless service-account tokens. Affected versions are not clearly specified.
Summarized by @cf/meta/llama-3.3-70b-instruct-fp8-fast. Verify details against the original sources.Attack conditions
No attack-condition excerpt has been identified here. Review the full source description and references for authentication, network access, and configuration requirements.
Review supporting sources →Affected versions
Check the exact model, release, and any platform requirements against your installation.
Red Hat · redhat
Red Hat build of Keycloak 26.4
1 range
Red Hat · redhat
Red Hat build of Keycloak 26.4
Compare with this publisher’s ranges. This does not inspect your installation.
unaffected
26.4.17-2 → before *
rpm versions
Other versions: affected
Product identifiers (CPE)
cpe:/a:redhat:build_keycloak:26.4::el9Red Hat · redhat
Red Hat build of Keycloak 26.4
1 range
Red Hat · redhat
Red Hat build of Keycloak 26.4
Compare with this publisher’s ranges. This does not inspect your installation.
unaffected
26.4-29 → before *
rpm versions
Other versions: affected
Product identifiers (CPE)
cpe:/a:redhat:build_keycloak:26.4::el9Red Hat · redhat
Red Hat build of Keycloak 26.4
1 range
Red Hat · redhat
Red Hat build of Keycloak 26.4
Compare with this publisher’s ranges. This does not inspect your installation.
unaffected
26.4-30 → before *
rpm versions
Other versions: affected
Product identifiers (CPE)
cpe:/a:redhat:build_keycloak:26.4::el9Red Hat · redhat
Red Hat build of Keycloak 26.4.17
0 ranges
Red Hat · redhat
Red Hat build of Keycloak 26.4.17
Compare with this publisher’s ranges. This does not inspect your installation.
Other versions: unaffected
Product identifiers (CPE)
cpe:/a:redhat:build_keycloak:26.4::el9Red Hat · redhat
Red Hat build of Keycloak 26.4.17
0 ranges
Red Hat · redhat
Red Hat build of Keycloak 26.4.17
Compare with this publisher’s ranges. This does not inspect your installation.
Other versions: unaffected
Product identifiers (CPE)
cpe:/a:redhat:build_keycloak:26.4::el9Red Hat · redhat
Red Hat build of Keycloak 26.6
1 range
Red Hat · redhat
Red Hat build of Keycloak 26.6
Compare with this publisher’s ranges. This does not inspect your installation.
unaffected
26.6.8-2 → before *
rpm versions
Other versions: affected
Product identifiers (CPE)
cpe:/a:redhat:build_keycloak:26.6::el9Red Hat · redhat
Red Hat build of Keycloak 26.6
1 range
Red Hat · redhat
Red Hat build of Keycloak 26.6
Compare with this publisher’s ranges. This does not inspect your installation.
unaffected
26.6-24 → before *
rpm versions
Other versions: affected
Product identifiers (CPE)
cpe:/a:redhat:build_keycloak:26.6::el9Red Hat · redhat
Red Hat build of Keycloak 26.6
1 range
Red Hat · redhat
Red Hat build of Keycloak 26.6
Compare with this publisher’s ranges. This does not inspect your installation.
unaffected
26.6-24 → before *
rpm versions
Other versions: affected
Product identifiers (CPE)
cpe:/a:redhat:build_keycloak:26.6::el9Red Hat · redhat
Red Hat build of Keycloak 26.6.8
0 ranges
Red Hat · redhat
Red Hat build of Keycloak 26.6.8
Compare with this publisher’s ranges. This does not inspect your installation.
Other versions: unaffected
Product identifiers (CPE)
cpe:/a:redhat:build_keycloak:26.6::el9Red Hat · redhat
Red Hat build of Keycloak 26.6.8
0 ranges
Red Hat · redhat
Red Hat build of Keycloak 26.6.8
Compare with this publisher’s ranges. This does not inspect your installation.
Other versions: unaffected
Product identifiers (CPE)
cpe:/a:redhat:build_keycloak:26.6::el9Red Hat · redhat
Red Hat Single Sign-On 7
0 ranges
Red Hat · redhat
Red Hat Single Sign-On 7
Compare with this publisher’s ranges. This does not inspect your installation.
Other versions: unaffected
Product identifiers (CPE)
cpe:/a:redhat:red_hat_single_sign_on:7What to do
Compare your installed product and version with the affected versions above. A matching product name alone does not confirm exposure.
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)
cve.new guidance unless attributed to a publisher. This page does not inspect your installation.
Public exploit evidence
No public exploit reference is identified in the imported evidence. This is not a claim that no exploit exists.
Original source description
Read the full publisher 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.
References
6 sourcesInside the record
Evidence available
Describes the evidence in this view, not whether the product is safe.
Original records
CVE-2026-97847View the latest unmodified CVE JSON from the official source. It may be newer than this imported page.
cve.new JSON →Underlying weaknesses
The source’s classification of what caused the vulnerability.
Contributing organizations · 2
Assigning organization
Additional data publisher
Timeline
All times UTCAdvisory published
Publication date supplied by the source.
Source updated
Latest modification date supplied by the source.
Last imported by cve.new
Latest catalog import, not the date we first saw this advisory.
What changed
Follow changes- CVE · CVE-2026-97847
Observed 2026-11-09T17:34:56.958Z · upstream updated 2026-11-09T17:24:47.834Z
Prioritization updated
before
[]
after
[ { "source": "CISA-ADP", "type": "SSVC", "role": "CISA Coordinator", "timestamp": "2026-11-09T17:23:32.962876Z", "decisions": [ { "name": "Exploitation", "value": "none" }, { "name": "Automatable", "value": "no" }, { "name": "Technical Impact", "value": "total" } ] } ] - CVE · CVE-2026-97847
Observed 2026-11-06T20:06:10.497Z · upstream updated 2026-11-06T19:44:47.318Z
Remediation guidance changed
before
[ { "text": "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.", "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" } ]after
[ { "text": "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.\n\n--- CME Mitigation Guidance (2026-11-06) ---\nDisclaimer: 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.\n\nThe 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.\n\nHighest-impact CME: CME-1007 Application Configuration Drift Detection (IaC Enforcement) (medium)", "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" } ] - CVE · CVE-2026-97847
Observed 2026-11-06T18:03:44.939Z · upstream updated 2026-11-06T17:12:42.375Z
Product or version evidence changed
before
[ { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4", "platforms": [], "versions": [ { "version": "26.4-29", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4", "platforms": [], "versions": [ { "version": "26.4.17-2", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4", "platforms": [], "versions": [ { "version": "26.4-30", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.6.8", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.6::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.6.8", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.6::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat Single Sign-On 7", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:red_hat_single_sign_on:7" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" } ]after
[ { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4", "platforms": [], "versions": [ { "version": "26.4.17-2", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4", "platforms": [], "versions": [ { "version": "26.4-29", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4", "platforms": [], "versions": [ { "version": "26.4-30", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4.17", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4.17", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.6", "platforms": [], "versions": [ { "version": "26.6.8-2", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.6::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.6", "platforms": [], "versions": [ { "version": "26.6-24", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.6::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.6", "platforms": [], "versions": [ { "version": "26.6-24", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.6::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.6.8", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.6::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.6.8", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.6::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat Single Sign-On 7", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:red_hat_single_sign_on:7" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" } ]References changed
before
[ "https://access.redhat.com/errata/RHSA-2026:95760", "https://access.redhat.com/errata/RHSA-2026:95761", "https://access.redhat.com/security/cve/CVE-2026-97847", "https://bugzilla.redhat.com/show_bug.cgi?id=2540950" ]
after
[ "https://access.redhat.com/errata/RHSA-2026:95759", "https://access.redhat.com/errata/RHSA-2026:95760", "https://access.redhat.com/errata/RHSA-2026:95761", "https://access.redhat.com/errata/RHSA-2026:95762", "https://access.redhat.com/security/cve/CVE-2026-97847", "https://bugzilla.redhat.com/show_bug.cgi?id=2540950" ]
- CVE · CVE-2026-97847
Observed 2026-11-06T10:52:01.415Z · upstream updated 2026-11-06T10:24:02.833Z
Product or version evidence changed
before
[ { "vendor": "Red Hat", "name": "Red Hat Build of Keycloak", "platforms": [], "versions": [], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat Build of Keycloak", "platforms": [], "versions": [], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat Single Sign-On 7", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:red_hat_single_sign_on:7" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" } ]after
[ { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4", "platforms": [], "versions": [ { "version": "26.4-29", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4", "platforms": [], "versions": [ { "version": "26.4.17-2", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.4", "platforms": [], "versions": [ { "version": "26.4-30", "status": "unaffected", "lessThan": "*", "versionType": "rpm" } ], "defaultStatus": "affected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.4::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.6.8", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.6::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat build of Keycloak 26.6.8", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:build_keycloak:26.6::el9" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" }, { "vendor": "Red Hat", "name": "Red Hat Single Sign-On 7", "platforms": [], "versions": [], "defaultStatus": "unaffected", "cpes": [ "cpe:/a:redhat:red_hat_single_sign_on:7" ], "source": "redhat", "url": "https://www.cve.org/CVERecord?id=CVE-2026-97847" } ]References changed
before
[ "https://access.redhat.com/security/cve/CVE-2026-97847", "https://bugzilla.redhat.com/show_bug.cgi?id=2540950" ]
after
[ "https://access.redhat.com/errata/RHSA-2026:95760", "https://access.redhat.com/errata/RHSA-2026:95761", "https://access.redhat.com/security/cve/CVE-2026-97847", "https://bugzilla.redhat.com/show_bug.cgi?id=2540950" ]
Large field values are marked as truncated previews. Original source snapshots remain retained.
Showing up to 50 most recent observed changes.