A flaw in Node.js’s Permissions model allows attackers to bypass --allow-fs-read and --allow-fs-write restrictions using crafted relative symlink paths. By chaining directories and symlinks, a script granted access only to the current directory can escape the allowed path and read sensitive files. This breaks the expected isolation guarantees and enables arbitrary file read/write, leading to potential system compromise.
This vulnerability affects users of the permission model on Node.js v20, v22, v24, and v25.
{
"versions": [
{
"introduced": "20.0.0"
},
{
"fixed": "20.20.0"
},
{
"introduced": "22.0.0"
},
{
"fixed": "22.22.0"
},
{
"introduced": "24.0.0"
},
{
"fixed": "24.13.0"
},
{
"introduced": "25.0.0"
},
{
"fixed": "25.3.0"
}
]
}