Description
Mercury is a Python framework for sharing Jupyter notebooks as web applications and dashboards. From 3.0.0 until 3.2.4, a missing comma in BLOCKED_PATTERNS concatenates the /lab and /api/terminals regular-expression literals. Requests to /api/terminals therefore bypass the anonymous endpoint blocklist and reach Jupyter Server's terminal API. An unauthenticated attacker can use the resulting interactive operating-system shell to execute commands and access data available to the Mercury process. This issue is fixed in version 3.2.4.
Published: 2026-10-19
Score: 10 Critical
EPSS: n/a
KEV: No
Impact: Remote Code Execution
Action: Immediate Patch
AI Analysis

Impact

Mercury is a Python framework that turns Jupyter notebooks into web applications. A missing comma in the BLOCKED_PATTERNS array causes a concatenation of /lab and /api/terminals regular‑expression literals, allowing requests to the terminal API to bypass the anonymous blocklist. An unauthenticated attacker can therefore reach the Jupyter Server’s terminal endpoint and obtain an interactive OS shell with the privileges of the Mercury process, giving full read/write access to the host.

Affected Systems

Mercury 3.0.0 through 3.2.4 (inclusive) built by mljar is affected. Versions prior to 3.0.0 and after 3.2.4 are not impacted.

Risk and Exploitability

The CVSS score of 10 indicates a critical vulnerability that gives complete control over the host. Because the issue arises from a validation error that is publicly documented, an attacker can target any reachable installation without authentication. The EPSS score is not available but the absence of a KEV listing does not reduce the danger; the flaw is already publicly disclosed and could be used worldwide. An exploitation path consists of sending an unauthenticated HTTP request to /api/terminals, bypassing the blocklist and invoking the Jupyter Server’s terminal API.

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

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update Mercury to version 3.2.4 or later, which contains the corrected BLOCKED_PATTERNS definition.
  • Restrict network access to the /api/terminals endpoint and enforce authentication, e.g., by configuring a reverse proxy or firewall rule that denies anonymous requests to that path.
  • Audit the current instance for signs of compromise and, if exposed, perform a full host integrity check and recovery actions as necessary.

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

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-f8c7-rwf9-fmgm Mercury: Unauthenticated Remote Code Execution in /api/terminals - access control bypass
History

Mon, 19 Oct 2026 16:15: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.4, a missing comma in BLOCKED_PATTERNS concatenates the /lab and /api/terminals regular-expression literals. Requests to /api/terminals therefore bypass the anonymous endpoint blocklist and reach Jupyter Server's terminal API. An unauthenticated attacker can use the resulting interactive operating-system shell to execute commands and access data available to the Mercury process. This issue is fixed in version 3.2.4.
Title Mercury: Unauthenticated Remote Code Execution in /api/terminals - access control bypass
Weaknesses CWE-185
CWE-284
References
Metrics cvssV3_1

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-19T16:04:07.065Z

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

Link: CVE-2026-111057

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2026-10-19T16:17:03.810

Modified: 2026-10-19T21:14:14.150

Link: CVE-2026-111057

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

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

Weaknesses
  • CWE-185

    Incorrect Regular Expression

  • CWE-284

    Improper Access Control