CVE-2026-97689
published 2026-09-29CVE-2026-97689: 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…
PriorityP341high7.5CVSS 3.1
AVNACLPRNUINSUCNINAH
EPSS
0.34%
26.6th percentile
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.
Affected
5 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| debian | python-urllib3 | — | — |
| python | urllib3 | >= 1.10.3 < 2.8.0 | 2.8.0 |
| ubuntu | python-urllib3 | — | — |
| urllib3 | urllib3 | — | — |
| urllib3 | urllib3 | >= 1.10.3 < 2.8.0 | 2.8.0 |
CVSS provenance
nvdv3.17.5HIGHCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
nvdv4.08.9HIGHCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vendor_redhat8.9HIGH
vendor_ubuntu8.1HIGH
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
Ubuntu
urllib3 vulnerabilities
vendor_ubuntu·2026-10-14·CVSS 8.1
CVE-2026-97688 [HIGH] urllib3 vulnerabilities
Title: urllib3 vulnerabilities
Summary: Several security issues were fixed in urllib3.
Yu-Fu Fu, Seth Larson and Yonatan Magier discovered that urllib3 did not
correctly handle certain certificate validations. An attacker could
possibly use this issue to observe or modify forwarded traffic. This
issue only affected Ubuntu 26.04 LTS. (CVE-2026-97687)
Martin Desrumaux discovered that urllib3 did not correctly handle
decoding certain deflate responses. An attacker could possibly use this
issue to cause a denial of service. This issue only affected
Ubuntu 26.04 LTS. (CVE-2026-97688)
It was discovered that urllib3 did not correctly handle certain memory
operations. An attacker could possibly use this issue to cause a denial
of service. (CVE-2026-97689)
Instructions: In general, a standard
Red Hat
urllib3: urllib3: Denial of Service via unbounded memory allocation in chunk parser
vendor_redhat·2026-09-29·CVSS 8.9
CVE-2026-97689 [HIGH] CWE-770 urllib3: urllib3: Denial of Service via unbounded memory allocation in chunk parser
urllib3: urllib3: Denial of Service via unbounded memory allocation in chunk parser
A flaw was found in urllib3. This flaw allows a Denial of Service (DoS) through unbounded memory allocation when parsing chunk-encoded responses. A malicious server can send an excessively long chunk-size line without a newline, exhausting client memory and terminating the application.
Package: grafana12.4 (Red Hat Hardened Images) - Not affected
Package: grafana13.1 (Red Hat Hardened Images) - Not affected
Package: grafana13.2 (Red Hat Hardened Images) - Not affected
Package: jaeger (Red Hat Hardened Images) - Not affected
Package: llvm21 (Red Hat Hardened Images) - Not affected
Package: mariadb11.8 (Red Hat Hardened Images) - Not affected
Package: python-attrs (Red Hat Hardened Images) - Not affec
GHSA
urllib3: HTTPResponse.stream()/read_chunked() buffers an unbounded chunk-size line into memory
ghsa·2026-09-30
CVE-2026-97689 [HIGH] CWE-770 urllib3: HTTPResponse.stream()/read_chunked() buffers an unbounded chunk-size line into memory
urllib3: HTTPResponse.stream()/read_chunked() buffers an unbounded chunk-size line into memory
## Impact
urllib3's [streaming API](https://urllib3.readthedocs.io/en/2.7.0/advanced-usage.html#streaming-and-i-o) is designed for efficiently handling large HTTP responses by reading the content in chunks, rather than loading the entire response body into memory at once. When decoding a [chunked-transfer-encoded response](https://httpwg.org/specs/rfc9112.html#chunked.encoding), this API reads each chunk's size field by buffering until it sees `\n` or EOF.
A malicious HTTP server can return `Transfer-Encoding: chunked` and then send a very long run of bytes without any newline, causing the streaming client to buffer that entire run before urllib3 can reject the chunk size as invalid and alloca
No detection rules found.
No public exploits indexed.
2026-09-29
Published