CVE-2026-97848
MediumCVSS 6.5Exploitation Probability (EPSS)
Low risk17th percentile - higher than 17% of all known CVEs
Summary
A flaw was found in Keycloak's token sanitization logic. When a protocol mapper emits structured claims using the JSON type, the check removing unauthorized role mappings only recognizes standard Java maps and fails to detect Jackson-based JSON objects. This allows an attacker to inject forged client roles into security tokens.
Risk Assessment
An attacker could gain unauthorized access to protected resources by injecting forged roles into tokens. This may lead to privilege escalation in applications trusting Keycloak tokens.
Recommendation
Update Keycloak to a version containing the fix. Review protocol mapper configurations emitting structured JSON claims and restrict their use to necessary cases.
Other vulnerabilities in Keycloak
See all- CVE-2026-19607Medium
A flaw was found in the first-broker-login flow of the keycloak-services component. It allows an attacker to register a matching username on an external identity provider, causing a collision in Keycloak and locking out the legitimate user.
- CVE-2026-17526High
Keycloak is an open-source identity and access management solution. A vulnerability was discovered where a user with the impersonation role can impersonate a realm administrator, gaining full administrative control over the realm, including the ability to manage users, clients, and roles.
- CVE-2026-79651High
A flaw was found in the theme localization endpoints of the keycloak-services component, which is the core service responsible for authentication flows and theme management in Keycloak. The issue occurs because the system accepts arbitrary locale tags from unauthenticated requests and stores them in a permanent in-memory cache without limits. An attacker can exploit this by sending a large number of unique locale tags, eventually causing the server to run out of memory and crash.
- CVE-2026-18212High
A flaw was found in the SAML Redirect Binding implementation of Keycloak where the custom DEFLATE compression and decompression helpers fail to release native zlib memory after use. An unauthenticated attacker can exploit this by sending repeated malformed SAML requests, leading to native memory exhaustion and a denial of service.
- CVE-2017-12159High
It was found that the cookie used for CSRF prevention in Keycloak was not unique to each session. An attacker could use this flaw to gain access to an authenticated user session, leading to possible information disclosure or further attacks.
- CVE-2026-120984Critical
A flaw was found in the Keycloak server's client management component. When a client is created or imported with authorization services enabled, the system fails to properly clear an internal session attribute used during setup. An authenticated attacker with client management permissions can bypass security controls and upload a malicious JavaScript policy that executes on the server.
- CVE-2026-117691Critical
A flaw was found in the SAML HTTP-Redirect binding implementation of Keycloak. The issue occurs because the server processes percent-encoded parameter names (like %53AMLResponse) while the signature verification logic only checks literal parameter names. An attacker can use this discrepancy to provide a crafted, unsigned SAML message that the server processes instead of a legitimately signed one, leading to full account takeover of federated users.
- CVE-2026-9797Medium
A flaw was found in Keycloak's administrative services (org.keycloak.services.resources.admin). A highly privileged attacker authenticated with the 'manage-clients' role could manipulate client JWKS, swap client authenticator types and reset secrets, or download legitimate signing keys. Successful exploitation allows obtaining a token with 'realm-admin' role assignments, leading to privilege escalation.
- CVE-2026-97367Medium
A flaw was found in the Keycloak Account REST API where session identification is handled incorrectly. A malicious client owner can manipulate their own security tokens to point to another user's active session. This allows access and modification of the victim's account information, potentially leading to full account takeover by changing the recovery email and resetting the password.
- CVE-2026-96547Medium
A flaw was found in the Dynamic Client Registration component of Keycloak, which does not properly restrict which claim names can be used when setting up new clients. An attacker with valid registration credentials could create a client that incorrectly maps standard user profile information to sensitive security roles.
Original NVD description (English source)
A flaw was found in the token sanitization logic of Keycloak, an open source identity and access management solution. The issue occurs when a protocol mapper is configured to emit structured claims using the JSON type. The security check designed to remove unauthorized role mappings only looks for standard Java maps and fails to recognize Jackson based JSON objects. This allows an attacker to inject forged client roles into security tokens, which could lead to unauthorized access to protected resources.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

