Description
ZITADEL is an open source identity management platform. Prior to 3.4.12 and 4.15.2, ZITADEL's OAuth2 and OIDC CodeExchange, RefreshToken, and device token flows fail to verify that the requesting client matches the client that initiated the authorization flow, allowing intercepted grants or refresh tokens to be exchanged under a different client. This issue is fixed in versions 3.4.12 and 4.15.2.
Published: 2026-07-10
Score: 7.4 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

ZITADEL is an open source identity management platform. Prior to versions 3.4.12 and 4.15.2, its OAuth2 and OIDC code exchange, refresh token, and device token flows do not verify that the client making the grant request is the same client that initiated the authorization flow, allowing an attacker who obtains an intercepted authorization code or refresh token to redeem it under a different client. This misbinding enables the attacker to gain unauthorized access to protected resources. The flaw is fixed in the released versions 3.4.12 and 4.15.2.

Affected Systems

The vulnerability affects the open source Zitadel identity platform from the vendor Zitadel. Any instance running a version older than 3.4.12 for the 3.x branch or older than 4.15.2 for the 4.x branch is susceptible. Upstream releases 3.4.12 and 4.15.2 contain the correct client_id binding check.

Risk and Exploitability

The CVSS score of 7.4 indicates a high severity, while the EPSS score of < 1% suggests a low but non‑zero likelihood of exploitation; the vulnerability is not listed in the CISA KEV catalog. An attacker would need to capture an authorization code or refresh token in transit or compromise a client to exploit the flaw; once the token is in hand, it can be exchanged under a client that did not initiate the flow, granting access to protected resources. The primary vulnerability is a missing client_id association during token exchange, a classic example of CWE‑287 (Improper Authentication) and CWE‑863 (Missing Authorization in an Authenticating Service).

Generated by OpenCVE AI on August 1, 2026 at 12:26 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Zitadel to version 3.4.12 or 4.15.2, ensuring the client_id binding check is active.
  • Verify that client registration enforces matching client_id during token exchange; adjust server configuration if necessary.
  • Use TLS everywhere and consider network isolation to reduce the chance of token interception; monitor logs for unusual token redemption attempts.

Generated by OpenCVE AI on August 1, 2026 at 12:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-xqxv-4jc2-x56x ZITADEL: Missing client_id binding in OIDC authorization code exchange and refresh token flows (RFC 6749 Section 4.1.3 violation)
History

Fri, 10 Jul 2026 19:45:00 +0000

Type Values Removed Values Added
First Time appeared Zitadel
Zitadel zitadel
Vendors & Products Zitadel
Zitadel zitadel

Fri, 10 Jul 2026 19:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Fri, 10 Jul 2026 18:00:00 +0000

Type Values Removed Values Added
Description ZITADEL is an open source identity management platform. Prior to 3.4.12 and 4.15.2, ZITADEL's OAuth2 and OIDC CodeExchange, RefreshToken, and device token flows fail to verify that the requesting client matches the client that initiated the authorization flow, allowing intercepted grants or refresh tokens to be exchanged under a different client. This issue is fixed in versions 3.4.12 and 4.15.2.
Title ZITADEL: Missing client_id binding in OIDC authorization code exchange and refresh token flows (RFC 6749 Section 4.1.3 violation)
Weaknesses CWE-287
CWE-863
References
Metrics cvssV3_1

{'score': 7.4, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-10T18:38:10.755Z

Reserved: 2026-06-17T00:05:03.778Z

Link: CVE-2026-55672

cve-icon Vulnrichment

Updated: 2026-07-10T18:38:07.881Z

cve-icon NVD

Status : Deferred

Published: 2026-07-10T18:16:23.637

Modified: 2026-07-10T19:17:25.983

Link: CVE-2026-55672

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-01T12:30:04Z

Weaknesses