GHSA-9q2p-vc84-2rwm: OpenClaw System.run Allow-always Persistence Included Shell-commented Vulnerability
MODERATEGHSA-9q2p-vc84-2rwm is a MODERATE (CVSS 5.0) system.run allow-always persistence included shell-commented vulnerability (CWE-436: Interpretation Conflict) affecting OpenClaw libraries in the npm ecosystem. The issue involves system.run allow-always persistence included shell-commented payload tails. Remediation is available by upgrading affected packages to version 2026.3.7.
GHSA-9q2p-vc84-2rwm at a Glance
Security Impact
CVSS: 5.0
The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L).
How to Fix GHSA-9q2p-vc84-2rwm
To remediate this vulnerability, upgrade all affected OpenClaw dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
npm install openclaw@2026.3.7
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
npm ls openclaw
How to Check if You Are Affected
To determine whether your Node.js application is affected by GHSA-9q2p-vc84-2rwm, inspect your project dependencies using npm:
npm ls openclaw
Analyze the terminal output to locate any version of OpenClaw in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 2026.3.7), your application is affected.
Note: The npm ls openclaw command inspects dependencies declared in your package.json and lockfile; it does not perform automated runtime dynamic scanning.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-436: Interpretation Conflict, where product a handles inputs or steps differently than product b, which causes a to perform incorrect actions based on its perception of b's state. In OpenClaw, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
GHSA-9q2p-vc84-2rwm Affected OpenClaw Versions
1 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
openclaw
|
npm |
< 2026.3.7
|
2026.3.7
|
References
Frequently Asked Questions
What is GHSA-9q2p-vc84-2rwm?
Which OpenClaw versions are affected?
What version fixes GHSA-9q2p-vc84-2rwm?
Is openclaw affected?
What is the CVSS score of GHSA-9q2p-vc84-2rwm?
What CWE is associated with GHSA-9q2p-vc84-2rwm?
How can I check npm dependencies for GHSA-9q2p-vc84-2rwm?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-9q2p-vc84-2rwm",
"modified" : "2026-03-09T19:54:46Z",
"published" : "2026-03-09T19:54:46Z",
"aliases" : [ ],
"summary" : "OpenClaw: system.run allow-always persistence included shell-commented payload tails",
"details" : "OpenClaw's `system.run` allowlist analysis did not honor POSIX shell comment semantics when deriving `allow-always` persistence entries.\n\nA caller in `security=allowlist` mode who received an `allow-always` decision could submit a shell command whose tail was commented out at runtime, for example by using an unquoted `#` before a chained payload. The runtime shell would execute only the pre-comment portion, but allowlist persistence could still analyze and store the non-executed tail as a trusted follow-up command.\n\nLatest published npm version: `2026.3.2`\n\nFixed on `main` on March 7, 2026 in `939b18475d734ed75173f59507e3ebbdfe1992b7` by teaching shell tokenization and chain/pipeline analysis to stop at unquoted shell comments, so allow-always persistence now tracks only commands that the shell can actually execute. Normal real chained commands and quoted `#` literals continue to work.\n\n## Affected Packages / Versions\n\n- Package: `openclaw` (npm)\n- Affected versions: `<= 2026.3.2`\n- Patched version: `>= 2026.3.7`\n\n## Fix Commit(s)\n\n- `939b18475d734ed75173f59507e3ebbdfe1992b7`\n\n## Release Process Note\n\nnpm `2026.3.7` was published on March 8, 2026. This advisory is fixed in the released package.\n\nThanks @tdjackey for reporting.",
"severity" : [ {
"type" : "CVSS_V3",
"score" : "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "npm",
"name" : "openclaw"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"fixed" : "2026.3.7"
} ]
} ],
"database_specific" : {
"last_known_affected_version_range" : "<= 2026.3.2"
}
} ],
"references" : [ {
"type" : "WEB",
"url" : "https://github.com/openclaw/openclaw/security/advisories/GHSA-9q2p-vc84-2rwm"
}, {
"type" : "WEB",
"url" : "https://github.com/openclaw/openclaw/commit/939b18475d734ed75173f59507e3ebbdfe1992b7"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/openclaw/openclaw"
}, {
"type" : "WEB",
"url" : "https://github.com/openclaw/openclaw/releases/tag/v2026.3.7"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-436", "CWE-863" ],
"severity" : "MODERATE",
"github_reviewed" : true,
"github_reviewed_at" : "2026-03-09T19:54:46Z",
"nvd_published_at" : null
}
}