GHSA-4qv8-2p9j-2685
undici vulnerable to Denial of Service via unbounded memory in the EventSource parser
At a glance
- Published
- Updated
- CVE
- CVE-2026-109924
- CVSS_V3
- CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Description
### Impact undici's `EventSource` client can be driven to exhaust process memory by a malicious or compromised Server-Sent Events peer. By sending millions of tiny completed `data:` fields with no blank event separator, or a single unfinished line split across many chunks, the parser retains a growing amount of per-field and per-chunk state. The byte-based `maxEventSize` and `maxResponseSize` limits do not bound that retained state, and `maxResponseSize` is enforced on the compressed body before decompression, so a small compressed response can expand into enough retained memory to terminate the process. The application only needs to maintain an `EventSource` connection to an untrusted peer, which controls only the response. Availability is the only impact. ### Patches Upgrade to `6.29.1`, `7.30.1`, or `8.12.2`, which bound the retained EventSource parser state (the number of `data` fields and buffered chunks, the unfinished-line length, and per-field byte totals) independently of the byte limits. ### Workarounds None.
Affected packages
| Package | Versions |
|---|---|
| npm · undici | introduced 6.5.0, fixed 6.29.1 |
| npm · undici | introduced 7.0.0, fixed 7.30.1 |
| npm · undici | introduced 8.0.0, fixed 8.12.2 |
References
- https://github.com/nodejs/undici/security/advisories/GHSA-4qv8-2p9j-2685 WEB
- https://nvd.nist.gov/vuln/detail/CVE-2026-109924 ADVISORY
- https://github.com/nodejs/undici/commit/299162740d5f39120092277e70efacb4d151c1c6 WEB
- https://github.com/nodejs/undici/commit/789ef26461c648480433846607154f52d74ec9ab WEB
- https://github.com/nodejs/undici/commit/c43b23fdc6b37e1283d4347408bb16800f867d9e WEB
- https://cna.openjsf.org/security-advisories.html WEB
- https://github.com/nodejs/undici PACKAGE
- https://github.com/nodejs/undici/releases/tag/v6.29.1 WEB
- https://github.com/nodejs/undici/releases/tag/v7.30.1 WEB
- https://github.com/nodejs/undici/releases/tag/v8.12.2 WEB
Sources
| Source | Licence |
|---|---|
| OSV.dev | CC-BY 4.0 — GitHub Advisory Database |