HTTPX2: Streaming response decompression does not bound peak memory (decompression amplification)
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| pydantic | httpx2 | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Pydantic | Httpx2 |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-8xx6-hgc6-gc2m | HTTPX2: Streaming response decompression does not bound peak memory (decompression amplification) |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.630% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Pydantic
Pydantic httpx2 |
|
| Vendors & Products |
Pydantic
Pydantic httpx2 |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
| |
| Metrics |
threat_severity
|
threat_severity
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | 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. | |
| Title | HTTPX2: Streaming response decompression does not bound peak memory (decompression amplification) | |
| Weaknesses | CWE-409 | |
| References |
| |
| Metrics |
cvssV3_1
|