{"description":"Trending threats, MITRE ATT\u0026CK coverage, and detection metadata. Fed continuously.","favicon":"https://feed.craftedsignal.io/favicon-32x32.png","feed_url":"https://feed.craftedsignal.io/products/mercury-3.0.0-3.2.3/feed.json","home_page_url":"https://feed.craftedsignal.io/","icon":"https://feed.craftedsignal.io/apple-touch-icon.png","items":[{"_cs_actors":[],"_cs_cpes":["cpe:2.3:a:mercury_project:mercury:*:*:*:*:*:*:*:*"],"_cs_cves":[{"cvss":10,"id":"CVE-2026-111057"}],"_cs_exploited":false,"_cs_has_poc":false,"_cs_poc_references":[],"_cs_products":["Mercury (3.0.0-3.2.3)"],"_cs_severities":["critical"],"_cs_tags":["web-application","rce","python"],"_cs_type":"advisory","_cs_vendors":["Mercury"],"content_html":"\u003cp\u003eMercury 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 \u003ccode\u003eBLOCKED_PATTERNS\u003c/code\u003e configuration. This syntax error results in the concatenation of \u003ccode\u003e/lab\u003c/code\u003e and \u003ccode\u003e/api/terminals\u003c/code\u003e 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.\u003c/p\u003e\n\u003ch2 id=\"attack-chain\"\u003eAttack Chain\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eAttacker performs reconnaissance to identify a web application running the Mercury framework.\u003c/li\u003e\n\u003cli\u003eAttacker crafts a malicious HTTP request targeting the \u003ccode\u003e/api/terminals\u003c/code\u003e endpoint.\u003c/li\u003e\n\u003cli\u003eThe Mercury web service processes the request, and due to the \u003ccode\u003eBLOCKED_PATTERNS\u003c/code\u003e configuration error, the terminal endpoint check is bypassed.\u003c/li\u003e\n\u003cli\u003eThe request is forwarded to the underlying Jupyter Server process.\u003c/li\u003e\n\u003cli\u003eThe Jupyter Server grants the unauthenticated request, allowing the initiation of a new terminal session.\u003c/li\u003e\n\u003cli\u003eThe attacker interacts with the exposed terminal API to spawn a persistent shell or execute arbitrary commands.\u003c/li\u003e\n\u003cli\u003eAttacker executes post-exploitation commands to exfiltrate data or establish secondary persistence.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch2 id=\"impact\"\u003eImpact\u003c/h2\u003e\n\u003cp\u003eSuccessful 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.\u003c/p\u003e\n\u003ch2 id=\"recommendation\"\u003eRecommendation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade all instances of Mercury to version 3.2.4 or later immediately to patch the configuration error documented in CVE-2026-111057.\u003c/li\u003e\n\u003cli\u003eAudit access logs for any POST or GET requests to \u003ccode\u003e/api/terminals\u003c/code\u003e originating from unauthorized or external IP addresses.\u003c/li\u003e\n\u003cli\u003eEnsure 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.\u003c/li\u003e\n\u003cli\u003eDeploy network-level ingress filtering to restrict access to management endpoints of the Mercury/Jupyter environment.\u003c/li\u003e\n\u003c/ul\u003e\n","date_modified":"2026-10-19T18:09:54Z","date_published":"2026-10-19T18:09:54Z","id":"https://feed.craftedsignal.io/briefs/2026-10-mercury/","summary":"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.","title":"CVE-2026-111057 - Unauthenticated Remote Code Execution in Mercury","url":"https://feed.craftedsignal.io/briefs/2026-10-mercury/"}],"language":"en","title":"CraftedSignal Threat Feed - Mercury (3.0.0-3.2.3)","version":"https://jsonfeed.org/version/1.1"}