CVE-2025-22150

Undici Uses Insufficiently Random Values

At a glance

Severity
MEDIUM 6.8
EPSS
EPSS 0.78 % · percentile 56 (2026-10-27)
State
PUBLISHED
Published
Updated
Assigner
GitHub_M
NVD status
Deferred

Description

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.

Scores

VersionScoreVectorScored by
CVSS 3.1MEDIUM 6.8CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:NGitHub_M
CVSS 3.1MEDIUM 6.8CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:NNVD · security-advisories@github.com (Secondary)

Weaknesses (CWE)

Advisories

European references

CERT-FR advisories

Affected products

ProductVersions
nodejs · undiciaffected >= 4.5.0, < 5.28.5 ; affected >= 6.0.0, < 6.21.1 ; affected >= 7.0.0, < 7.2.3

References

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD