GitHub Advisoryadvisory · npm

GHSA-q399-23r3-hfx4 OpenClaw: system.run approvals did not bind PATH-token executable identity, enabling post-approval executable rebind

HIGH Published 2026-03-02 Modified 2026-03-19 Official page ↗
Aliases
CVE-2026-31997
Ecosystem
npm
Packages
openclaw
Severity
High
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
Weaknesses
CWE-367, CWE-426
Reviewed
2026-03-02

Affected packages

• npm openclaw: < 2026.3.1 → fixed in 2026.3.1

Description

Summary For `host=node` runs, approvals validated command context but did not pin executable identity for non-path-like `argv[0]` tokens (for example `tr`). If PATH resolution changed after approval, execution could run a different binary. Impact A previously approved action could execute a different executable than the operator approved. Fix Node `system.run` approvals now require immutable `systemRunPlan` data, and path-token commands are pinned to canonical executable identity (`realpath`) across approval and execution. Affected and Patched Versions • Affected: `<= 2026.2.26` • Patched: `2026.3.1`

Related

Alias · CVE (1)

  • CVE-2026-31997 OpenClaw versions prior to 2026.3.1 fail to pin executable identity for non-path-like argv[0] tokens in system.run approvals, allowing… vulnerability

Weakness · CWE (2)

  • CWE-367 Time-of-check Time-of-use (TOCTOU) Race Condition weakness
  • CWE-426 Untrusted Search Path weakness

References