Zitadel Expired JWT Keys Usable for Authorization Grants
Key facts
- Attack vector
- Network
- Privileges required
- High
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA.
Summary
Zitadel is open-source identity infrastructure software. A vulnerability existed where expired keys can be used to retrieve tokens. Specifically, ZITADEL fails to properly check the expiration date of the JWT key when used for Authorization Grants. This allows an attacker with an expired key to obtain valid access tokens. This vulnerability does not affect the use of JWT Profile for OAuth 2.0 Client Authentication on the Token and Introspection endpoints, which correctly reject expired keys. This vulnerability is fixed in 2.71.6, 2.70.8, 2.69.9, 2.68.9, 2.67.13, 2.66.16, 2.65.7, 2.64.6, and 2.63.9.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| zitadel | zitadel | 2.62.0 to before 2.63.9; 2.64.0-rc.1 to before 2.64.6; 2.65.0-rc.1 to before 2.65.7; 2.66.0-rc.1 to before 2.66.16; 2.67.0-rc.1 to before 2.67.13; 2.68.0-rc.1 to before 2.68.9; 2.69.0-rc.1 to before 2.69.9; 2.70.0-rc.1 to before 2.70.8; 2.71.0-rc.1 to before 2.71.6 | 2.63.9, 2.64.6, 2.65.7, 2.66.16, 2.67.13, 2.68.9, 2.69.9, 2.70.8, 2.71.6 | Patch available | CNA |
- zitadel Vendorzitadel Affected 2.62.0 to before 2.63.9; 2.64.0-rc.1 to before 2.64.6; 2.65.0-rc.1 to before 2.65.7; 2.66.0-rc.1 to before 2.66.16; 2.67.0-rc.1 to before 2.67.13; 2.68.0-rc.1 to before 2.68.9; 2.69.0-rc.1 to before 2.69.9; 2.70.0-rc.1 to before 2.70.8; 2.71.0-rc.1 to before 2.71.6 Fixed in 2.63.9, 2.64.6, 2.65.7, 2.66.16, 2.67.13, 2.68.9, 2.69.9, 2.70.8, 2.71.6 Patch available CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:zitadel:zitadel:*:*:*:*:*:*:*:* | 2.62.0 to before 2.63.9; 2.64.0 to before 2.64.6; 2.65.0 to before 2.65.7; 2.66.0 to before 2.66.16; 2.67.0 to before 2.67.13; 2.68.0 to before 2.68.9; 2.69.0 to before 2.69.9; 2.70.0 to before 2.70.8; 2.71.0 to before 2.71.6 | Vulnerable | zitadel |
- cpe:2.3:a:zitadel:zitadel:*:*:*:*:*:*:*:* Versions 2.62.0 to before 2.63.9; 2.64.0 to before 2.64.6; 2.65.0 to before 2.65.7; 2.66.0 to before 2.66.16; 2.67.0 to before 2.67.13; 2.68.0 to before 2.68.9; 2.69.0 to before 2.69.9; 2.70.0 to before 2.70.8; 2.71.0 to before 2.71.6 Vulnerable ·zitadel
Remediation
- Fix · CNA zitadel (zitadel) Fixed in 2.63.9, 2.64.6, 2.65.7, 2.66.16, 2.67.13, 2.68.9, 2.69.9, 2.70.8, 2.71.6
Timeline
- 2026-10-02 Threatist record created from CVE-2025-31123
References
Other 9
- https://github.com/zitadel/zitadel/releases/tag/v2.63.9
- https://github.com/zitadel/zitadel/releases/tag/v2.64.6
- https://github.com/zitadel/zitadel/releases/tag/v2.65.7
- https://github.com/zitadel/zitadel/releases/tag/v2.66.16
- https://github.com/zitadel/zitadel/releases/tag/v2.67.13
- https://github.com/zitadel/zitadel/releases/tag/v2.68.9
- https://github.com/zitadel/zitadel/releases/tag/v2.69.9
- https://github.com/zitadel/zitadel/releases/tag/v2.70.8
- https://github.com/zitadel/zitadel/releases/tag/v2.71.6
More Zitadel vulnerabilities
- TI-2024-26607 ZITADEL Vulnerable to Session Information Leakage CVSS 3.1MEDIUM 6.5
- TI-2025-41253 ZITADEL Vulnerable to Unauthenticated Full-Read SSRF via V2 Login CVSS 3.1CRITICAL 9.3
- TI-2025-39554 Zitadel Bypass Second Authentication Factor CVSS 4.0HIGH 8.7
- TI-2024-33224 Zitadel User Registration Bypass Vulnerability CVSS 3.1HIGH 7.5
- TI-2024-31388 Service Users Deactivation not Working in Zitadel CVSS 3.1HIGH 8.1
- TI-2026-23310 ZITADEL: Bypassing Zitadel Login Behavior and Security Policy in Login V2 CVSS 3.1HIGH 8.2
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences