OpenClaw accepted prototype-reserved keys in runtime /debug set override object values (__proto__, constructor, prototype).
/debug is disabled by default, and exploitation requires an already authorized /debug set caller. No unauthenticated vector was identified.
This issue affects runtime in-memory overrides only (non-persistent and cleared on restart/reset). Given the required prior authorization boundary, this is treated as defense-in-depth hardening for command flag evaluation.
openclaw (npm)2026.2.19-2<= 2026.2.19-22026.2.21bash, config, debug) now require own-property boolean flags, preventing inherited prototype values from enabling commands.fbb79d4013000552d6a2c23b9613d8b3cb92f6b6patched_versions is pre-set to 2026.2.21 so after the npm release is live, this advisory can be published immediately.
OpenClaw thanks @tdjackey for reporting.
{
"cwe_ids": [
"CWE-1321"
],
"github_reviewed": true,
"github_reviewed_at": "2026-03-03T22:12:20Z",
"nvd_published_at": "2026-03-18T02:16:23Z",
"severity": "LOW"
}