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.
Published: 2026-10-19
Score: 6.1 Medium
EPSS: n/a
KEV: No
Impact: Stored DOM XSS
Action: Apply Patch
AI Analysis

Impact

Mercury is a Python framework for sharing Jupyter notebooks as web applications. From version 3.0.0 through 3.2.11, the mr.Markdown widget converts user‑supplied Markdown into HTML without sanitizing embedded HTML before assigning it to an ipywidgets.HTML sink. As a result, attacker‑controlled HTML, including event‑handler attributes and other ActiveContent, can reach the browser DOM and execute when a second user views the application. The vulnerability is a stored DOM‑based cross‑site scripting (XSS) flaw, allowing an attacker to run arbitrary JavaScript in the victim’s browser and potentially steal session cookies, deface content, or perform phishing attacks. The weakness is a CWE‑79 Cross‑Site Scripting issue, combined with CWE‑116 unsafe buffer handling in the conversion process.

Affected Systems

The affected product is Mercury from the vendor mljar, with all releases from version 3.0.0 up to and including 3.2.11 vulnerable. The vendor fix is introduced in Mercury 3.2.11.

Risk and Exploitability

The CVSS score is 6.1, indicating moderate severity for a stored XSS. The EPSS score is not available, and the vulnerability is not listed in the CISA KEV catalog, so no known exploits have been reported yet. Because the flaw requires only that an attacker be able to embed malicious Markdown into a notebook that is then shared, the attack can be carried out by a user with editing privileges on shared notebooks or dashboards. The primary vector is via the browser rendering of untrusted Markdown, allowing JavaScript execution, and no elevated privileges are needed.

Generated by OpenCVE AI on October 19, 2026 at 17:26 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Mercury to version 3.2.11 or later to apply the vendor fix.
  • If an upgrade is not immediately possible, modify mr.Markdown usage to sanitize or escape all HTML before assigning it to ipywidgets.HTML, or use an alternative markdown rendering library that strips unsafe elements.
  • Restrict write access to notebooks or dashboards that use mr.Markdown to trusted users only, and delete or neutralize any stored content containing raw HTML until a patch can be applied.

Generated by OpenCVE AI on October 19, 2026 at 17:26 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-2658-85cv-9wwq Mercury: Stored / DOM Cross-Site Scripting (XSS): mr.Markdown renders untrusted content as raw, unsanitized HTML
History

Mon, 19 Oct 2026 16:30:00 +0000

Type Values Removed Values Added
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.
Title Mercury: Stored / DOM Cross-Site Scripting (XSS): mr.Markdown renders untrusted content as raw, unsanitized HTML
Weaknesses CWE-116
CWE-79
References
Metrics cvssV3_1

{'score': 6.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-19T16:11:29.745Z

Reserved: 2026-10-15T12:47:13.664Z

Link: CVE-2026-111059

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-10-19T17:17:02.940

Modified: 2026-10-19T21:13:39.973

Link: CVE-2026-111059

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-19T17:30:13Z

Weaknesses
  • CWE-116

    Improper Encoding or Escaping of Output

  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')