CVE-2026-32978: OpenClaw: Unrecognized script runners could bypass `system.run` approval integrity
Summary In affected versions of openclaw, node-host system.run approvals did not bind a mutable file operand for some script runners, including forms such as tsx and jiti. An attacker could obtain approval for a benign script-runner command, rewrite the referenced script on disk, and have the modified code execute under the already approved run context.
Published Mar 13, 2026 · Updated Apr 6, 2026
Affected packages
openclaw
- Ecosystem
- npm
- Affected
- < 2026.3.11
- Fixed in
- 2026.3.11
- Check
npm ls openclaw
Advisory details
From the GitHub Advisory Database (CC BY 4.0).
Summary
In affected versions of openclaw, node-host system.run approvals did not bind a mutable file operand for some script runners, including forms such as tsx and jiti. An attacker could obtain approval for a benign script-runner command, rewrite the referenced script on disk, and have the modified code execute under the already approved run context.
Impact
Deployments that rely on node-host system.run approvals for script integrity could execute rewritten local code after operator approval. This can lead to unintended local code execution as the OpenClaw runtime user.
Affected Packages and Versions
- Package:
openclaw(npm) - Affected versions:
< 2026.3.11 - Fixed in:
2026.3.11
Technical Details
The approval planner only tracked mutable script operands for a hardcoded set of interpreters and runtime forms. Commands such as tsx ./run.ts and jiti ./run.ts fell through without a bound file snapshot, so the final pre-execution revalidation step was skipped.
Fix
OpenClaw now fails closed for approval-backed interpreter and runtime commands unless it can bind exactly one concrete local file operand, and it extends direct-file binding coverage for additional runtime forms. The fix shipped in [email protected].
Workarounds
Upgrade to 2026.3.11 or later.
Credited to tdjackey.
References
- https://github.com/openclaw/openclaw/security/advisories/GHSA-qc36-x95h-7j53
- https://github.com/openclaw/openclaw/releases/tag/v2026.3.11
- https://nvd.nist.gov/vuln/detail/CVE-2026-32978
- https://www.vulncheck.com/advisories/openclaw-approval-bypass-via-unrecognized-script-runners
- https://github.com/advisories/GHSA-qc36-x95h-7j53
How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. No analysis has been written for this entry yet. Methodology
More OpenClaw vulnerabilities
All OpenClaw entriesCVE-2026-35630
OpenClaw: QQBot native approval buttons did not enforce configured approver identity
high8.0Jul 2, 2026CVE-2026-53806
OpenClaw: Combined POSIX shell options could confuse exec revalidation
high8.8Jul 2, 2026CVE-2026-53809
OpenClaw: Embedded runner policy could be confused by provider aliases
medium3.8Jul 2, 2026CVE-2026-53810
OpenClaw's marketplace runtime extension metadata could point at unscanned payloads
high8.8Jul 2, 2026CVE-2026-53811
OpenClaw: Matrix allowFrom could bind to mutable display names
high8.8Jul 2, 2026CVE-2026-53812
OpenClaw's browser act interactions could bypass private-network navigation checks
medium7.7Jul 2, 2026
