Keycloak security

Keycloak CVEs, release by release

Every Keycloak release fixes security issues, and a CVE score rarely tells you whether your deployment is exposed. For each release, we explain the critical and high CVEs in a few lines: who is affected, and how to mitigate until you upgrade.

Keycloak 26.8.1

Released Oct 13, 2026

27 CVEs

Release announcement

All HIGH CVEs from this release come from dependencies, exposure to those CVEs is unlikely.

14 medium and 4 low CVEs

Keycloak 26.8.0

Released Oct 1, 2026

6 CVEs

Release announcement

No major CVE in this release.

6 medium CVEs

Keycloak 26.7.5

Released Sep 30, 2026

14 CVEs

Release announcement

The four higher-rated CVEs come from Keycloak dependencies, so the score does not reflect Keycloak's actual exposure. Two of them would need custom code to become vulnerable, and the other two only impact deployments running in FIPS mode.

  • Critical9.1

    By default, Keycloak does not pass a user-controlled locale or template name to FreeMarker template loading, but a custom extension could. In that case, an attacker could access other files reachable by FreeMarker's template loader.

  • High8.7
    bc-fips

    If you run Keycloak in FIPS mode, an out-of-memory issue can be caused under heavy load when Java finalizers can't keep up with objects being created.

  • High8.7
    bc-fips

    If you run Keycloak in FIPS mode, on Intel hosts where the CPU's random-number instructions keep failing, the crypto library retries forever and can hang a thread indefinitely.

  • High8.6
    owasp-java-html-sanitizer

    The OWASP Java HTML sanitizer is vulnerable to XSS if HtmlPolicyBuilder allows noscript and style tags with allowTextIn inside the style tag. This does not happen in Keycloak's own sanitizer policies but could happen in some custom extensions.

8 medium and 2 low CVEs

Keycloak 26.7.4

Released Sep 16, 2026

6 CVEs

Release announcement
  • High8.1

    The policy enforcer that protects applications by matching incoming web requests against defined security policies failed to correctly handle web addresses that contain special encoded characters. An authenticated user could trick the enforcer into applying a less restrictive security policy to gain unauthorized access to some endpoints.

  • High7.5

    A helper in the SAML Redirect Binding implementation does not release native memory after use. Sending repeated malformed SAML requests could lead to native memory exhaustion and a denial of service.

  • High7.5

    The theme localization endpoints accept arbitrary locale tags in requests and store them permanently in memory without limits. Sending a sufficient number of tags could cause the service to run out of memory and crash.

  • High7.2

    A user with the impersonation role can impersonate a realm administrator, allowing them to gain full administrative control over the realm, including the ability to manage users, clients, and roles.

  • Unrated

    When using MySQL or MariaDB as the database in stateless mode, the replay protection mechanism for single-use security artifacts fails to detect reuse due to a row-count semantics mismatch between the database driver's default configuration and Keycloak's application logic. An attacker who intercepts one of these short-lived artifacts can replay it to obtain unauthorized access.

1 medium CVE

Keycloak 26.7.3

Released Aug 31, 2026

20 CVEs

Release announcement

The release contained only one High CVE, coming from a dependency which didn't impact instances running in production: it was not packaged in Keycloak, only used for integration tests.

  • High8.8
    api-ldap-client-api

    This LDAP client is only used by Keycloak's integration tests and isn't packaged in Keycloak, so instances running in production aren't affected.

18 medium and 1 low CVEs

Keycloak 26.7.2

Released Aug 19, 2026

8 CVEs

Release announcement

This release contains one CRITICAL CVE and most deployments are affected. Read the detailed explanation for mitigation and upgrade your Keycloak deployment.

  • Critical9.1

    If the Forgot password setting is enabled, an unauthenticated attacker could force a password reset without clicking the required email verification link, and get access to any user account by setting new credentials.

    Workaround

    Disable the Forgot password flow for all users while you upgrade your Keycloak version.

  • High7.3

    If you use identity brokering and the legacy client-initiated account-linking endpoint, an attacker could use a malicious OIDC client and trick a user into authenticating to connect the victim's account to an external identity they control. The attacker could then log in as the victim.

    If you use this legacy endpoint, check the migration guide: the fix comes with a breaking change.

6 medium CVEs
Managed Keycloak, Simplified by Cloud-IAM

Focus on your business, we handle the Keycloak

Since 2018, Cloud-IAM has been simplifying Keycloak management for 20M+ users.
Ready to simplify yours?