Bug 2528707 (CVE-2026-85024)

Summary: CVE-2026-85024 undici: undici: Denial of Service via unhandled error in WebSocket permessage-deflate decompression
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security <prodsec-ir-bot>
Status: NEW --- QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: abarbaro, akhatavk, alizardo, aos-team-art-private, asdas, ataylor, cdrage, dbruscin, dpaolell, dschmidt, eborisov, ehugonne, gbenhaim, gtanzill, jbuscemi, jchui, jdelft, jhe, jlanda, jupierce, kshier, ktsao, kvanderr, lball, lchilton, lgarciaa, mbiarnes, mstipich, nboldt, ngough, niyer, oaljalju, ppalepu, ppostler, prdhamdh, psrna, rexwhite, rhel-process-autobot, rushinde, sdawley, sfeifer, sghai, sidsharm, simaishi, stcannon, sthirugn, suppawar, teagle, twaugh, veshanka, vlaad, watson-tool-maintainers, yguenane
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
A flaw was found in undici. A remote, unauthenticated attacker can trigger a Denial of Service (DoS) by sending a specially crafted compressed WebSocket payload. When this payload exceeds the 128 MiB decompressed-payload limit and contains a malformed DEFLATE byte, it causes an unhandled error in the internal zlib inflate stream. This unhandled error leads to the termination of the entire Node.js process, making the service unavailable.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description OSIDB Bzimport 2026-09-04 16:35:10 UTC
undici bundles a WebSocket client whose permessage-deflate size-limit cleanup removes all listeners from the internal zlib inflate stream, including its error listener, while that stream can still emit. When a remote peer sends a compressed payload that crosses the built-in 128 MiB decompressed-payload limit and then contains a malformed DEFLATE byte, the inflate stream emits a data error with no listener attached, which Node.js treats as a fatal unhandled error and terminates the entire process. Exploitation is remote and unauthenticated, requires no application mistake, and is asymmetric, since roughly 130 KB on the wire expands past the limit and crashes the process, and reconnecting can repeat the crash. This affects undici versions from 6.25.0 up to 6.28.1, from 7.28.0 up to 7.29.1, and from 8.1.0 up to 8.10.2. Users should upgrade to undici 6.28.1, 7.29.1, or 8.10.2.