Cloudanix VulnDB

CVE-2024-38372

Low · 2.0

CVSS

2.0

EPSS

0.5%

Published

Jul 8, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A programming library used by many Node.js applications to make web requests could sometimes accidentally include pieces of the computer's working memory in its responses, potentially exposing sensitive information.

Exploitation
Remote Authenticated
Attacker needs
High Privilege
Complexity
High
Impact
Data Exposure
Component
Library
Class
Information Disclosure
Remediation
Upgrade
Effort
Low
Patch risk
Low

What it actually does

Under specific network and process conditions during a fetch() request, response.arrayBuffer() can return a buffer containing portions of unrelated memory from the Node.js process heap.

Why it matters to the business

Low-risk potential exposure of sensitive in-memory data such as credentials or internal application state in Node.js applications using the undici HTTP client; limited operational impact due to narrow triggering conditions and low exploitability.

How an attack unfolds

An attacker sends a fetch request to a target using undici and, under favorable timing or network conditions, inspects the result of response.arrayBuffer() to extract leaked process memory fragments containing sensitive data.

How to fix it

Upgrade undici to version 6.19.2 or later (commit 532b7b28827afe52ed7b43cbb210ac8425516c28) in all affected Node.js projects and rebuild or redeploy dependent applications.

How to confirm the fix worked

Verify undici version is 6.19.2 or newer via package.json or npm list, then test fetch responses under varied network conditions to confirm arrayBuffer() no longer contains extraneous memory data.

Typical attack path

  1. Identify a Node.js application using vulnerable undici for outbound fetch requests
  2. Trigger a fetch() call under specific network or process timing conditions
  3. Call response.arrayBuffer() on the returned response object
  4. Inspect the resulting buffer for unintended memory contents from the Node.js heap

How to detect it

Review application logs and memory dumps for unexpected buffer contents after fetch operations; no specific post-exploitation artifacts are known, so focus on confirming the presence of vulnerable undici versions in running processes or containers.

What your security team should do

  • Immediately upgrade all undici dependencies to 6.19.2 or later across the Node.js ecosystem
  • Scan package locks and CI pipelines for older undici versions and enforce minimum version in dependency policies
  • Monitor for any future undici updates given its widespread use in Node.js HTTP clients

The record

Undici is an HTTP/1.1 client, written from scratch for Node.js. Depending on network and process conditions of a `fetch()` request, `response.arrayBuffer()` might include portion of memory from the Node.js process. This has been patched in v6.19.2.

Affected packages

Ecosystem Package Introduced Fixed
npm undici 6.14.0 6.19.2
Ubuntu:24.04:LTS node-undici 0 No fix
Ubuntu:24.10 node-undici 0 No fix
Ubuntu:25.04 node-undici 0 No fix
Ubuntu:25.10 node-undici 0 No fix

Related vulnerabilities