Impact
The @ai-sdk/harness-opencode tool relay authorizes requests from any process whose command line contains an allowed helper script path (host-tool-mcp.mjs). This allows untrusted code executing in the sandbox to invoke arbitrary host-exposed tools including secret lookups, deployment operations, and cloud API calls without a corresponding model-authorized tool-call event.
Exploitation requires:
- Linux environment (the vulnerable fallback checks
process.platform === 'linux' and reads /proc)
- An active harness session with one or more host-provided tools
- Untrusted code executing in the sandbox (e.g. a malicious dependency, build script, or lifecycle hook)
Patches
Upgrade to @ai-sdk/harness-opencode > 1.0.27
The fix removes the process-path authorization fallback entirely. Relay requests are now only accepted after exact, short-lived, one-time authorization matching the tool name and input from a bridge-observed model event.
Workarounds
- Do not run the OpenCode harness on untrusted repositories or with untrusted dependencies
- Limit host-exposed tools to non-sensitive operations when working with untrusted code
References
Impact
The
@ai-sdk/harness-opencodetool relay authorizes requests from any process whose command line contains an allowed helper script path (host-tool-mcp.mjs). This allows untrusted code executing in the sandbox to invoke arbitrary host-exposed tools including secret lookups, deployment operations, and cloud API calls without a corresponding model-authorized tool-call event.Exploitation requires:
process.platform === 'linux'and reads/proc)Patches
Upgrade to @ai-sdk/harness-opencode > 1.0.27
The fix removes the process-path authorization fallback entirely. Relay requests are now only accepted after exact, short-lived, one-time authorization matching the tool name and input from a bridge-observed model event.
Workarounds
References