CVE-2024-22025
nodejs: using the fetch() function to retrieve content from an untrusted URL leads to denial of service
Severity
ModerateRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · March 19, 2024
Updated · November 21, 2025
Description
A flaw was found in Node.js that allows a denial of service attack through resource exhaustion when using the fetch() function to retrieve content from an untrusted URL. The vulnerability stems from the fetch() function in Node.js that always decodes Brotli, making it possible for an attacker to cause resource exhaustion when fetching content from an untrusted URL. This flaw allows an attacker to control the URL passed into fetch() to exhaust memory, potentially leading to process termination, depending on the system configuration.
Statement
The identified flaw in Node.js, which involves the fetch() function always decoding Brotli content regardless of its source, represents a moderate severity issue due to its potential to facilitate denial of service attacks through resource exhaustion. This vulnerability allows malicious actors to manipulate the URL parameter passed into fetch(), exploiting the consistent Brotli decoding behavior to overwhelm system memory resources. While the impact is constrained to process termination, its severity is moderated by the requirement for specific conditions, such as untrusted URLs and system configurations.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
Mitigation for this issue is either not available or the currently available options don't meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability.
CVSS / CWE
CVSS 3.1 · 6.5CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
CWE-400 · Uncontrolled Resource Consumption