Cyber Resilience

CVE-2026-27840

Zitadel 2.31.0 – 2.71.19

Published
26 February 2026
Modified
05 March 2026
Patch / advisory
CVSS Score v3.1 4.3
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N
EPSS Score 0.0014 4th percentile
Risk Priority 34 floored blend · peak EPSS

Summary

CVE-2026-27840 is a medium-severity Authentication Bypass by Assumed-Immutable Data (CWE-302) vulnerability in Zitadel Zitadel. Its CVSS base score is 4.3 (Medium).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 4th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to IA-2 (Identification and Authentication (Organizational Users)) and AC-3 (Access Enforcement) — see the control section below for these in your framework.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

ZITADEL is an open source identity management platform. Starting in version 2.31.0 and prior to versions 3.4.7 and 4.11.0, opaque OIDC access tokens in the v2 format truncated to 80 characters are still considered valid. Zitadel uses a symmetric AES…

more

encryption for opaque tokens. The cleartext payload is a concatenation of a couple of identifiers, such as a token ID and user ID. Internally Zitadel has 2 different versions of token payloads. v1 tokens are no longer created, but are still verified as to not invalidate existing session after upgrade. The cleartext payload has a format of `<token_id>:<user_id>`. v2 tokens distinguished further where the `token_id` is of the format `v2_<oidc_session_id>-at_<access_token_id>`. V1 token authZ/N session data is retrieved from the database using the (simple) `token_id` value and `user_id` value. The `user_id` (called `subject` in some parts of our code) was used as being the trusted user ID. V2 token authZ/N session data is retrieved from the database using the `oidc_session_id` and `access_token_id` and in this case the `user_id` from the token is ignored and taken from the session data in the database. By truncating the token to 80 chars, the user_id is now missing from the cleartext of the v2 token. The back-end still accepts this for above reasons. This issue is not considered exploitable, but may look awkward when reproduced. The patch in versions 4.11.0 and 3.4.7 resolves the issue by verifying the `user_id` from the token against the session data from the database. No known workarounds are available.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
T1134 Access Token Manipulation Stealth
Adversaries may modify access tokens to operate under a different user or system security context to perform actions and bypass access controls.
T1528 Steal Application Access Token Credential Access
Adversaries can steal application access tokens as a means of acquiring credentials to access remote systems and resources.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2026-27945Same product: Zitadel Zitadel
CVE-2026-44671Same product: Zitadel Zitadel
CVE-2025-67494Same product: Zitadel Zitadel
CVE-2025-27507Same product: Zitadel Zitadel
CVE-2024-49757Same product: Zitadel Zitadel
CVE-2025-64717Same product: Zitadel Zitadel
CVE-2026-29193Same product: Zitadel Zitadel
CVE-2026-32130Same product: Zitadel Zitadel
CVE-2026-27946Same product: Zitadel Zitadel
CVE-2024-41953Same product: Zitadel Zitadel

Affected Assets

zitadel
zitadel
2.31.0 — 2.71.19 · 3.0.0 — 3.4.7 · 4.0.0 — 4.11.0

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)

Validate
Prove the fix (OWASP ASVS)
  • V7.2.4

Mitigating Controls (NIST 800-53 r5) AI

Mandates proper unique identification and authentication of users, precluding reliance on attacker-controlled immutable assumptions.

Requires server-side enforcement of authorizations instead of trusting client-supplied mutable data for authentication decisions.

Mandates proper identification and authentication for non-organizational users, precluding reliance on attacker-controlled immutable assumptions.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.AA-03 mostly match
prevents

Strong authentication mechanisms directly avoid reliance on attacker-controlled immutable data.

PR.AA-04 mostly match
prevents

Protecting and verifying identity assertions prevents tampering with data assumed immutable during auth.

PR.AA-05 partial match
prevents

Least-privilege authorization policies reduce impact of bypassed authentication but do not address the root flaw.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing can discover and block authentication bypasses that rely on mutable data.

degrades

Access-control policy can mandate validation of all identity data, reducing reliance on assumed-immutable fields.

degrades

Identity-management processes can require verification of mutable attributes, mitigating the root cause.

degrades

Proper management of authentication information prevents use of client-controlled tokens or cookies as sole proof of identity.

mitigates

Access-rights reviews can detect and revoke rights granted via tampered immutable data.

prevents

Secure SDLC practices include threat modeling and input-validation requirements that catch assumed-immutable data flaws.

References