OpenClaw’s browser control API accepted user-supplied output paths for trace/download files without consistently constraining writes to OpenClaw-managed temporary directories.
If an attacker can access the browser control API, they could attempt to write trace/download output files outside intended temp roots, depending on process filesystem permissions.
openclaw < 2026.2.13
openclaw >= 2026.2.13
Upgrade to 2026.2.13 or later.
The fix constrains output paths for:
POST /trace/stopPOST /wait/downloadPOST /downloadAll three now enforce OpenClaw temp-root boundaries and reject traversal/escape paths.
Thanks to Adnan Jakati (@jackhax) of Praetorian for responsible disclosure.
Fix shipped in PR #15652 and merged to main on February 13, 2026 (7f0489e4731c8d965d78d6eac4a60312e46a9426).
Fix commit 7f0489e4731c8d965d78d6eac4a60312e46a9426 confirmed on main and in v2026.2.14. Upgrade to openclaw >= 2026.2.13.
{
"cwe_ids": [
"CWE-22"
],
"github_reviewed": true,
"github_reviewed_at": "2026-02-18T17:38:39Z",
"nvd_published_at": "2026-03-05T22:16:18Z",
"severity": "HIGH"
}