Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 936204 (CVE-2024-22018, CVE-2024-22020, CVE-2024-36137, CVE-2024-37372) - <net-libs/nodejs-{18.20.4, 20.15.1,22.4.1}: Multiple Vulnerabilities
Summary: <net-libs/nodejs-{18.20.4, 20.15.1,22.4.1}: Multiple Vulnerabilities
Status: CONFIRMED
Alias: CVE-2024-22018, CVE-2024-22020, CVE-2024-36137, CVE-2024-37372
Product: Gentoo Security
Classification: Unclassified
Component: Vulnerabilities (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Security
URL:
Whiteboard: B2 [glsa]
Keywords:
Depends on: 936254
Blocks:
  Show dependency tree
 
Reported: 2024-07-17 08:55 UTC by Hans de Graaff
Modified: 2025-01-24 08:44 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Hans de Graaff gentoo-dev Security 2024-07-17 08:55:05 UTC
## Bypass network import restriction via data URL (CVE-2024-22020) - (Medium)

A security flaw in Node.js allows a bypass of network import restrictions.

By embedding non-network imports in data URLs, an attacker can execute arbitrary code, compromising system security.

Verified on various platforms, the vulnerability is mitigated by forbidding data URLs in network imports.

Exploiting this flaw can violate network import security, posing a risk to developers and servers.

Impact:

- This vulnerability affects all users in active release lines: 22.x, 20.x, 18.x

Thank you, to dittyroma for reporting this vulnerability and thank you RafaelGSS for fixing it.

## fs.fchown/fchmod bypasses permission model (CVE-2024-36137) - (Low)

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.

This vulnerability affects all users using the experimental permission model in Node.js 20 and Node.js 22.

Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

Impact:

- This vulnerability affects all users in active release lines: 22.x, 20.x

Thank you, to 4xpl0r3r for reporting this vulnerability and thank you RafaelGSS for fixing it.

## fs.lstat bypasses permission model (CVE-2024-22018) - (Low)

A vulnerability has been identified in Node.js, affecting users of the experimental permission model when
the `--allow-fs-read` flag is used.
This flaw arises from an inadequate permission model that fails to restrict file stats through the
`fs.lstat` API. As a result, malicious actors can retrieve stats from files that they do not have explicit read access to.

This vulnerability affects all users using the experimental permission model in Node.js 20 and Node.js 22.

Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

Impact:

- This vulnerability affects all users in active release lines: 22.x, 20.x

Thank you, to haxatron1 for reporting this vulnerability and thank you RafaelGSS for fixing it.

## Permission model improperly processes UNC paths (CVE-2024-37372) - (low)

The Permission Model assumes that any path starting with two backslashes \\ has a four-character prefix that can be ignored, which is not always true. This subtle bug leads to vulnerable edge cases.

This vulnerability affects Windows users of the Node.js Permission Model in version v22.x and v20.x

Impact:

- This vulnerability affects all users in active release lines: 22.x, 20.x

Thank you, to tniessen for reporting this vulnerability and thank you RafaelGSS for fixing it.

## Downloads and release details

- [Node.js v18.20.4](/blog/release/v18.20.4/)
- [Node.js v20.15.1](/blog/release/v20.15.1/)
- [Node.js v22.4.1](/blog/release/v22.4.1/)
Comment 1 Hans de Graaff gentoo-dev Security 2024-12-14 08:19:01 UTC
commit 967e6f4b3c6eccd8ba1691371413cd2aa4690b0a
Author: William Hubbs <williamh@gentoo.org>
Date:   Mon Aug 19 16:23:34 2024 -0500

    net-libs/nodejs: drop 22.3.0, 22.4.0, 22.5.1
    
    Signed-off-by: William Hubbs <williamh@gentoo.org>

commit 4fe3848c24e1238204bc713bd86c57dac59dbe84
Author: William Hubbs <williamh@gentoo.org>
Date:   Mon Aug 19 16:18:39 2024 -0500

    net-libs/nodejs: drop 20.14.0, 20.15.0
    
    Signed-off-by: William Hubbs <williamh@gentoo.org>

commit a6ffacdbf51af671ffc19b6f635fd720949a7dd8
Author: William Hubbs <williamh@gentoo.org>
Date:   Mon Aug 19 16:13:26 2024 -0500

    net-libs/nodejs: drop 18.20.3
    
    Signed-off-by: William Hubbs <williamh@gentoo.org>