OpenClaw macOS companion app (beta): allowlist parsing mismatch for system.run shell chains
🔗 CVE IDs covered (1)
📋 Description
Summary
In the macOS companion app (currently beta), a parsing mismatch in exec approvals could let shell-chain payloads pass allowlist checks in system.run under specific settings.
Impact
This path requires all of the following:
- authenticated caller with
operator.write - paired macOS beta node host
- exec approvals set to
security=allowlistandask=on-miss
Under those conditions, a shell-chain command could be approved from an incomplete command view and then executed on the paired macOS host.
Default Install Status
Default installs are not affected.
Affected Packages / Versions
- Package:
openclaw(npm) - Affected:
<= 2026.2.21-2 - Patched (planned next release):
>= 2026.2.22
Technical Details
The fix hardens macOS allowlist resolution by evaluating shell chains per segment and failing closed on unsafe shell-substitution parsing in allowlist mode.
Product Status Note
The affected macOS companion app path is currently in beta.
Fix Commit(s)
5da03e622119fa012285cdb590fcf4264c965cb5e371da38aab99521c4e076cd3d95fd775e00b784
Release Process Note
patched_versions is pre-set to the planned next npm release (2026.2.22) so once that version is published, this advisory can be published without additional metadata edits.
OpenClaw thanks @tdjackey for reporting.
🎯 Affected products1
- npm/openclaw:< 2026.2.22
🔗 References (6)
- https://github.com/openclaw/openclaw/security/advisories/GHSA-5f9p-f3w2-fwch
- https://github.com/openclaw/openclaw/commit/5da03e622119fa012285cdb590fcf4264c965cb5
- https://github.com/openclaw/openclaw/commit/e371da38aab99521c4e076cd3d95fd775e00b784
- https://nvd.nist.gov/vuln/detail/CVE-2026-31993
- https://www.vulncheck.com/advisories/openclaw-allowlist-parsing-mismatch-in-system-run-shell-chains
- https://github.com/advisories/GHSA-5f9p-f3w2-fwch