p PatchFirst

PatchFirst · Latest vulnerabilities

python-urllib3 vulnerabilities

Vulnerabilities published for python-urllib3 in the last 30 days: 2. Listed in the KEV catalogue: 0.

Filter vulnerabilities
Clear filters

Vulnerabilities: 9

  1. CVE-2026-97689

    High · CVSS 8.9EPSS 0.34%Fix available

    urllib3: HTTPResponse.stream()/read_chunked() buffers an unbounded chunk-size line into memory

    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.

    • Update to 2.0.7-1ubuntu0.8
    Published Updated
  2. CVE-2026-97687

    High · CVSS 7.6EPSS 0.21%No fix published

    urllib3: HTTPS proxy TLS configuration may be ignored or overridden

    urllib3 is an HTTP client library for Python. From 1.26.0 until 2.8.0, the proxy_ssl_context, proxy_assert_hostname, proxy_assert_fingerprint, ssl_context, cert_reqs, verify_mode, use_forwarding_for_https=True, and CERT_NONE configuration paths fail to remain separated because target-server TLS settings are incorrectly applied to the HTTPS proxy connection. The trigger is that an application uses an HTTPS proxy and configures target-server TLS settings that must remain separate from the proxy TLS handshake, including HTTPS forwarding with target-specific identity or credentials. Applying cert_reqs=CERT_NONE can overwrite proxy_ssl_context.ver

    Published Updated
  3. CVE-2026-44431

    High · CVSS 8.2EPSS 0.33%Public exploitFix available

    urllib3: Sensitive headers forwarded across origins in proxied low-level redirects

    urllib3 is an HTTP client library for Python. From 1.23 to before 2.7.0, cross-origin redirects followed from the low-level API via ProxyManager.connection_from_url().urlopen(..., assert_same_host=False) still forward these sensitive headers. This vulnerability is fixed in 2.7.0.

    • Update to 2.0.7-1ubuntu0.7
    Published Updated
  4. CVE-2026-21441

    High · CVSS 8.9EPSS 2.92%Fix available

    urllib3 vulnerable to decompression-bomb safeguard bypass when following HTTP redirects (streaming API)

    urllib3 is an HTTP client library for Python. urllib3's streaming API is designed for the efficient handling of large HTTP responses by reading the content in chunks, rather than loading the entire response body into memory at once. urllib3 can perform decoding or decompression based on the HTTP `Content-Encoding` header (e.g., `gzip`, `deflate`, `br`, or `zstd`). When using the streaming API, the library decompresses only the necessary bytes, enabling partial content consumption. Starting in version 1.22 and prior to version 2.6.3, for HTTP redirect responses, the library would read the entire response body to drain the connection and decomp

    • Update to 2.0.7-1ubuntu0.4
    Published Updated
  5. CVE-2025-66471

    High · CVSS 8.9EPSS 0.68%Fix available

    urllib3 Streaming API improperly handles highly compressed data

    urllib3 is a user-friendly HTTP client library for Python. Starting in version 1.0 and prior to 2.6.0, the Streaming API improperly handles highly compressed data. urllib3's streaming API is designed for the efficient handling of large HTTP responses by reading the content in chunks, rather than loading the entire response body into memory at once. When streaming a compressed response, urllib3 can perform decoding or decompression based on the HTTP Content-Encoding header (e.g., gzip, deflate, br, or zstd). The library must read compressed data from the network and decompress it until the requested chunk size is met. Any resulting decompresse

    • Update to 2.0.7-1ubuntu0.3
    Published Updated
  6. CVE-2025-66418

    High · CVSS 8.9EPSS 0.68%Fix available

    urllib3 allows an unbounded number of links in the decompression chain

    urllib3 is a user-friendly HTTP client library for Python. Starting in version 1.24 and prior to 2.6.0, the number of links in the decompression chain was unbounded allowing a malicious server to insert a virtually unlimited number of compression steps leading to high CPU usage and massive memory allocation for the decompressed data. This vulnerability is fixed in 2.6.0.

    • Update to 2.0.7-1ubuntu0.3
    Published Updated
  7. CVE-2025-50181

    Medium · CVSS 5.3EPSS 0.47%Fix available

    urllib3 redirects are not disabled when retries are disabled on PoolManager instantiation

    urllib3 is a user-friendly HTTP client library for Python. Prior to 2.5.0, it is possible to disable redirects for all requests by instantiating a PoolManager and specifying retries in a way that disable redirects. By default, requests and botocore users are not affected. An application attempting to mitigate SSRF or open redirect vulnerabilities by disabling redirects at the PoolManager level will remain vulnerable. This issue has been patched in version 2.5.0.

    • Update to 2.0.7-1ubuntu0.2
    Published Updated
  8. CVE-2024-37891

    Medium · CVSS 4.4EPSS 1.14%Fix available

    Proxy-Authorization request header isn't stripped during cross-origin redirects in urllib3

    urllib3 is a user-friendly HTTP client library for Python. When using urllib3's proxy support with `ProxyManager`, the `Proxy-Authorization` header is only sent to the configured proxy, as expected. However, when sending HTTP requests *without* using urllib3's proxy support, it's possible to accidentally configure the `Proxy-Authorization` header even though it won't have any effect as the request is not using a forwarding proxy or a tunneling proxy. In those cases, urllib3 doesn't treat the `Proxy-Authorization` HTTP header as one carrying authentication material and thus doesn't strip the header on cross-origin redirects. Because this is a

    • Update to 2.0.7-1ubuntu0.1
    Published Updated

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →