| Advisory ID | github_osv/GHSA-vj3g-5px3-gr46 |
| Aliases |
CVE-2026-22171
|
| Summary | OpenClaw vulnerable to path traversal in Feishu media temp-file naming allows writes outside os.tmpdir() ## 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. |
| Status | Published |
| Exploitability | 0.5 |
| Weighted Severity | 6.2 |
| Risk | 3.1 |
| Affected and Fixed Packages | Package Details |
| Introduced and Fixed Package Commit Patches | Package Commit Patches Details |
| System | Score | Found at |
|---|---|---|
| cvssv4 | 6.9 | https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/03/GHSA-vj3g-5px3-gr46/GHSA-vj3g-5px3-gr46.json |
| generic_textual | MODERATE |
| Reference id | Reference type | URL |
|---|---|---|
| https://github.com/openclaw/openclaw | ||
| c821099157a9767d4df208c6b12f214946507871 | Other | https://github.com/openclaw/openclaw/commit/c821099157a9767d4df208c6b12f214946507871 |
| cdb00fe2428000e7a08f9b7848784a0049176705 | Other | https://github.com/openclaw/openclaw/commit/cdb00fe2428000e7a08f9b7848784a0049176705 |
| CVE-2026-22171 | https://nvd.nist.gov/vuln/detail/CVE-2026-22171 | |
| ec232a9e2dff60f0e3d7e827a7c868db5254473f | Other | https://github.com/openclaw/openclaw/commit/ec232a9e2dff60f0e3d7e827a7c868db5254473f |
| GHSA-vj3g-5px3-gr46 | Advisory | https://github.com/openclaw/openclaw/security/advisories/GHSA-vj3g-5px3-gr46 |
| openclaw-path-traversal-in-feishu-media-temporary-file-naming | Advisory | https://www.vulncheck.com/advisories/openclaw-path-traversal-in-feishu-media-temporary-file-naming |
No EPSS data available for this advisory.
| Patch URL | |
|---|---|
| There are no known patches. | |
| Attack Vector (AV) | Attack Complexity (AC) | Attack Requirements (AT) | Privileges Required (PR) | User Interaction (UI) | Vulnerable System Impact Confidentiality (VC) | Vulnerable System Impact Integrity (VI) | Vulnerable System Impact Availability (VA) | Subsequent System Impact Confidentiality (SC) | Subsequent System Impact Integrity (SI) | Subsequent System Impact Availability (SA) |
|---|---|---|---|---|---|---|---|---|---|---|
network adjacent local physical |
low high |
none present |
none low high |
none passive active |
high low none |
high low none |
high low none |
high low none |
high low none |
high low none |
Vector: SSVCv2/E:N/A:Y/T:P/P:M/B:A/M:M/D:T/2026-03-18T14:04:18Z/
Decision: Track
Source URL: https://github.com/cisagov/vulnrichment/blob/develop/2026/22xxx/CVE-2026-22171.json
Source Advisory: vulnrichment/CVE-2026-22171
[{'Exploitation': 'none'},
{'Automatable': 'yes'},
{'Technical Impact': 'partial'},
{'Mission Prevalence': 'minimal'},
{'Public Well-being Impact': 'material'},
{'Mission & Well-being': 'medium'}]