Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify Zulip instance using OIDC SSO
-
DeliveryCause misconfigured IdP to assert victim email
-
ExploitIdP returns email_verified=false claim
-
ExecutionZulip matches delivery_email, skips rejection
-
ImpactLogged into victim account (takeover)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication mechanism validation
MITRE ATT&CK
2 techniques across 2 tactics: Defense Evasion, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires the Zulip server to be configured with GenericOpenIdConnectBackend (OIDC single sign-on) AND the configured trusted identity provider to be misconfigured such that it returns an email address the authenticating user does not control together with an explicit email_verified=false claim. The key limiting factors: OIDC SSO must be enabled; the authoritative IdP must emit email addresses not owned by the authenticating user - deployments whose IdP only emits user-controlled emails are explicitly not affected; and a target account with a matching delivery_email must already exist. This is a server-side/operator misconfiguration precondition outside the attacker's direct control (reflected as AT:P in the 4.0 vector), not a flaw triggerable against a correctly configured default OIDC deployment. |
| Impact | The input CVSS 4.0 base score is 9.1 (Critical) with vector AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N, and the weakness is an authentication bypass (CWE-287). The single most important signal is AT:P (Attack Requirements: Present), which the vendor uses to encode the explicit precondition that the deployment must run GenericOpenIdConnectBackend behind a misconfigured or untrustworthy identity provider - the description states deployments whose IdP only emits user-controlled email addresses are NOT affected. This materially lowers real-world risk below what the headline 9.1 implies: although PR:N/UI:N suggest trivial remote unauthenticated takeover, exploitation is gated on an attacker-uncontrollable server-side misconfiguration. No EPSS score was provided in the input, there is no CISA KEV listing, and no public proof-of-concept was supplied - so exploitation status is: no public exploit identified at time of analysis. A patch is confirmed available (12.2) and the fix commit/diff is public, which raises the theoretical likelihood of exploit development over time, but the conditional precondition keeps this closer to a targeted/niche issue than a mass-exploitable one. Net: treat as a high-priority patch for any Zulip deployment that uses OIDC SSO, but a non-issue for deployments not using GenericOpenIdConnectBackend or whose IdP is correctly configured. Conflicting-signal note: the raw CVSS vector reads as easy remote unauth exploitation, but the AT:P flag and the description's precondition should be read together as a significant real-world limiter - verify your IdP's email_verified behavior rather than relying on the 9.1 alone. |
| Exploit ScenarioDerived | A Zulip server is configured with a single trusted OpenID Connect provider that is misconfigured to emit arbitrary email addresses with email_verified=false. An attacker who can obtain any account on (or influence) that IdP causes it to assert a victim's email address with email_verified=false; because Zulip (≤12.1) matched the email claim to an existing account's delivery_email without rejecting the false verification claim, the attacker is logged straight into the victim's Zulip account. No public exploit code was provided in the input, but the fix diff is publicly visible in the GitHub commits and GHSA advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 14, 2026
Authentication bypass in Zulip Server through 12.1 can log an attacker into an existing user account when OIDC single sign-on is configured with a misconfigured identity provider. The GenericOpenIdConnectBackend matches the IdP's email claim against an active account's delivery_email without rejecting an explicit email_verified=false, so a user who does not control that address can be authenticated as the account that owns it. Exploitation requires OIDC SSO to be enabled, a trusted IdP that emits email addresses the authenticating user does not control, and a pre-existing account whose delivery_email matches that address; deployments whose IdP only emits user-controlled addresses are explicitly not affected. The vendor fixed the flaw in Zulip Server 12.2, unauthenticated remote exploitation is rated Critical (CVSS 4.0 9.1, AT:P), and no public exploit has been identified at time of analysis.
RemediationAI
Upgrade to Zulip Server 12.2, the vendor-released patch version, per https://github.com/zulip/zulip/releases/tag/12.2 and advisory https://github.com/zulip/zulip/security/advisories/GHSA-xw9h-9rcm-hx4m; the fix is contained in commits 68d2d9defa39f8af96a50fc7430efc34dee120b5 and b40f191a8c71e74fcb471f71de6a1233de157102. If an immediate upgrade is not possible, the practical compensating controls are operator-side: verify that the configured OIDC IdP never emits email addresses the authenticating user does not own (this is the precise precondition, so confirming the IdP's email source removes the exposure entirely), or require the IdP to assert email_verified=true for addresses it does control - noting the patched backend still accepts emails when the optional claim is absent, so simply removing the claim does not help; temporarily disabling GenericOpenIdConnectBackend / OIDC SSO stops the bypass but locks out all SSO users and forces local-password or alternative-login fallback; audit existing accounts' delivery_email values and remove or re-verify any that could be asserted by an untrusted or permissive IdP, since a matching existing account is required for takeover. Because the flaw is an authentication bypass, prioritize patching any instance where OIDC is enabled and the trusted IdP's email semantics have not been verified.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is CWE-287 (Improper Authentication) in Zulip's GenericOpenIdConnectBackend, the backend used when an operator configures a single, administrator-trusted OpenID Connect identity provider rather than the shared social IdPs (Google/GitHub). OIDC conveys the user's email in either the UserInfo response or the ID token, and the spec defines an optional 'email_verified' boolean claim; the pre-fix code did not inspect that claim when resolving the social-auth email to a local account via delivery_email, so an IdP that explicitly asserted email_verified=false could still be trusted to bind a session to an account the authenticating user does not own. The upstream patch adds a get_verified_emails override that returns an empty list when email_verified is present and false (rejecting the login), while deliberately still accepting emails when the optional claim is absent, on the rationale that a reasonably configured generic OIDC IdP is a single trusted source. Because generic OIDC IdPs are operator-selected and explicitly trusted, the trigger is an operator-side misconfiguration outside the attacker's direct control (reflected as Attack Requirements: Present in the 4.0 vector and AC:H in the independent 3.1 assessment). The change is covered by two commits (68d2d9defa39f8af96a50fc7430efc34dee120b5 and b40f191a8c71e74fcb471f71de6a1233de157102), PR 39913, and the 12.2 release.
Know when Zulip gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Exploitation hinges on an attacker-uncontrollable misconfigured IdP, so AC:H; the attacker needs no prior Zulip privileges (PR:N); account takeover yields high confidentiality and integrity, no availability impact.
Primary rating from Vendor (github).
CVSS VectorVendor: github
Lifecycle Timeline
2DescriptionCVE.org
Zulip is an open-source team collaboration tool. In Zulip Server versions through 12.1, GenericOpenIdConnectBackend matches the identity provider email claim to an active account's delivery_email without rejecting an explicitly false email_verified claim. If a configured identity provider returns an email address that the authenticating user does not control together with email_verified=false, Zulip can log the user into the existing account for that address. Exploitation requires a misconfigured trusted identity provider, and deployments whose authoritative identity provider only emits email addresses controlled by the authenticating user are not affected. This issue is fixed in version 12.2.
Technical POC Analysis
Bug class: CWE-287 Improper Authentication.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Zulip Server versions through 12.1 are affected by a critical authentication bypass (CVE-2026-102893, CVSS 9.1) that allows an attacker to log into an existing user account when OIDC single sign-on is configured with a misconfigured identity provider. This vulnerability poses a severe risk to organizations using OIDC SSO, as it could enable unauthorized access to sensitive data and privileged functions; no public exploit identified at time of analysis, but leadership should act promptly to apply the vendor's fix (version 12.2) and review identity provider configurations.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Zulip is an open source team chat server. Rated medium severity (CVSS 6.5), this vulnerability is remotely exploitable,
Zulip is an open-source team collaboration tool with topic-based threading. Rated critical severity (CVSS 9.8), this vul
In Zulip Server versions from 1.7.0 to before 2.0.7, a bug in the new user signup process meant that users who registere
Zulip Server before 2.1.3 allows XSS via a Markdown link, with resultant account takeover. Rated medium severity (CVSS 5
In Zulip Server before 1.7.1, on a server with multiple realms, a vulnerability in the invitation system lets an authori
Zulip is an open source team chat tool. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable, low
Zulip Server 2.x before 2.1.7 allows eval injection if a privileged attacker were able to write directly to the postgres
Zulip is an open-source team collaboration tool. Rated high severity (CVSS 8.2), this vulnerability is remotely exploita
Jenkins Zulip Plugin 1.1.0 and earlier stored credentials unencrypted in its global configuration file on the Jenkins ma
Zulip from 8.0 to 8.3 contains a memory leak vulnerability in the handling of popovers. Rated high severity (CVSS 7.5),
Zulip Server before 2.1.5 has Incorrect Access Control because 0198_preregistrationuser_invited_as adds the administrato
Zulip is an open source group chat application. Rated high severity (CVSS 7.4), this vulnerability is remotely exploitab
EUVD-2026-101287
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB