CVE-2024-36137

NameCVE-2024-36137
DescriptionA 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.
SourceCVE (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 PackageReleaseVersionStatus
nodejs (PTS)jessie0.10.29~dfsg-2fixed
stretch4.8.2~dfsg-1fixed
buster (security), buster, buster (lts)10.24.0~dfsg-1~deb10u4fixed
bullseye12.22.12~dfsg-1~deb11u4fixed
bullseye (security)12.22.12~dfsg-1~deb11u5fixed
bookworm18.19.0+dfsg-6~deb12u2fixed
bookworm (security)18.19.0+dfsg-6~deb12u1fixed
trixie20.18.0+dfsg-2fixed
sid20.18.1+dfsg-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
nodejssourcejessie(not affected)
nodejssourcestretch(not affected)
nodejssourcebuster(not affected)
nodejssourcebullseye(not affected)
nodejssourcebookworm(not affected)
nodejssource(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)

Search for package or bug name: Reporting problems