High severity · published Sep 29, 2026
CVE-2026-97689
urllib3: HTTPResponse.stream()/read_chunked() buffers an unbounded chunk-size line into memory
7.5
CVSS
0.3%
EPSS
No
On KEV
Description
urllib3 is an HTTP client library for Python. From 1.10.3 until 2.8.0, the HTTPResponse.read_chunked and HTTPResponse.stream methods can allocate unbounded memory because the streaming chunk parser buffers the chunk-size field until newline or EOF without a length bound. The trigger is that a malicious server returns Transfer-Encoding: chunked followed by a very long run of bytes without a newline. The attack mechanism is that a malicious HTTP server sends a very long unterminated chunk-size line. The impact is that unbounded memory allocation can exhaust the client process. This issue is fixed in version 2.8.0.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
None
Integrity
None
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.3% · higher than 27% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
UR
urllib3 · urllib3
>= 1.10.3, < 2.8.0 · source: vendor, NVD
Affected product
UR
urllib3
urllib3
More from urllib3
8.1
CVE-2026-97687
urllib3: HTTPS proxy TLS configuration may be ignored or overridden
7.5
CVE-2026-44432
urllib3: Decompression-bomb safeguards bypassed in parts of the streaming API
5.3
CVE-2026-97688
urllib3: Chunked Deflate streaming can enter an infinite loop
5.3
CVE-2026-44431
urllib3: Sensitive headers forwarded across origins in proxied low-level redirects