Read the docs
TI-2025-31074 Aliases CVE-2025-48936GHSA-93m4-mfpg-c3xf

ZITADEL Allows Account Takeover via Malicious X-Forwarded-Proto Header Injection

Priority MEDIUM 40CWE-601Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
Required
Attack complexity
Low
Impact type
Spoofing, Code execution
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub. Impact type from CWE-601 and CWE-77.

Summary

Zitadel is open-source identity infrastructure software. Prior to versions 2.70.12, 2.71.10, and 3.2.2, a potential vulnerability exists in the password reset mechanism. ZITADEL utilizes the Forwarded or X-Forwarded-Host header from incoming requests to construct the URL for the password reset confirmation link. This link, containing a secret code, is then emailed to the user. If an attacker can manipulate these headers (e.g., via host header injection), they could cause ZITADEL to generate a password reset link pointing to a malicious domain controlled by the attacker. If the user clicks this manipulated link in the email, the secret reset code embedded in the URL can be captured by the attacker. This captured code could then be used to reset the user's password and gain unauthorized access to their account. This specific attack vector is mitigated for accounts that have Multi-Factor Authentication (MFA) or Passwordless authentication enabled. This issue has been patched in versions 2.70.12, 2.71.10, and 3.2.2.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00411 35th percentileScored 2026-11-07
Fix Fixed zitadel (zitadel): 2.70.12, 3.2.2github.com/zitadel/zitadel (Go): 0.0.0-20250528081227-c097887bc5f6+1 more product

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

VendorProductAffected versionsFixed inStatusSource
zitadelzitadelbefore 2.70.12; 2.71.0 – 2.71.10; 3.0.0-rc1 to before 3.2.22.70.12, 3.2.2Patch availableCNA
—github.com/zitadel/zitadel (Go)before 0.0.0-20250528081227-c097887bc5f60.0.0-20250528081227-c097887bc5f6Patch availableGHSA-93m4-mfpg-c3xf
—github.com/zitadel/zitadel/v2 (Go)2.38.3 to before 2.70.122.70.12Patch availableGHSA-93m4-mfpg-c3xf
—github.com/zitadel/zitadel/v2 (Go)3.0.0-rc1 to before 3.2.23.2.2Patch availableGHSA-93m4-mfpg-c3xf
—github.com/zitadel/zitadel/v2 (Go)2.71.0 to before 2.71.112.71.11Patch availableGHSA-93m4-mfpg-c3xf
—github.com/zitadel/zitadel/v2 (Go)all versions—No fix listedGHSA-93m4-mfpg-c3xf
  • zitadel Vendorzitadel Affected before 2.70.12; 2.71.0 – 2.71.10; 3.0.0-rc1 to before 3.2.2 Fixed in 2.70.12, 3.2.2 Patch available CNA
  • github.com/zitadel/zitadel (Go) Vendor— Affected before 0.0.0-20250528081227-c097887bc5f6 Fixed in 0.0.0-20250528081227-c097887bc5f6 Patch available GHSA-93m4-mfpg-c3xf
  • github.com/zitadel/zitadel/v2 (Go) Vendor— Affected 2.38.3 to before 2.70.12 Fixed in 2.70.12 Patch available GHSA-93m4-mfpg-c3xf
  • github.com/zitadel/zitadel/v2 (Go) Vendor— Affected 3.0.0-rc1 to before 3.2.2 Fixed in 3.2.2 Patch available GHSA-93m4-mfpg-c3xf
  • github.com/zitadel/zitadel/v2 (Go) Vendor— Affected 2.71.0 to before 2.71.11 Fixed in 2.71.11 Patch available GHSA-93m4-mfpg-c3xf
  • github.com/zitadel/zitadel/v2 (Go) Vendor— Affected all versions Fixed in — No fix listed GHSA-93m4-mfpg-c3xf

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:zitadel:zitadel:*:*:*:*:*:*:*:*2.0.0 to before 2.70.12; 2.71.0 to before 2.71.11; 3.0.0 to before 3.2.2Vulnerablezitadel
  • cpe:2.3:a:zitadel:zitadel:*:*:*:*:*:*:*:* Versions 2.0.0 to before 2.70.12; 2.71.0 to before 2.71.11; 3.0.0 to before 3.2.2 Vulnerable ·zitadel

Remediation

  • Fix · CNA zitadel (zitadel) Fixed in 2.70.12, 3.2.2
  • Fix · GHSA-93m4-mfpg-c3xf github.com/zitadel/zitadel (Go) Fixed in 0.0.0-20250528081227-c097887bc5f6 Advisory →
  • Fix · GHSA-93m4-mfpg-c3xf github.com/zitadel/zitadel/v2 (Go) Fixed in 2.70.12 Advisory →
  • Fix · GHSA-93m4-mfpg-c3xf github.com/zitadel/zitadel/v2 (Go) Fixed in 3.2.2 Advisory →
  • Fix · GHSA-93m4-mfpg-c3xf github.com/zitadel/zitadel/v2 (Go) Fixed in 2.71.11 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2025-48936
  2. 2026-10-03 Alias added: GHSA-93m4-mfpg-c3xf

References

  • 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
See all 46 →

Sources