CVE-2026-111059 · GHSA-2658-85cv-9wwq
Mercury: Stored / DOM Cross-Site Scripting (XSS): mr.Markdown renders untrusted content as raw, unsanitized HTML
- Risk score
- 51/100
- CVSS
- 6.1 v3.1
- Exploit chance (30 days)
- 0.3%
- Published
- 19 Oct 2026
Open in the live forecast Today's forecast
What to know
- What it is
- Mercury is a Python framework for sharing Jupyter notebooks as web applications and dashboards. From 3.0.0 until 3.2.11, mr.Markdown converts attacker-controlled Markdown to HTML without sanitizing raw HTML before assigning it to an ipywidgets.HTML sink. Event-handler attributes and other active HTML can therefore rea…
- Affected
- mercury (pip) >= 3.0.0, < 3.2.11
- Fix
- Upgrade mercury to 3.2.11 or later.
- Exploitation
- Public proof of concept
Story map
At a glance
mercury: Amber, patch this week. A vulnerability in Mercury allows an unauthenticated attacker to execute commands and access data through an interactive operating-system shell. This is due to a missing comma in the BLOCKED_PATTERNS regular-expression literals.
The flaws
- CVE-2026-111059: Mercury: Stored / DOM Cross-Site Scripting (XSS): mr.Markdown renders untrusted content as raw, unsanitized HTML (CVSS 6.1 · EPSS 0%)
- CVE-2026-111057: Mercury: Unauthenticated Remote Code Execution in /api/terminals - access control bypass (CVSS 10.0 · EPSS 0%)
- CVE-2026-111058: Mercury: Unauthenticated Remote Code Execution via /api/kernels (CVSS 9.8 · EPSS 0%)
The fix
Upgrade mercury: 3.2.11 · 3.2.4 · 3.2.6 or later on your release line
Who is exposed: {'products': ['Mercury'], 'packages': [{'ecosystem': 'pip', 'name': 'mercury', 'vulnerable': '>= 3.0.0, <= 3.2.3', 'patched': '3.2.4'}]}
Where it stands
- Public proof of concept
Connects to
- Same weakness: Cross-site scripting (CWE-79). 400 other warnings in 30 days
Why it is Yellow
- CVSS 6.1 medium
- Public exploit or proof of concept referenced
- On your watchlist: PyPI
Affected packages
| Package | Ecosystem | Vulnerable | Fixed in |
|---|---|---|---|
| mercury | pip | >= 3.0.0, < 3.2.11 | 3.2.11 |
References
- https://github.com/advisories/GHSA-2658-85cv-9wwq
- https://github.com/mljar/mercury/security/advisories/GHSA-2658-85cv-9wwq
- https://github.com/mljar/mercury/commit/c798a85924e6614c6fea7afe5a560e4554a1d09b
- https://github.com/mljar/mercury/releases/tag/v3.2.11
- https://github.com/advisories/GHSA-2658-85cv-9wwq
Original description
Mercury is a Python framework for sharing Jupyter notebooks as web applications and dashboards. From 3.0.0 until 3.2.11, mr.Markdown converts attacker-controlled Markdown to HTML without sanitizing raw HTML before assigning it to an ipywidgets.HTML sink. Event-handler attributes and other active HTML can therefore reach the DOM and execute when another user views the application. This issue is fixed in version 3.2.11.
Last activity 19 Oct 2026. Patch Forecast updates every hour.