RefreshToken invalidation vulnerability
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- High
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- Low · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-613.
Summary
ZITADEL is a combination of Auth0 and Keycloak. RefreshTokens is an OAuth 2.0 feature that allows applications to retrieve new access tokens and refresh the user's session without the need for interacting with a UI. RefreshTokens were not invalidated when a user was locked or deactivated. The deactivated or locked user was able to obtain a valid access token only through a refresh token grant. When the locked or deactivated user’s session was already terminated (“logged out”) then it was not possible to create a new session. Renewal of access token through a refresh token grant is limited to the configured amount of time (RefreshTokenExpiration). As a workaround, ensure the RefreshTokenExpiration in the OIDC settings of your instance is set according to your security requirements. This issue has been patched in versions 2.17.3 and 2.16.4.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
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.17.0 to before 2.17.3; 2.0.0 to before 2.16.4 | 2.17.3, 2.16.4 | Patch available | CNA |
| — | github.com/zitadel/zitadel (Go) | 2.17.0 to before 2.17.3 | 2.17.3 | Patch available | GHSA-6rrr-78xp-5jp8 |
| — | github.com/zitadel/zitadel (Go) | 2.0.0 to before 2.16.4 | 2.16.4 | Patch available | GHSA-6rrr-78xp-5jp8 |
- zitadel Vendorzitadel Affected 2.17.0 to before 2.17.3; 2.0.0 to before 2.16.4 Fixed in 2.17.3, 2.16.4 Patch available CNA
- github.com/zitadel/zitadel (Go) Vendor— Affected 2.17.0 to before 2.17.3 Fixed in 2.17.3 Patch available GHSA-6rrr-78xp-5jp8
- github.com/zitadel/zitadel (Go) Vendor— Affected 2.0.0 to before 2.16.4 Fixed in 2.16.4 Patch available GHSA-6rrr-78xp-5jp8
Remediation
- Fix · CNA zitadel (zitadel) Fixed in 2.17.3, 2.16.4
- Fix · GHSA-6rrr-78xp-5jp8 github.com/zitadel/zitadel (Go) Fixed in 2.17.3 Advisory →
- Fix · GHSA-6rrr-78xp-5jp8 github.com/zitadel/zitadel (Go) Fixed in 2.16.4 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2023-22492
- 2026-10-03 Alias added: GHSA-6rrr-78xp-5jp8
- 2026-10-30 EPSS moved to the 50th–90th percentile
References
Patch 3
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
- CVE-2023-22492 · CVE Program
- CVE-2023-22492 · NVD
- FIRST EPSS
- GHSA-6rrr-78xp-5jp8 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences