Bug 2527702 (CVE-2026-84382)

Summary: CVE-2026-84382 httpx2: HTTPX2: Denial of Service via streaming response decompression memory amplification
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security <prodsec-ir-bot>
Status: NEW --- QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: ebourniv, gbenhaim, hasun, kaycoth, niyer, nyancey, ptisnovs, sbunciak, twaugh
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
A flaw was found in httpx2, a Python HTTP client. The content decoders in httpx2 fully inflate compressed network chunks (such as gzip, deflate, br, or zstd) before yielding bounded pieces to the application. This can lead to a small compressed chunk expanding significantly in memory, for example, a 64 KiB chunk expanding to approximately 64 MiB. A remote attacker, by controlling or compromising a server, could exploit this vulnerability to cause severe memory pressure or out-of-memory process termination, leading to a Denial of Service (DoS) for applications using httpx2.
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-02 18:35:15 UTC
HTTPX2 is a next generation HTTP client for Python. Prior to 2.12.0, the HTTPX2 content decoders in src/httpx2/httpx2/_decoders.py fully inflate each gzip, deflate, br, or zstd network chunk before iter_bytes() or aiter_bytes() yields bounded pieces to the application. A 64 KiB compressed chunk can expand to approximately 64 MiB in one intermediate allocation, so an attacker-controlled or compromised server can cause severe memory pressure or out-of-memory process termination even when the application streams the response. This issue is fixed in version 2.12.0.