Name | CVE-2024-36137 |
Description | A vulnerability has been identified in Node.js, affecting users of the experimental permission model when the --allow-fs-write flag is used.
Node.js Permission Model do not operate on file descriptors, however, operations such as fs.fchown or fs.fchmod can use a "read-only" file descriptor to change the owner and permissions of a file. |
Source | CVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
Vulnerable and fixed packages
The table below lists information on source packages.
Source Package | Release | Version | Status |
---|
nodejs (PTS) | jessie | 0.10.29~dfsg-2 | fixed |
| stretch | 4.8.2~dfsg-1 | fixed |
| buster (security), buster, buster (lts) | 10.24.0~dfsg-1~deb10u4 | fixed |
| bullseye | 12.22.12~dfsg-1~deb11u4 | fixed |
| bullseye (security) | 12.22.12~dfsg-1~deb11u5 | fixed |
| bookworm | 18.19.0+dfsg-6~deb12u2 | fixed |
| bookworm (security) | 18.19.0+dfsg-6~deb12u1 | fixed |
| trixie | 20.18.0+dfsg-2 | fixed |
| sid | 20.18.1+dfsg-1 | fixed |
The information below is based on the following data on fixed versions.
Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
---|
nodejs | source | jessie | (not affected) | | | |
nodejs | source | stretch | (not affected) | | | |
nodejs | source | buster | (not affected) | | | |
nodejs | source | bullseye | (not affected) | | | |
nodejs | source | bookworm | (not affected) | | | |
nodejs | source | (unstable) | 20.15.1+dfsg-1 | | | |
Notes
[bookworm] - nodejs <not-affected> (Feature was introduced in nodeJS 20)
[bullseye] - nodejs <not-affected> (Feature was introduced in nodeJS 20)
https://nodejs.org/en/blog/vulnerability/july-2024-security-releases#fsfchownfchmod-bypasses-permission-model-cve-2024-36137---low
Fixed by: https://github.com/nodejs/node/commit/93574335ffa8ef9efc0a47a6c142ea858bce49d9 (v22.4.1)
Need the experimental permission model when the --allow-fs-write flag is set
Feature introduced in 20 see https://nodejs.org/en/blog/announcements/v20-release-announce
Documentation of the flag: https://nodejs.org/api/cli.html#--experimental-permission (Added in v20.0.0)
[buster] - nodejs <not-affected> (vulnerable feature not present)
[stretch] - nodejs <not-affected> (vulnerable feature not present)
[jessie] - nodejs <not-affected> (vulnerable feature not present)