{"api_version":"1","generated_at":"2026-07-21T09:52:54+00:00","cve":"CVE-2026-55672","urls":{"html":"https://cve.report/CVE-2026-55672","api":"https://cve.report/api/cve/CVE-2026-55672.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-55672","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-55672"},"summary":{"title":"ZITADEL: Missing client_id binding in OIDC authorization code exchange and refresh token flows (RFC 6749 Section 4.1.3 violation)","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.","state":"PUBLISHED","assigner":"GitHub_M","published_at":"2026-07-10 18:16:23","updated_at":"2026-07-10 19:17:25"},"problem_types":["CWE-287","CWE-863","CWE-287 CWE-287: Improper Authentication","CWE-863 CWE-863: Incorrect Authorization"],"metrics":[{"version":"3.1","source":"security-advisories@github.com","type":"Secondary","score":"7.4","severity":"HIGH","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N","baseScore":7.4,"baseSeverity":"HIGH","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"NONE"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"7.4","severity":"HIGH","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N","data":{"attackComplexity":"HIGH","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":7.4,"baseSeverity":"HIGH","confidentialityImpact":"HIGH","integrityImpact":"HIGH","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N","version":"3.1"}}],"references":[{"url":"https://github.com/zitadel/zitadel/commit/562403079a98cf2059cdac11865a45e2f285be71","name":"https://github.com/zitadel/zitadel/commit/562403079a98cf2059cdac11865a45e2f285be71","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/zitadel/zitadel/commit/5b1708e0e650398f0ebc3341714f0798b0118917","name":"https://github.com/zitadel/zitadel/commit/5b1708e0e650398f0ebc3341714f0798b0118917","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/zitadel/zitadel/releases/tag/v3.4.12","name":"https://github.com/zitadel/zitadel/releases/tag/v3.4.12","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/zitadel/zitadel/releases/tag/v4.15.2","name":"https://github.com/zitadel/zitadel/releases/tag/v4.15.2","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://github.com/zitadel/zitadel/security/advisories/GHSA-xqxv-4jc2-x56x","name":"https://github.com/zitadel/zitadel/security/advisories/GHSA-xqxv-4jc2-x56x","refsource":"security-advisories@github.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-55672","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-55672","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"zitadel","product":"zitadel","version":"affected >= 4.0.0-rc.1, < 4.15.2","platforms":[]},{"source":"CNA","vendor":"zitadel","product":"zitadel","version":"affected < 3.4.12","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"55672","cve":"CVE-2026-55672","epss":"0.002760000","percentile":"0.194600000","score_date":"2026-07-13","updated_at":"2026-07-14 00:13:15"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"adp":[{"metrics":[{"other":{"content":{"id":"CVE-2026-55672","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"role":"CISA Coordinator","timestamp":"2026-07-10T18:38:05.489144Z","version":"2.0.3"},"type":"ssvc"}}],"providerMetadata":{"dateUpdated":"2026-07-10T18:38:10.755Z","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP"},"title":"CISA ADP Vulnrichment"}],"cna":{"affected":[{"product":"zitadel","vendor":"zitadel","versions":[{"status":"affected","version":">= 4.0.0-rc.1, < 4.15.2"},{"status":"affected","version":"< 3.4.12"}]}],"descriptions":[{"lang":"en","value":"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."}],"metrics":[{"cvssV3_1":{"attackComplexity":"HIGH","attackVector":"NETWORK","availabilityImpact":"NONE","baseScore":7.4,"baseSeverity":"HIGH","confidentialityImpact":"HIGH","integrityImpact":"HIGH","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-287","description":"CWE-287: Improper Authentication","lang":"en","type":"CWE"}]},{"descriptions":[{"cweId":"CWE-863","description":"CWE-863: Incorrect Authorization","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-07-10T17:19:05.266Z","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","shortName":"GitHub_M"},"references":[{"name":"https://github.com/zitadel/zitadel/security/advisories/GHSA-xqxv-4jc2-x56x","tags":["x_refsource_CONFIRM"],"url":"https://github.com/zitadel/zitadel/security/advisories/GHSA-xqxv-4jc2-x56x"},{"name":"https://github.com/zitadel/zitadel/commit/562403079a98cf2059cdac11865a45e2f285be71","tags":["x_refsource_MISC"],"url":"https://github.com/zitadel/zitadel/commit/562403079a98cf2059cdac11865a45e2f285be71"},{"name":"https://github.com/zitadel/zitadel/commit/5b1708e0e650398f0ebc3341714f0798b0118917","tags":["x_refsource_MISC"],"url":"https://github.com/zitadel/zitadel/commit/5b1708e0e650398f0ebc3341714f0798b0118917"},{"name":"https://github.com/zitadel/zitadel/releases/tag/v3.4.12","tags":["x_refsource_MISC"],"url":"https://github.com/zitadel/zitadel/releases/tag/v3.4.12"},{"name":"https://github.com/zitadel/zitadel/releases/tag/v4.15.2","tags":["x_refsource_MISC"],"url":"https://github.com/zitadel/zitadel/releases/tag/v4.15.2"}],"source":{"advisory":"GHSA-xqxv-4jc2-x56x","discovery":"UNKNOWN"},"title":"ZITADEL: Missing client_id binding in OIDC authorization code exchange and refresh token flows (RFC 6749 Section 4.1.3 violation)"}},"cveMetadata":{"assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","assignerShortName":"GitHub_M","cveId":"CVE-2026-55672","datePublished":"2026-07-10T17:19:05.266Z","dateReserved":"2026-06-17T00:05:03.778Z","dateUpdated":"2026-07-10T18:38:10.755Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-07-10 18:16:23","lastModifiedDate":"2026-07-10 19:17:25","problem_types":["CWE-287","CWE-863","CWE-287 CWE-287: Improper Authentication","CWE-863 CWE-863: Incorrect Authorization"],"metrics":{"cvssMetricV31":[{"source":"security-advisories@github.com","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N","baseScore":7.4,"baseSeverity":"HIGH","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"NONE"},"exploitabilityScore":2.2,"impactScore":5.2}],"ssvcV203":[{"source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","ssvcData":{"timestamp":"2026-07-10T18:38:05.489144Z","id":"CVE-2026-55672","options":[{"exploitation":"none"},{"automatable":"no"},{"technicalImpact":"total"}],"role":"CISA Coordinator","version":"2.0.3"}}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"55672","Ordinal":"1","Title":"ZITADEL: Missing client_id binding in OIDC authorization code ex","CVE":"CVE-2026-55672","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"55672","Ordinal":"1","NoteData":"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.","Type":"Description","Title":"ZITADEL: Missing client_id binding in OIDC authorization code ex"}]}}}