CVE Catalog

CVE-2026-97689

HighCVSS 8.9
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.29%

20th percentile - higher than 20% of all known CVEs

Summary

urllib3 versions from 1.10.3 until 2.8.0 contain an unbounded memory allocation vulnerability. The HTTPResponse.read_chunked and HTTPResponse.stream methods buffer the chunk-size field without a length bound until a newline or EOF is encountered. A malicious HTTP server can send a very long unterminated chunk-size line, leading to exhaustion of the client process memory.

Risk Assessment

An attacker can cause memory exhaustion (Denial of Service) in applications using urllib3 to communicate with untrusted HTTP servers. This may result in the client process hanging or crashing.

Recommendation

Update urllib3 to version 2.8.0 or later. Until patched, avoid connecting to untrusted HTTP servers that use chunked encoding.

Other vulnerabilities in urllib3

See all
Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS