All vulnerabilities

Servers and applications

GHSA-3gwf-ph53-v73c

Login V2: authentication bypass via unauthenticated (zero-factor) session for OIDC and SAML requests

Severity
High 7.4
Published
13 Nov 2026
Last changed
13 Nov 2026
Added to UpHeron
13 Nov 2026
Fixed in
4.20.3
Weakness
Improper authentication (CWE-287)
Attack
Over the network · Only under certain conditions · No login needed · No user action needed
Attacker can
Read data · Change data
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
Sources
Project advisories (GitHub)

Description

ZITADEL issued tokens or a SAML response for an OIDC or SAML authorization request without ensuring that the session used to complete the request had been authenticated to the request’s requirements by an authorized login client. Completing a request is meant to be performed only by a login client holding the session.link permission, which is responsible for verifying the session first. That guarantee was not enforced, and the gap was reachable through ZITADEL’s hosted Login V2 and directly through the completion endpoints.

Through the hosted Login V2, a request could be completed with a session on which no authentication factor had been verified: an unauthenticated attacker who knows a victim’s login name could obtain tokens or a SAML response for that user when the user has two or more linked identity providers, or when the organization disables local authentication and offers two or more identity providers — both possible under the default login policy.

From zitadel/zitadel's security advisory. Shortened; the full text is there.

Workarounds

The recommended solution is to upgrade to a patched version. There is no configuration that fully closes this gap on unpatched versions. As a partial mitigation for the completion‑endpoint surface, deployments whose login UI does not rely on the x-zitadel-login-client header — including ZITADEL’s hosted Login V2 — can strip this header from all incoming requests at their reverse proxy.

Workarounds as given by zitadel/zitadel's security advisory.

Affected software

SoftwareAffected versions
ZITADELServers and applications · github:zitadel/zitadel
  • From 4.0.0 before 4.20.3

References