Ad · Leaderboard 728×90

CVE-2026-111057

10.0Critical

Published 19 Oct 2026 · NVD status: Received · AI triage by gemini-3.8-flash

10.0Critical
Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None
Impact
Full C/I/A compromise
Weakness
CWE-185, CWE-284

Impact

Unauthenticated remote attackers can execute arbitrary OS commands and access host data with Mercury process privileges. All they need is network access to the exposed Mercury instance.

Root cause

A missing comma in the BLOCKED_PATTERNS list concatenated regular expressions, allowing requests targeting the /api/terminals endpoint to bypass authentication checks and open a Jupyter terminal.

Affected systems

Mercury 3.0.0 through versions prior to 3.2.4

CVSS v3.1 · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

Fix & remediation

Upgrade the mercury Python package to version 3.2.4 or later immediately. If you cannot upgrade right now, restrict network access to the application or block external HTTP requests to /api/terminals at your reverse proxy.

shell
$ pip install --upgrade 'mercury>=3.2.4'

AI-suggested. Run it in staging first and check it against the vendor advisory. Why?

Ad · In-content banner

NVD 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.

References

Source: nvd.nist.gov/vuln/detail/CVE-2026-111057

Ad · Sticky 320×50 / 728×90