CVE-2026-81096: ToolUniverse through 1.2.6 Unauthenticated Remote Code Execution via python_code_executor Sandbox Escape
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.
Security readout for executives and security teams
Plain-English summary
ToolUniverse through version 1.2.6 can let an unauthenticated network caller escape its Python sandbox and run code with the server process’s privileges. Systems exposing the HTTP or MCP service are at risk of data theft, unauthorized changes, and service disruption.
Executive priority
Treat internet-accessible or broadly reachable deployments as an immediate remediation priority. Upgrade promptly, restrict network access, and investigate suspicious activity because successful exploitation could compromise confidentiality, integrity, and availability with server-process privileges.
Technical view
The python_code_executor relied on deny-list inspection but retained attribute-lookup capabilities and allowed per-call import-list expansion. Attackers could bypass inspection, traverse Python object relationships, and reach process-execution functionality. HTTP and MCP servers compounded the flaw by binding to every interface with debugging enabled and no authentication.
Likely exposure
Highest exposure exists where ToolUniverse 1.2.6 or earlier runs python_code_executor and its HTTP or MCP port is reachable by untrusted networks. Loopback-only or otherwise network-restricted deployments reduce reachability, but the vulnerable sandbox remains unsafe if an untrusted caller can access it.
Exploitation context
The supplied sources describe unauthenticated remote code execution with CVSS 10.0. They do not establish active exploitation, and the CVE is not identified as KEV in the bundle. Exploitation requires network access to a vulnerable service endpoint.
Researcher notes
Version 1.3.0 reportedly adds bearer-token authentication, defaults binding to loopback, and hardens attribute checks. The bundle supports the sandbox-escape mechanism and unauthenticated exposure, but provides no evidence of exploitation in the wild or details sufficient to determine deployment prevalence.
Mitigation direction
Upgrade ToolUniverse to version 1.3.0 or later.
Enable bearer-token authentication and protect token storage and distribution.
Bind services to loopback unless remote access is explicitly required.
Restrict HTTP and MCP ports to trusted networks.
Disable python_code_executor where untrusted callers do not require it.
Validation and detection
Inventory ToolUniverse deployments and confirm installed versions.
Check whether HTTP or MCP services listen beyond loopback.
Verify bearer-token authentication is required for every exposed endpoint.
Review firewall and access-control rules for ToolUniverse ports.
Inspect server logs for unexpected executor requests or process activity.
Validate version 1.3.0 controls in a non-production environment.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-94: Code execution behavior lookup
Code execution and unsafe deserialization weaknesses often justify reviewing execution behavior and process telemetry. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references code or command execution, so execution technique review may help defensive triage. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
The CVE wording references authentication or credential exposure, so valid-account and credential-access review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
The CVE wording references privilege impact, so privilege escalation and authorization behavior review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
2CVSS vectors
3Timeline events
1ADP providers
5Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: yesTechnical Impact: total
CVSS vector scores
2 official scores
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.