Skip to main content

Zulip CVE-2026-40300

| EUVDEUVD-2026-29537 MEDIUM
Improper Access Control (CWE-284)
2026-05-12 GitHub_M
6.0
CVSS 4.0 · GitHub Advisory
Share

Severity by source

GitHub Advisory PRIMARY
6.0 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
5.3 MEDIUM

AC:H reflects the prerequisite non-default configuration; PR:L for required authenticated account; C:H for disclosed message text; no integrity or availability impact.

3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from GitHub Advisory.

CVSS VectorGitHub Advisory

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
X

Lifecycle Timeline

5
Analysis Generated
Jul 23, 2026 - 22:26 vuln.today
Patch available
May 12, 2026 - 18:03 EUVD
CVSS changed
May 12, 2026 - 17:22 NVD
6.0 (MEDIUM)
CVE Published
May 12, 2026 - 16:33 nvd
MEDIUM 6.0
CVE Published
May 12, 2026 - 16:33 nvd
UNKNOWN (no severity yet)

DescriptionGitHub Advisory

Zulip is an open-source team collaboration tool. Prior to 12.0, With message_edit_history_visibility_policy set to "moves", /api/v1/messages/{id}/history still returns historical content values, allowing low-privilege users to recover text that was edited away from other users' messages. This vulnerability is fixed in 12.0.

AnalysisAI

Zulip's message history API endpoint fails to enforce the message_edit_history_visibility_policy when set to 'moves', exposing full prior message text to low-privilege authenticated users via /api/v1/messages/{id}/history. Administrators who deliberately configured this policy to limit edit history visibility to move-events only will find that the underlying content is still recoverable through the API, bypassing the intended access control. No public exploit has been identified and EPSS is 0.04% (12th percentile), but the confidentiality impact is rated High in the CVSS 4.0 assessment for instances operating under this configuration.

Technical ContextAI

Zulip (CPE: cpe:2.3:a:zulip:zulip:*:*:*:*:*:*:*:*) is an open-source team collaboration platform offering threaded messaging. The message_edit_history_visibility_policy setting provides administrators a privacy control over what edit metadata is surfaced to users; the 'moves' value is intended to restrict visibility to topic or stream relocations only, hiding the textual delta of edits. CWE-284 (Improper Access Control) is the root cause: the REST endpoint /api/v1/messages/{id}/history does not consult the configured policy before returning historical content values, rendering the access control setting inoperative for this code path. The CVSS 4.0 vector's AT:P (Attack Requirements: Present) corroborates that exploitation is gated on a specific deployment precondition - the 'moves' policy being active.

RemediationAI

The primary fix is upgrading to Zulip 12.0, which resolves the improper access control in the message history endpoint per the vendor advisory at https://github.com/zulip/zulip/security/advisories/GHSA-jp8f-mvv6-89cr. As a compensating control prior to patching, administrators can change message_edit_history_visibility_policy away from 'moves' to a less restrictive setting (such as 'everyone' or 'admins-only'), accepting the trade-off that the intended privacy restriction is removed entirely. Restricting API access to /api/v1/messages/{id}/history at the network or WAF layer is another option, but this will break legitimate Zulip client functionality that uses message history to render edit indicators. The cleanest and only complete remediation is the 12.0 upgrade.

More in Zulip

View all
CVE-2021-41115 MEDIUM POC
6.5 Oct 07

Zulip is an open source team chat server. Rated medium severity (CVSS 6.5), this vulnerability is remotely exploitable,

CVE-2022-21706 CRITICAL
9.8 Feb 26

Zulip is an open-source team collaboration tool with topic-based threading. Rated critical severity (CVSS 9.8), this vul

CVE-2019-18933 CRITICAL
9.8 Nov 21

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

CVE-2020-10935 MEDIUM POC
5.4 Apr 20

Zulip Server before 2.1.3 allows XSS via a Markdown link, with resultant account takeover. Rated medium severity (CVSS 5

CVE-2017-0910 HIGH
8.8 Nov 27

In Zulip Server before 1.7.1, on a server with multiple realms, a vulnerability in the invitation system lets an authori

CVE-2022-31168 HIGH
8.8 Jul 22

Zulip is an open source team chat tool. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable, low

CVE-2020-15070 HIGH
8.8 Aug 21

Zulip Server 2.x before 2.1.7 allows eval injection if a privileged attacker were able to write directly to the postgres

CVE-2025-31478 HIGH
8.2 Apr 16

Zulip is an open-source team collaboration tool. Rated high severity (CVSS 8.2), this vulnerability is remotely exploita

CVE-2019-10476 HIGH
7.8 Oct 23

Jenkins Zulip Plugin 1.1.0 and earlier stored credentials unencrypted in its global configuration file on the Jenkins ma

CVE-2024-36612 HIGH
7.5 Nov 29

Zulip from 8.0 to 8.3 contains a memory leak vulnerability in the handling of popovers. Rated high severity (CVSS 7.5),

CVE-2020-14215 HIGH
7.5 Aug 21

Zulip Server before 2.1.5 has Incorrect Access Control because 0198_preregistrationuser_invited_as adds the administrato

CVE-2022-24751 HIGH
7.4 Mar 16

Zulip is an open source group chat application. Rated high severity (CVSS 7.4), this vulnerability is remotely exploitab

Share

CVE-2026-40300 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy