Description
ToolUniverse ran caller-supplied Python inside a sandbox that could be escaped, on a server that required no authentication. The executor behind the python_code_executor tool, in python_executor_tool.py, inspected the submitted source for a denied list of attribute names and calls but left the attribute-lookup builtins available and did not stop a dunder attribute reached through a string lookup or through a module already permitted, so a caller could walk from a literal's class to its base and enumerate subclasses to obtain a reference to the process and subprocess modules. A per-call argument also let the caller widen the import allow-list before the inspection ran. The HTTP and MCP servers in http_api_server.py and smcp_server.py bound to every interface with debugging enabled and no authentication, so any caller able to reach the port executed code as the server process. Version 1.3.0 adds bearer-token authentication, defaults the bind address to loopback, and hardens the attribute checks.
Published: 2026-08-27
Score: 9.3 Critical
EPSS: < 1% Very Low
KEV: No
Impact: Remote Code Execution
Action: Immediate Patch
AI Analysis

Impact

ToolUniverse allowed a user to execute arbitrary Python code without any authentication or sandbox restrictions. The python_code_executor component performed minimal attribute filtering, permitting attribute lookups that could be exploited via name mangling or module imports. An attacker could leverage these gaps to escape the sandbox, obtain references to the process and subprocess modules, and ultimately execute arbitrary commands on the host. The flaw enabled a full remote code execution scenario, compromising confidentiality, integrity, and availability of the underlying server.

Affected Systems

The vulnerability affects ToolUniverse versions up to and including 1.2.6, released by mims-harvard. The scripts http_api_server.py and smcp_server.py in those releases exposed their endpoints on all network interfaces with debugging enabled and no authentication, meaning any network‑accessible client could submit malicious code. Versions starting at 1.3.0 have been fixed by introducing bearer‑token authentication, binding servers to localhost by default, and tightening attribute checks.

Risk and Exploitability

The flaw carries a CVSS score of 9.3, indicating critical severity. EPSS is not available, and the vulnerability is not listed in CISA's KEV catalog, but the lack of authentication and exposed network interfaces mean that an attacker only needs to reach the service's port to launch an exploit. The vulnerability is fully exploitable in a single step, with no required privileges on the client side. Given these conditions, the risk remains high until patched or mitigated by blocking network access.

Generated by OpenCVE AI on August 27, 2026 at 18:16 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update ToolUniverse to version 1.3.0 or later, which adds authentication, hardens the sandbox, and limits network exposure.
  • If an immediate update is not possible, configure firewalls or network controls to allow the HTTP and MCP servers only from trusted local endpoints, and disable debugging mode.
  • Disable or remove the python_code_executor endpoint if it is not required, thereby preventing execution of arbitrary code.

Generated by OpenCVE AI on August 27, 2026 at 18:16 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 28 Aug 2026 16:45:00 +0000

Type Values Removed Values Added
First Time appeared Mims-harvard
Mims-harvard tooluniverse
Vendors & Products Mims-harvard
Mims-harvard tooluniverse

Thu, 27 Aug 2026 18:00:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Thu, 27 Aug 2026 16:45:00 +0000

Type Values Removed Values Added
Description ToolUniverse ran caller-supplied Python inside a sandbox that could be escaped, on a server that required no authentication. The executor behind the python_code_executor tool, in python_executor_tool.py, inspected the submitted source for a denied list of attribute names and calls but left the attribute-lookup builtins available and did not stop a dunder attribute reached through a string lookup or through a module already permitted, so a caller could walk from a literal's class to its base and enumerate subclasses to obtain a reference to the process and subprocess modules. A per-call argument also let the caller widen the import allow-list before the inspection ran. The HTTP and MCP servers in http_api_server.py and smcp_server.py bound to every interface with debugging enabled and no authentication, so any caller able to reach the port executed code as the server process. Version 1.3.0 adds bearer-token authentication, defaults the bind address to loopback, and hardens the attribute checks.
Title ToolUniverse through 1.2.6 Unauthenticated Remote Code Execution via python_code_executor Sandbox Escape
Weaknesses CWE-94
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'}

cvssV4_0

{'score': 9.3, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

Mims-harvard Tooluniverse
cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-08-29T11:48:10.764Z

Reserved: 2026-08-26T16:00:32.344Z

Link: CVE-2026-81096

cve-icon Vulnrichment

Updated: 2026-08-27T18:13:11.012Z

cve-icon NVD

Status : Received

Published: 2026-08-27T17:20:51.950

Modified: 2026-08-27T20:18:49.567

Link: CVE-2026-81096

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-28T16:14:32Z

Weaknesses
  • CWE-94

    Improper Control of Generation of Code ('Code Injection')