// For flags

CVE-2025-22150

Undici Uses Insufficiently Random Values

Severity Score

6.8
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Attend
*SSVC
Descriptions

Undici is an HTTP/1.1 client. Starting in version 4.5.0 and prior to versions 5.28.5, 6.21.1, and 7.2.3, undici uses `Math.random()` to choose the boundary for a multipart/form-data request. It is known that the output of `Math.random()` can be predicted if several of its generated values are known. If there is a mechanism in an app that sends multipart requests to an attacker-controlled website, they can use this to leak the necessary values. Therefore, an attacker can tamper with the requests going to the backend APIs if certain conditions are met. This is fixed in versions 5.28.5, 6.21.1, and 7.2.3. As a workaround, do not issue multipart requests to attacker controlled servers.

A flaw was found in the undici package for Node.js. Undici uses `Math.random()` to choose the boundary for a multipart/form-data request. It is known that the output of `Math.random()` can be predicted if several of its generated values are known. If an app has a mechanism that sends multipart requests to an attacker-controlled website, it can leak the necessary values. Therefore, an attacker can tamper with the requests going to the backend APIs if certain conditions are met.

An update for the nodejs:20 module is now available for Red Hat Enterprise Linux 8. Issues addressed include a memory leak vulnerability.

*Credits: N/A
CVSS Scores
Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None
Attack Vector
Network
Attack Complexity
High
Authentication
None
Confidentiality
Complete
Integrity
Complete
Availability
None
* Common Vulnerability Scoring System
SSVC
  • Decision:Attend
Exploitation
Poc
Automatable
No
Tech. Impact
Total
* Organization's Worst-case Scenario
Timeline
  • 2024-12-30 CVE Reserved
  • 2025-01-21 CVE Published
  • 2025-02-12 CVE Updated
  • 2025-04-02 EPSS Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-330: Use of Insufficiently Random Values
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Nodejs
Search vendor "Nodejs"
Undici
Search vendor "Nodejs" for product "Undici"
>= 4.5.0 < 5.28.5
Search vendor "Nodejs" for product "Undici" and version " >= 4.5.0 < 5.28.5"
en
Affected
Nodejs
Search vendor "Nodejs"
Undici
Search vendor "Nodejs" for product "Undici"
>= 6.0.0 < 6.21.1
Search vendor "Nodejs" for product "Undici" and version " >= 6.0.0 < 6.21.1"
en
Affected
Nodejs
Search vendor "Nodejs"
Undici
Search vendor "Nodejs" for product "Undici"
>= 7.0.0 < 7.2.3
Search vendor "Nodejs" for product "Undici" and version " >= 7.0.0 < 7.2.3"
en
Affected