CVE-2026-31993: OpenClaw: exec approval bypass allows RCE on macOS
MEDIUMCVE-2026-31993 is an allowlist parsing mismatch in OpenClaw's macOS companion app where authenticated operators can craft shell-chain payloads that pass incomplete allowlist validation and execute arbitrary commands on the paired host. While the CVSS score of 4.8 reflects high attack complexity and privilege requirements (operator.write), the EPSS places this in the top 79th percentile of exploitation likelihood — suggesting meaningful real-world interest despite no public exploit or KEV listing. With AIID incident #1368 already documenting malicious skill abuse and credential theft in the OpenClaw ecosystem, a threat actor who has already compromised an operator account has a clear escalation path to host-level command execution via this bypass. Organizations running OpenClaw with macOS companion nodes should upgrade to 2026.2.22+ immediately and audit all operator.write role assignments.
What is the risk?
Medium risk overall, but elevated in AI agent deployments where operator accounts may be shared or poorly governed. Exploitation requires operator.write credentials and user interaction, making mass exploitation unlikely. However, for environments where an operator account is already compromised — a realistic scenario given AIID #1368's documented credential-theft activity in the OpenClaw ecosystem — this vulnerability enables a significant escalation from agent-level access to host-level command execution. The 396 historical CVEs in this package indicate persistent security debt. Operators running beta macOS nodes alongside production agent workloads face the highest exposure.
How does the attack unfold?
What systems are affected?
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| OpenClaw | pip | — | No patch |
Do you use OpenClaw? You're affected.
How severe is it?
What is the attack surface?
What should I do?
5 steps-
Patch: Upgrade OpenClaw to version 2026.2.22 or later (patches committed at 5da03e6 and e371da3 per vendor advisory GHSA-5f9p-f3w2-fwch).
-
Access control: Audit all accounts with operator.write privileges and apply least-privilege; revoke unused or shared operator roles immediately.
-
Workaround: If patching is not immediately possible, disable macOS beta node pairing until the fix is applied.
-
Detection: Review exec audit logs on paired macOS nodes for shell-chain invocations containing pipe sequences, semicolons, or command chaining operators that deviate from approved templates.
-
Monitor: Subscribe to the VulnCheck advisory for exploitation indicators as public exploit development may follow given the EPSS percentile.
What does CISA's SSVC say?
Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.
How is it classified?
Which compliance frameworks are affected?
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2026-31993?
CVE-2026-31993 is an allowlist parsing mismatch in OpenClaw's macOS companion app where authenticated operators can craft shell-chain payloads that pass incomplete allowlist validation and execute arbitrary commands on the paired host. While the CVSS score of 4.8 reflects high attack complexity and privilege requirements (operator.write), the EPSS places this in the top 79th percentile of exploitation likelihood — suggesting meaningful real-world interest despite no public exploit or KEV listing. With AIID incident #1368 already documenting malicious skill abuse and credential theft in the OpenClaw ecosystem, a threat actor who has already compromised an operator account has a clear escalation path to host-level command execution via this bypass. Organizations running OpenClaw with macOS companion nodes should upgrade to 2026.2.22+ immediately and audit all operator.write role assignments.
Is CVE-2026-31993 actively exploited?
No confirmed active exploitation of CVE-2026-31993 has been reported, but organizations should still patch proactively.
How to fix CVE-2026-31993?
1. Patch: Upgrade OpenClaw to version 2026.2.22 or later (patches committed at 5da03e6 and e371da3 per vendor advisory GHSA-5f9p-f3w2-fwch). 2. Access control: Audit all accounts with operator.write privileges and apply least-privilege; revoke unused or shared operator roles immediately. 3. Workaround: If patching is not immediately possible, disable macOS beta node pairing until the fix is applied. 4. Detection: Review exec audit logs on paired macOS nodes for shell-chain invocations containing pipe sequences, semicolons, or command chaining operators that deviate from approved templates. 5. Monitor: Subscribe to the VulnCheck advisory for exploitation indicators as public exploit development may follow given the EPSS percentile.
What systems are affected by CVE-2026-31993?
This vulnerability affects the following AI/ML architecture patterns: agent frameworks, AI agent deployments with macOS companion apps, local AI agent execution environments.
What is the CVSS score for CVE-2026-31993?
CVE-2026-31993 has a CVSS v3.1 base score of 4.8 (MEDIUM). The EPSS exploitation probability is 0.29%.
What is the AI security impact?
Affected AI Architectures
MITRE ATLAS Techniques
AML.T0012 Valid Accounts AML.T0050 Command and Scripting Interpreter AML.T0053 AI Agent Tool Invocation AML.T0107 Exploitation for Defense Evasion Compliance Controls Affected
What are the technical details?
Original Advisory
OpenClaw versions prior to 2026.2.22 contain an allowlist parsing mismatch vulnerability in the macOS companion app that allows authenticated operators to bypass exec approval checks. Attackers with operator.write privileges and a paired macOS beta node can craft shell-chain payloads that pass incomplete allowlist validation and execute arbitrary commands on the paired host.
Exploitation Scenario
An adversary who has obtained operator.write credentials — for example via credential theft from an OpenClaw agent configuration file (a documented attack vector per AIID #1368) or account phishing — pairs with a macOS beta node. They craft a shell-chain payload such as `approved_cmd | malicious_exfil_cmd` that exploits the incomplete allowlist parsing: the macOS companion app validates only the leading command token against the allowlist, allowing the chained portion to pass unchecked. The operator submits the payload through the exec approval interface; a legitimate admin approves what appears to be a benign, allowlisted command. The macOS host executes the full chain including the malicious component, granting the attacker arbitrary code execution outside the agent sandbox and access to all host resources including API keys and agent configuration.
Weaknesses (CWE)
CWE-184 — Incomplete List of Disallowed Inputs: The product implements a protection mechanism that relies on a list of inputs (or properties of inputs) that are not allowed by policy or otherwise require other action to neutralize before additional processing takes place, but the list is incomplete.
- [Implementation] Do not rely exclusively on detecting disallowed inputs. There are too many variants to encode a character, especially when different environments are used, so there is a high likelihood of missing some variants. Only use detection of disallowed inputs as a mechanism for detecting suspicious activity. Ensure that you are using other protection mechanisms that only identify "good" input - such as lists of allowed inputs - and ensure that you are properly encoding your outputs.
Source: MITRE CWE corpus.
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:N/I:H/A:L References
- github.com/openclaw/openclaw/commit/5da03e622119fa012285cdb590fcf4264c965cb5 patch
- github.com/openclaw/openclaw/commit/e371da38aab99521c4e076cd3d95fd775e00b784 patch
- github.com/openclaw/openclaw/security/advisories/GHSA-5f9p-f3w2-fwch vendor-advisory
- vulncheck.com/advisories/openclaw-allowlist-parsing-mismatch-in-system-run-shell-chains third-party-advisory
Timeline
Related Vulnerabilities
CVE-2026-33579 9.9 OpenClaw: scope bypass escalates low-priv to admin
Same package: openclaw CVE-2026-32922 9.9 OpenClaw: privilege escalation to RCE via token scope bypass
Same package: openclaw CVE-2026-30741 9.8 OpenClaw: RCE via request-side prompt injection
Same package: openclaw CVE-2026-32038 9.8 OpenClaw: sandbox bypass enables container lateral movement
Same package: openclaw CVE-2026-53838 9.8 OpenClaw: approval scope bypass via reconnection state
Same package: openclaw