GitHub Advisoryadvisory · npm

GHSA-cwj3-vqpp-pmxr OpenClaw's gateway config mutation guard allowed unsafe model-driven config writes

HIGH Published 2026-05-05 Modified 2026-05-05 Official page ↗
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-862
Reviewed
2026-05-05

Affected packages

• npm openclaw: < 2026.4.23 → fixed in 2026.4.23

Description

Summary The agent-facing `gateway` tool protects `config.apply` and `config.patch` with a model-to-operator trust boundary. That guard used a hand-maintained denylist of protected config paths. The config schema outgrew that denylist, leaving sensitive subtrees writable through model-driven gateway config mutations. Impact A prompt-injected or otherwise compromised model running with access to the owner-only `gateway` tool could persist unsafe config changes that crossed security boundaries. Examples included config paths affecting command execution, network/proxy/TLS behavior, credential forwarding, telemetry or hook endpoints, memory/indexing surfaces, and operator policy controls. These changes could survive restart once written to config. Affected Packages / Versions • Package: `openclaw` on npm • Affected: versions before `2026.4.23` • Fixed: `2026.4.23` • Latest stable verified fixed: `[email protected]`, tag `v2026.4.23` Fix OpenClaw replaced the denylist with a fail-closed allowlist. Agent-driven `gateway config.apply` and `gateway config.patch` now permit only narrow agent-tunable prompt/model settings and mention-gating paths. Other config changes are rejected before the gateway mutation RPC is invoked. Fix Commit(s) • `bceda6089aa7b3695cc7696b43c61ae3d01bb0ec` (`fix(gateway): fail closed on runtime config edits`) Severity Severity remains `high`. The vulnerable entry point is owner-only, but the model/agent is not a trusted principal under OpenClaw's security model, and the guard is the explicit model-to-operator boundary for persisted config mutation.

Related

Weakness · CWE (1)

  • CWE-862 Missing Authorization weakness

References