Horizon Alert
Summary of the vulnerability and why it matters
A vulnerability in the Python code executor for ToolUniverse allowed unauthenticated attackers to run arbitrary code on the server. This was possible due to insufficient restrictions on attribute lookups and the server's default configuration to listen on all network interfaces without authentication, making it accessible externally. Version 1.3.0 has been released with security enhancements to address this.
- Code execution vulnerability in ToolUniverse.
- Default configuration allowed external, unauthenticated access.
- Confirm relevance and assess exposure to unauthenticated code execution.
Attack Path
How an attacker could exploit the issue
An attacker could reach a vulnerable Python code execution tool that is exposed with no authentication and bound to all network interfaces. By chaining an argument that widens the import allow-list with a lookup that bypasses attribute checks, an attacker could import sensitive modules like `subprocess` to execute arbitrary code on the server. This could allow them to take control of the server process.
- No authentication required to reach server.
- Escapes sandbox to import sensitive modules.
- Leads to unauthenticated remote code execution.
Live Threat
Current exploitation, exposure, and threat context
When supported by the advisory, unauthenticated attackers could execute arbitrary code on the server by escaping a Python sandbox. This could allow them to compromise the server process.
- Server process could be compromised.
- Sandbox escape via Python attribute lookup.
- Remote code execution on the server.
Operational Fix
Recommended remediation, mitigation, and detection steps
The Python code executor in ToolUniverse allows unauthenticated remote code execution through sandbox escape vulnerabilities. This critical vulnerability, exposed by default network binding and lack of authentication in its HTTP and MCP servers, can be exploited by any reachable caller. Initial actions should focus on identifying all deployments, assessing their reachability and business criticality, confirming ownership, and then prioritizing remediation or mitigation.
- Identify affected instances and owners.
- Verify network reachability and exposure.
- Plan remediation or mitigation by owner.