OpenClaw's dispatch-wrapper depth-cap mismatch can bypass shell-wrapper approval gating in system.run allowlist mode
Summary
A wrapper-depth parsing mismatch in system.run allowed nested transparent dispatch wrappers (for example repeated /usr/bin/env) to suppress shell-wrapper detection while still matching allowlist resolution. In security=allowlist + ask=on-miss, this could bypass the expected approval prompt for shell execution.
Severity / Trust Model
OpenClaw’s documented model treats authenticated gateway callers as trusted operators and exec approvals as operator guardrails. This issue is still a real approval-boundary bypass and is triaged as Medium in that model.
Technical Details
- Dispatch-wrapper unwrapping stopped at
MAX_DISPATCH_WRAPPER_DEPTH. - Shell-wrapper extraction could return non-wrapper once depth was exhausted.
- Allowlist resolution could still succeed on partially unwrapped argv beginning with
/usr/bin/env. - Result: nested wrapper chains could execute
/bin/sh -c ...without fresh approval inallowlist+ask=on-miss.
Affected Packages / Versions
- Package:
openclaw(npm) - Latest published version at triage time:
2026.2.23 - Vulnerable versions:
<= 2026.2.23 - Patched versions (planned next release):
>= 2026.2.24
Fix Commit(s)
57c9a18180c8b14885bbd95474cbb17ff2d03f0b
Verification
- Added regression coverage for depth-overflow wrapper chains at resolution and
system.runinvocation layers. - Reproduced previous PoC behavior before fix, then confirmed denial after fix with
SYSTEM_RUN_DENIED: approval required.
Release Process Note
patched_versions is pre-set to the planned next release (2026.2.24) so once npm publish is complete, advisory publication can proceed without additional version edits.
OpenClaw thanks @tdjackey for reporting.
Publication Update (2026-02-25)
openclaw@2026.2.24 is published on npm and contains the fix commit(s) listed above. This advisory now marks >= 2026.2.24 as patched.
Czego dotyczy
Kliknij technologię, aby zobaczyć wszystkie dotyczące jej podatności.
| Platforma | Paczka | Podatne wersje | Poprawka w wersji |
|---|---|---|---|
| Paczka npm | openclaw | < 2026.2.24 | 2026.2.24 |
Odnośniki
- https://github.com/openclaw/openclaw/security/advisories/GHSA-ccg8-46r6-9qgj
- https://nvd.nist.gov/vuln/detail/CVE-2026-32023
- https://github.com/openclaw/openclaw/commit/57c9a18180c8b14885bbd95474cbb17ff2d03f0b
- https://github.com/openclaw/openclaw
- https://www.vulncheck.com/advisories/openclaw-approval-gating-bypass-via-dispatch-wrapper-depth-cap-mismatch-in-system-run
- Wektor CVSS
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H- Słabość (CWE)
CWE-284, CWE-863- Platforma
- npm
- Paczka
openclaw- Ujawniono
- 03.03.2026
- Aktualizacja
- 11.10.2026 10:22
Źródła i licencje
OSV / GitHub Advisory Database - GHSA-ccg8-46r6-9qgj - CC BY 4.0
Historia podatności: openclaw
Wszystkie opisane podatności tej paczki (Paczka npm), od najnowszej. Widać, czy to jednorazowa wpadka, czy paczka, której trzeba pilnować.
- Wszystkich wpisów
- 588
- Pierwsza → ostatnia
- 02.2026 07.2026
- Bez poprawki
- 9
- Wykorzystywana w atakach
- 0
Rozkład istotności
- Krytyczna 20
- Wysoka 215
- Średnia 299
- Niska 54
Ujawnienia w latach
- 2026: 588
-
OpenClaw's dispatch-wrapper depth-cap mismatch can bypass shell-wrapper approval gating in system.run allowlist mode ten wpis
Dowiedz się, które podatności dotyczą Twojej aplikacji
Po podłączeniu integracji DockRay i włączeniu raportowania oprogramowania DockRay porównuje zgłoszone wersje komponentów ze znanymi podatnościami i powiadamia o potwierdzonych dopasowaniach. Zakres zależy od obsługiwanej technologii i dostępnych biuletynów.