GitHub Advisoryadvisory · npm

GHSA-p4wh-cr8m-gm6c OpenClaw: shell-env trusted-prefix fallback allowed attacker-controlled binary execution via $SHELL

MEDIUM Published 2026-03-03 Modified 2026-06-08 Official page ↗
Aliases
CVE-2026-22217
Ecosystem
npm
Packages
openclaw
Severity
Moderate
CVSS vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
Weaknesses
CWE-184, CWE-829
Reviewed
2026-03-03

Affected packages

• npm openclaw: >= 2026.2.22, < 2026.2.23 → fixed in 2026.2.23

Description

Summary `shell-env` fallback trusted prefix-based executable paths for `$SHELL`, allowing execution of attacker-controlled binaries in local/runtime-env influence scenarios. Details In affected versions, shell selection accepted either: 1. a shell listed in `/etc/shells`, or 2. any executable under hardcoded trusted prefixes (`/bin`, `/usr/bin`, `/usr/local/bin`, `/opt/homebrew/bin`, `/run/current-system/sw/bin`). The selected shell was then executed as a login shell (`-l -c 'env -0'`) for PATH/environment probing. On systems where a trusted-prefix directory is writable (for example common Homebrew layouts under `/opt/homebrew/bin`) and runtime `$SHELL` can be influenced, this enabled attacker-controlled binary execution in OpenClaw process context. The fix removes the trusted-prefix executable fallback and now trusts only shells explicitly registered in `/etc/shells`; otherwise it falls back to `/bin/sh`. Affected Packages / Versions • Package: `openclaw` (npm) • Affected versions: `>= 2026.2.22, = 2026.2.23` Fix Commit(s) • `ff10fe8b91670044a6bb0cd85deb736a0ec8fb55` Release Process Note This advisory sets `patched_versions` to the released version (`2026.2.23`). This advisory now reflects released fix version `2026.2.23`. OpenClaw thanks @tdjackey for reporting.

Related

Alias · CVE (1)

  • CVE-2026-22217 OpenClaw version 2026.2.22 prior to 2026.2.23 contains an arbitrary code execution vulnerability in shell-env that allows attackers to… vulnerability

Weakness · CWE (2)

  • CWE-184 Incomplete List of Disallowed Inputs weakness
  • CWE-829 Inclusion of Functionality from Untrusted Control Sphere weakness

References