A path confinement bypass in OpenClaw ZIP extraction allowed writes outside the intended destination when a pre-existing symlink was present under the extraction root.
openclaw (npm)2026.2.21-2<= 2026.2.21-22026.2.22The vulnerable path was in src/infra/archive.ts ZIP extraction logic. Output-path checks were lexical, but writes could still traverse an existing symlink in destination path segments.
The fix blocks this by:
Patched version is pre-set to the planned next release (2026.2.22).
Once npm release 2026.2.22 is published, the advisory can be published without further field edits.
OpenClaw thanks @tdjackey for reporting.
{
"cwe_ids": [
"CWE-59"
],
"github_reviewed": true,
"github_reviewed_at": "2026-03-03T23:09:31Z",
"nvd_published_at": null,
"severity": "HIGH"
}