{"id":"CVE-2026-28462","aliases":["EUVD-2026-9908","GHSA-gq9c-wg68-gwj2"],"status":"published","title":"OpenClaw \u003c 2026.2.13 - Path Traversal in Trace and Download Output Paths","description":"OpenClaw versions prior to 2026.2.13 contain a vulnerability in the browser control API in which it accepts user-supplied output paths for trace and download files without consistently constraining writes to temporary directories. Attackers with API access can exploit path traversal in POST /trace/stop, POST /wait/download, and POST /download endpoints to write files outside intended temp roots.","severity":{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.00483,"percentile":0.42148,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-22"],"published":"2026-02-18T17:38:39Z","modified":"2026-10-28T02:30:49Z","fixes":[{"ecosystem":"npm","package":"openclaw","fixed_in":["2026.2.13"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"openclaw","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2026.2.13"}]}]},{"source":"osv","ecosystem":"npm","package":"openclaw","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"2026.2.13"}]}]}],"products":[{"vendor":"openclaw","product":"openclaw"}],"references":[{"url":"https://github.com/openclaw/openclaw/security/advisories/GHSA-gq9c-wg68-gwj2","tags":["vendor-advisory","Vendor Advisory","advisory","web"]},{"url":"https://github.com/openclaw/openclaw/commit/7f0489e4731c8d965d78d6eac4a60312e46a9426","tags":["patch","Patch","fix","web"]},{"url":"https://www.vulncheck.com/advisories/openclaw-path-traversal-in-trace-and-download-output-paths","tags":["third-party-advisory","Third Party Advisory","advisory","web"]},{"url":"https://github.com/openclaw/openclaw/pull/15652","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-28462","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-gq9c-wg68-gwj2"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/28xxx/CVE-2026-28462.json","tags":["advisory"]},{"url":"https://github.com/openclaw/openclaw","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2026-28462","title":"OpenClaw \u003c 2026.2.13 - Path Traversal in Trace and Download Output Paths","description":"OpenClaw versions prior to 2026.2.13 contain a vulnerability in the browser control API in which it accepts user-supplied output paths for trace and download files without consistently constraining writes to temporary directories. Attackers with API access can exploit path traversal in POST /trace/stop, POST /wait/download, and POST /download endpoints to write files outside intended temp roots.","status":"published","published":"2026-03-05T21:59:38.752Z","modified":"2026-03-09T17:26:51.144Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","level":"high","assessor":"cna"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"cna"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:20:01.969981Z"}],"euvd":[{"id":"EUVD-2026-9908","description":"OpenClaw versions prior to 2026.2.13 contain a vulnerability in the browser control API in which it accepts user-supplied output paths for trace and download files without consistently constraining writes to temporary directories. Attackers with API access can exploit path traversal in POST /trace/stop, POST /wait/download, and POST /download endpoints to write files outside intended temp roots.","status":"published","published":"2026-03-05T21:59:38Z","modified":"2026-03-09T17:26:51Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","level":"high"}],"updated_at":"2026-11-02T19:48:07.128863Z"}],"ghsa":[{"id":"GHSA-gq9c-wg68-gwj2","title":"OpenClaw has a path traversal in browser trace/download output paths may allow arbitrary file writes","description":"## Summary\n\n  OpenClaw’s browser control API accepted user-supplied output paths for trace/download files without consistently\n  constraining writes to OpenClaw-managed temporary directories.\n\n  ## Impact\n\n  If an attacker can access the browser control API, they could attempt to write trace/download output files outside\n  intended temp roots, depending on process filesystem permissions.\n\n  ## Affected versions\n\n  `openclaw` `\u003c 2026.2.13`\n\n  ## Fixed versions\n\n  `openclaw` `\u003e= 2026.2.13`\n\n  ## Remediation\n\n  Upgrade to `2026.2.13` or later.\n\n  ## What changed\n\n  The fix constrains output paths for:\n\n  - `POST /trace/stop`\n  - `POST /wait/download`\n  - `POST /download`\n\n  All three now enforce OpenClaw temp-root boundaries and reject traversal/escape paths.\n\n  ## Credits\n\n  Thanks to Adnan Jakati (@jackhax) of Praetorian for responsible disclosure.\n\n  Fix shipped in PR #15652 and merged to `main` on February 13, 2026 (`7f0489e4731c8d965d78d6eac4a60312e46a9426`).\n\n---\n\nFix commit 7f0489e4731c8d965d78d6eac4a60312e46a9426 confirmed on main and in v2026.2.14. Upgrade to `openclaw \u003e= 2026.2.13`.","status":"published","published":"2026-02-18T17:38:39Z","modified":"2026-03-06T01:04:45Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","level":"high"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:39:32.329372Z"}],"nvd":[{"id":"CVE-2026-28462","description":"OpenClaw versions prior to 2026.2.13 contain a vulnerability in the browser control API in which it accepts user-supplied output paths for trace and download files without consistently constraining writes to temporary directories. Attackers with API access can exploit path traversal in POST /trace/stop, POST /wait/download, and POST /download endpoints to write files outside intended temp roots.","status":"published","published":"2026-03-05T22:16:18.873Z","modified":"2026-06-17T10:28:41.2Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"high","assessor":"secondary"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"secondary"},{"version":"3.1","score":9.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H","level":"critical","assessor":"primary"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:12:07.852448Z"}],"osv":[{"id":"CVE-2026-28462","title":"OpenClaw \u003c 2026.2.13 - Path Traversal in Trace and Download Output Paths","description":"OpenClaw versions prior to 2026.2.13 contain a vulnerability in the browser control API in which it accepts user-supplied output paths for trace and download files without consistently constraining writes to temporary directories. Attackers with API access can exploit path traversal in POST /trace/stop, POST /wait/download, and POST /download endpoints to write files outside intended temp roots.","status":"published","published":"2026-03-05T21:59:38.752Z","modified":"2026-10-28T02:30:49.549767755Z","cvss":[{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","level":"high"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T15:45:00.530889Z"},{"id":"GHSA-gq9c-wg68-gwj2","title":"OpenClaw has a path traversal in browser trace/download output paths may allow arbitrary file writes","description":"## Summary\n\n  OpenClaw’s browser control API accepted user-supplied output paths for trace/download files without consistently\n  constraining writes to OpenClaw-managed temporary directories.\n\n  ## Impact\n\n  If an attacker can access the browser control API, they could attempt to write trace/download output files outside\n  intended temp roots, depending on process filesystem permissions.\n\n  ## Affected versions\n\n  `openclaw` `\u003c 2026.2.13`\n\n  ## Fixed versions\n\n  `openclaw` `\u003e= 2026.2.13`\n\n  ## Remediation\n\n  Upgrade to `2026.2.13` or later.\n\n  ## What changed\n\n  The fix constrains output paths for:\n\n  - `POST /trace/stop`\n  - `POST /wait/download`\n  - `POST /download`\n\n  All three now enforce OpenClaw temp-root boundaries and reject traversal/escape paths.\n\n  ## Credits\n\n  Thanks to Adnan Jakati (@jackhax) of Praetorian for responsible disclosure.\n\n  Fix shipped in PR #15652 and merged to `main` on February 13, 2026 (`7f0489e4731c8d965d78d6eac4a60312e46a9426`).\n\n---\n\nFix commit 7f0489e4731c8d965d78d6eac4a60312e46a9426 confirmed on main and in v2026.2.14. Upgrade to `openclaw \u003e= 2026.2.13`.","status":"published","published":"2026-02-18T17:38:39Z","modified":"2026-03-06T01:17:37.70193Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N","level":"high"},{"version":"4.0","score":8.7,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N","level":"high"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T15:46:48.191583Z"}]}}
