Vulnerability · Published Oct 19, 2026 · Assigned by GitHub_M
CVE-2026-111057Mercury: Unauthenticated Remote Code Execution in /api/terminals - access control bypass
Critical 10.0
In plain English
A critical-severity improper access control in mercury from mljar. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.7% (higher than 53% of all known vulnerabilities). Ready-made attack tooling exists: public proof-of-concept code. Fixed versions are available - upgrade the affected package.
Official 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.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| PyPI | mercury | 3.2.4 | GHSA-f8c7-rwf9-fmgm |
Affected products (as reported)
Weakness: CWE-185, CWE-284 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
References
- https://github.com/mljar/mercury/security/advisories/GHSA-f8c7-rwf9-fmgm x_refsource_CONFIRM
- https://github.com/mljar/mercury/commit/8c467129037ee9df269d543ac217ffd33b97bf3f x_refsource_MISC
- https://github.com/mljar/mercury/releases/tag/v3.2.4 x_refsource_MISC