Skip to content
Threat Feed
critical advisory

CVE-2026-111057 - Unauthenticated Remote Code Execution in Mercury

A configuration error in Mercury framework versions 3.0.0 through 3.2.3 allows unauthenticated attackers to bypass endpoint restrictions and access the Jupyter Server terminal API for remote code execution.

CVE search metadata

CVE search record: CVE-2026-111057. Severity: critical. CVSS: 10.0. KEV: no. Product: Mercury (3.0.0-3.2.3). Brief: CVE-2026-111057 - Unauthenticated Remote Code Execution in Mercury. Brief link: https://feed.craftedsignal.io/briefs/2026-10-mercury/

Mercury is a Python framework designed to transform Jupyter notebooks into web applications and dashboards. A critical security flaw identified in versions 3.0.0 through 3.2.3 stems from a missing comma within the BLOCKED_PATTERNS configuration. This syntax error results in the concatenation of /lab and /api/terminals regular-expression literals, effectively creating an unintended bypass of the security blocklist. Consequently, unauthenticated users can access the underlying Jupyter Server terminal API, which should be restricted. By interacting with this API, an attacker can launch an interactive shell on the host operating system, leading to arbitrary command execution and potential data exfiltration from the system running the Mercury process. This vulnerability is addressed in Mercury version 3.2.4.

Attack Chain

  1. Attacker performs reconnaissance to identify a web application running the Mercury framework.
  2. Attacker crafts a malicious HTTP request targeting the /api/terminals endpoint.
  3. The Mercury web service processes the request, and due to the BLOCKED_PATTERNS configuration error, the terminal endpoint check is bypassed.
  4. The request is forwarded to the underlying Jupyter Server process.
  5. The Jupyter Server grants the unauthenticated request, allowing the initiation of a new terminal session.
  6. The attacker interacts with the exposed terminal API to spawn a persistent shell or execute arbitrary commands.
  7. Attacker executes post-exploitation commands to exfiltrate data or establish secondary persistence.

Impact

Successful exploitation of CVE-2026-111057 allows unauthenticated remote code execution with the privileges of the user account running the Mercury process. This represents a critical risk to confidentiality, integrity, and availability for any environment hosting Jupyter-based web applications, potentially resulting in full system compromise.

Recommendation

  • Upgrade all instances of Mercury to version 3.2.4 or later immediately to patch the configuration error documented in CVE-2026-111057.
  • Audit access logs for any POST or GET requests to /api/terminals originating from unauthorized or external IP addresses.
  • Ensure the Mercury service process is running with the principle of least privilege, specifically restricting access to sensitive files and system binaries to limit the impact of a potential RCE.
  • Deploy network-level ingress filtering to restrict access to management endpoints of the Mercury/Jupyter environment.

Immediate actions

Upgrade Mercury to version 3.2.4 or later

IT Operations 24h

Mitigations

Upgrade Mercury to 3.2.4

immediate IT Operations

CVE-2026-111057

Detection coverage 1

Detect CVE-2026-111057 Exploitation - Unauthorized Access to Jupyter Terminals

critical

Detects potential exploitation of CVE-2026-111057 by monitoring for HTTP requests to the Jupyter terminal API, which should be protected in a default Mercury deployment.

sigma tactics: execution, initial_access techniques: T1059.003 sources: webserver

Detection queries are available on the platform. Get full rules →