GitHub Advisoryadvisory · npm

GHSA-qm9x-v7cx-7rq4 OpenClaw's system.run allowlist can be bypassed through an unregistered time dispatch wrapper

HIGH Published 2026-03-26 Modified 2026-04-10 Official page ↗
Aliases
CVE-2026-35666
Ecosystem
npm
Packages
openclaw
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-706, CWE-863
Reviewed
2026-03-26

Affected packages

• npm openclaw: < 2026.3.22 → fixed in 2026.3.22

Description

Summary Allow-always exec approvals did not unwrap /usr/bin/time, so an unregistered time wrapper could bypass executable binding and reuse approval state for the inner command. Affected Packages / Versions • Package: `openclaw` (npm) • Affected: = 2026.3.22 • Latest released tag checked: `v2026.3.23-2` (`630f1479c44f78484dfa21bb407cbe6f171dac87`) • Latest published npm version checked: `2026.3.23-2` Fix Commit(s) • `39409b6a6dd4239deea682e626bac9ba547bfb14` Release Status The fix shipped in `v2026.3.22` and remains present in `v2026.3.23` and `v2026.3.23-2`. Code-Level Confirmation • src/infra/dispatch-wrapper-resolution.ts now unwraps /usr/bin/time and binds approvals to the real inner executable. • src/infra/exec-approvals-allow-always.test.ts ships regression coverage for time-wrapper allow-always approval bypasses. OpenClaw thanks @YLChen-007 for reporting.

Related

Alias · CVE (1)

  • CVE-2026-35666 OpenClaw before 2026.3.22 contains an allowlist bypass vulnerability in system.run approvals that fails to unwrap /usr/bin/time wrappers. vulnerability

Weakness · CWE (2)

  • CWE-706 Use of Incorrectly-Resolved Name or Reference weakness
  • CWE-863 Incorrect Authorization weakness

References