CVE-2026-31992 — openclaw
Fix: openclaw/openclaw@3f923e8CVE-2026-31992 is a CWE-184 vulnerability in openclaw. A fix is available for openclaw — see the affected versions and patch details below.
OpenClaw < 2026.2.23 - Allowlist Exec-Guard Bypass via env -S
Exploitation Status
No confirmed exploitation observed yet
- CISA’s own triage has not observed active exploitation or public proof-of-concept code for this CVE as of its last assessment.
Exploitation and automatability from CISA’s SSVC triage for CVE-2026-31992.
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
Real-World Exposure
How broadly this vulnerability is actually deployed: weekly install volume shows current usage, and reverse-dependency count shows how many other packages break if it stays unpatched.
openclawnpmDescription
Summary
In allowlist mode, system.run guardrails could be bypassed through env -S, causing policy-analysis/runtime-execution mismatch for shell wrapper payloads.
Severity Rationale (Medium)
This issue is rated medium because it is a guardrail/policy bypass in OpenClaw's trusted-operator model, not an authentication boundary break.
- Authenticated Gateway callers are trusted operators by design.
execapprovals/allowlists are operator safety controls.- The bug still weakens expected safety behavior and can enable unintended command execution when untrusted content influences tool input.
Affected Packages / Versions
- Package:
openclaw(npm) - Vulnerable versions:
<= 2026.2.22-2 - Patched versions:
>= 2026.2.23
Latest published npm version checked during triage: 2026.2.22-2.
Technical Impact
When /usr/bin/env is allowlisted, env -S 'sh -c ...' could be treated as allowed non-wrapper argv while runtime still executes shell-wrapper semantics.
Fix Commit(s)
a1c4bf07c6baad3ef87a0e710fe9aef127b1f606(core allowlist/runtime parity hardening)3f923e831364d83d0f23499ee49961de334cf58b(explicitenv -Sregressions)
Release Process Note
patched_versions is pre-set to >= 2026.2.23, so this advisory is now public.
OpenClaw thanks @tdjackey for reporting.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 📦npm | openclaw | all versions | 2026.2.23npm install openclaw@2026.2.23 |
Affected Products
openclawopenclawDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for openclaw, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update openclaw to 2026.2.23 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2026-31992 is resolved across your whole dependency graph.
Workarounds
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
Frequently Asked Questions
Is CVE-2026-31992 in your dependencies?
Find it across npm, including transitive dependencies.