GitHub Advisoryadvisory · npm

GHSA-vj3g-5px3-gr46 OpenClaw vulnerable to path traversal in Feishu media temp-file naming allows writes outside os.tmpdir()

MEDIUM Published 2026-03-03 Modified 2026-03-19 Official page ↗
Aliases
CVE-2026-22171
Ecosystem
npm
Packages
openclaw
Severity
Moderate
CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Weaknesses
CWE-22
Reviewed
2026-03-03

Affected packages

• npm openclaw: < 2026.2.19 → fixed in 2026.2.19

Description

Summary OpenClaw’s Feishu media download flow used untrusted Feishu media keys (`imageKey` / `fileKey`) when building temporary file paths in `extensions/feishu/src/media.ts`. Because those keys were interpolated directly into temp-file paths, traversal segments could escape the temp directory and redirect writes outside `os.tmpdir()`. Impact This is an arbitrary file write issue (within the OpenClaw process file permissions). If an attacker can control Feishu media key values returned to the client (for example via compromised upstream response path), they can influence where downloaded bytes are written. Affected Packages / Versions • Package: `openclaw` (npm) • Latest published npm version at triage: `2026.2.17` • Affected versions: `<= 2026.2.17` • Fixed version: `2026.2.19` Fix Commit(s) • `c821099157a9767d4df208c6b12f214946507871` • `cdb00fe2428000e7a08f9b7848784a0049176705` • `ec232a9e2dff60f0e3d7e827a7c868db5254473f` Remediation The fix removes key-derived temp-file naming and keeps downloads in safe temp locations. Additional hardening isolates SDK `writeFile` calls in per-download temp directories (`mkdtemp`) with deterministic cleanup, enforces Feishu key trust-boundary validation, and adds a repository guard test against dynamic `path.join(os.tmpdir(), \`...${...}\`)` patterns in runtime code. OpenClaw thanks @allsmog for reporting.

Related

Alias · CVE (1)

  • CVE-2026-22171 OpenClaw versions prior to 2026.2.19 contain a path traversal vulnerability in the Feishu media download flow where untrusted media keys… vulnerability

Weakness · CWE (1)

  • CWE-22 Improper Limitation of a Pathname to a Restricted Directory weakness

References