urllib3: Chunked Deflate streaming can enter an infinite loop
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| urllib3 | urllib3 | affected |
|
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Urllib3 | Urllib3 |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-gh4c-6fx4-qh6g | urllib3: Chunked Deflate streaming can enter an infinite loop |
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.292% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Python
Python urllib3 |
|
| CPEs | cpe:2.3:a:python:urllib3:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Python
Python urllib3 |
| Type | Values Removed | Values Added |
|---|---|---|
| References |
| |
| Metrics |
threat_severity
|
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Urllib3
Urllib3 urllib3 |
|
| Vendors & Products |
Urllib3
Urllib3 urllib3 |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | urllib3 is an HTTP client library for Python. From 2.6.2 until 2.8.0, HTTPResponse.stream and HTTPResponse.read_chunked can enter an infinite loop because the Deflate decoder retains trailing bytes as unconsumed input after reaching end-of-stream and repeatedly decodes them without progress. The issue occurs when an untrusted server sends a chunked Deflate response whose decoded body exceeds a positive finite chunk size and whose encoded body has trailing bytes, specifically a response with Transfer-Encoding: chunked and Content-Encoding: deflate, content decoding enabled, and the positive finite amt=N streaming chunk size. The attack mechanism is that a malicious server returns a compressed chunked response with trailing bytes after the Deflate stream. The impact is excessive CPU usage and a request that does not complete, and network read timeouts do not interrupt the loop because no further socket read occurs. This issue is fixed in version 2.8.0. | |
| Title | urllib3: Chunked Deflate streaming can enter an infinite loop | |
| Weaknesses | CWE-835 | |
| References |
| |
| Metrics |
cvssV4_0
|