CVE-2020-26299:
File System Bounds Escape
9.6
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.71995%
CWE
Published
2/10/2021
Updated
2/1/2023
KEV Status
No
Technology
JavaScript
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
ftp-srv | npm | < 4.4.0 | 4.4.0 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from how path resolution was handled in Windows environments. The commit 457b859 shows critical changes to the _resolvePath
function in src/fs.js
, including adding Windows separator replacement and improved path normalization. The original implementation didn't properly sanitize Windows-style paths before passing to path.resolve()
, which preserves parent directory references (..
) when using backslashes. This allowed clients to escape the root directory using commands like CWD
with Windows-style path separators.