urllib3
PyPI22 known CVEs affecting this package
Aggregated from OSV, GitHub Security Advisories, NVD, and vendor advisories. Each CVE links to its full detail page with vendor advisories, patches, fixed versions, and remediation guidance.
CVEs affecting urllib3page 1 of 1
- CVE-2016-9015LOWCVSS 3.7EG 3.7fixed in 1.18.12017-01-11
vulnerable: 1.17, 1.18
Versions 1.17 and 1.18 of the Python urllib3 library suffer from a vulnerability that can cause them, in certain configurations, to not correctly validate TLS certificates. This places users of the library with those configurations at risk…
- CVE-2018-20060CRITICALCVSS 9.8EG 9.8fixed in 1.232018-12-11
vulnerable: 0.2 ... 1.9.1 (45 versions)
urllib3 before version 1.23 does not remove the Authorization HTTP header when following a cross-origin redirect (i.e., a redirect that differs in host, port, or scheme). This can allow for credentials in the Authorization header to be exp…
- CVE-2018-25091MEDIUMCVSS 6.1EG 6.1fixed in 1.24.22023-10-15
vulnerable: 0.2 ... 0.4 (49 versions)
urllib3 before 1.24.2 does not remove the authorization HTTP header when following a cross-origin redirect (i.e., a redirect that differs in host, port, or scheme). This can allow for credentials in the authorization header to be exposed t…
- CVE-2019-11236MEDIUMCVSS 6.1EG 6.1fixed in 1.24.32019-04-15
vulnerable: 0.2 ... 1.24.2 (49 versions)
In the urllib3 library through 1.24.1 for Python, CRLF injection is possible if the attacker controls the request parameter.
- CVE-2019-11324HIGHCVSS 7.5EG 7.5fixed in 1.24.22019-04-18
vulnerable: 0.2 ... 1.24.1 (48 versions)
The urllib3 library before 1.24.2 for Python mishandles certain cases where the desired set of CA certificates is different from the OS store of CA certificates, which results in SSL connections succeeding in situations where a verificatio…
- CVE-2020-26137MEDIUMCVSS 6.5EG 6.5fixed in 1.25.92020-09-30
vulnerable: 0.2 ... 1.25.8 (59 versions)
urllib3 before 1.25.9 allows CRLF injection if the attacker controls the HTTP request method, as demonstrated by inserting CR and LF control characters in the first argument of putrequest(). NOTE: this is similar to CVE-2020-26116.
- CVE-2020-7212HIGHCVSS 7.5EG 7.5fixed in 1.25.82020-03-06
vulnerable: 1.25.2 ... 1.25.7 (6 versions)
The _encode_invalid_chars function in util/url.py in the urllib3 library 1.25.2 through 1.25.7 for Python allows a denial of service (CPU consumption) because of an inefficient algorithm. The percent_encodings array contains all matches of…
- CVE-2021-28363MEDIUMCVSS 6.5EG 6.5fixed in 1.26.42021-03-15
vulnerable: 1.26.0, 1.26.1, 1.26.2, 1.26.3
The urllib3 library 1.26.x before 1.26.4 for Python omits SSL certificate validation in some cases involving HTTPS to HTTPS proxies. The initial connection to the HTTPS proxy (if an SSLContext isn't given via proxy_config) doesn't verify t…
- CVE-2021-33503HIGHCVSS 7.5EG 7.5fixed in 1.26.52021-06-29
vulnerable: 1.25.10 ... 0.3 (30 versions)
An issue was discovered in urllib3 before 1.26.5. When provided with a URL containing many @ characters in the authority component, the authority regular expression exhibits catastrophic backtracking, causing a denial of service if a URL w…
- CVE-2023-43804HIGHCVSS 8.1EG 8.1fixed in 2.0.6 or 1.26.17, by version range2023-10-04
vulnerable: 0.2 ... 2.0.5 (85 versions)
urllib3 is a user-friendly HTTP client library for Python. urllib3 doesn't treat the `Cookie` HTTP header special or provide any helpers for managing cookies over HTTP, that is the responsibility of the user. However, it is possible for a …
- CVE-2023-45803MEDIUMCVSS 4.2EG 4.2fixed in 2.0.7 or 1.26.18, by version range2023-10-17
vulnerable: 0.2 ... 2.0.6 (87 versions)
urllib3 is a user-friendly HTTP client library for Python. urllib3 previously wouldn't remove the HTTP request body when an HTTP redirect response using status 301, 302, or 303 after the request had its method changed from one that could a…
- CVE-2024-37891MEDIUMCVSS 4.4EG 4.4fixed in 1.26.19 or 2.2.2, by version range2024-06-17
vulnerable: 0.2 ... 2.2.1 (92 versions)
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 *wi…
- CVE-2025-50181MEDIUMCVSS 5.3EG 5.3fixed in 2.5.02025-06-19
vulnerable: 0.2 ... 2.4.0 (102 versions)
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…
- CVE-2025-50182MEDIUMCVSS 5.3EG 5.3fixed in 2.5.02025-06-19
vulnerable: 2.2.0 ... 2.4.0 (6 versions)
urllib3 is a user-friendly HTTP client library for Python. Starting in version 2.2.0 and prior to 2.5.0, urllib3 does not control redirects in browsers and Node.js. urllib3 supports being used in a Pyodide runtime utilizing the JavaScript …
- CVE-2025-66418HIGHCVSS 7.5EG 7.5fixed in 2.6.02025-12-05
vulnerable: 1.24 ... 2.5.0 (57 versions)
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 comp…
- CVE-2025-66471HIGHCVSS 7.5EG 7.5fixed in 2.6.02025-12-05
vulnerable: 1.0 ... 2.5.0 (98 versions)
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 HTT…
- CVE-2026-21441HIGHCVSS 7.5EG 7.5fixed in 2.6.32026-01-07
vulnerable: 1.22 ... 2.6.2 (62 versions)
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. urllib…
- CVE-2026-44431MEDIUMCVSS 5.3EG 5.3fixed in 2.7.02026-05-13
vulnerable: 1.23 ... 2.6.3 (62 versions)
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 heade…
- CVE-2026-44432HIGHCVSS 7.5EG 7.5fixed in 2.7.02026-05-13
vulnerable: 2.6.0, 2.6.1, 2.6.2, 2.6.3
urllib3 is an HTTP client library for Python. From 2.6.0 to before 2.7.0, urllib3 could decompress the whole response instead of the requested portion (1) during the second HTTPResponse.read(amt=N) call when the response was decompressed u…
- CVE-2026-97687HIGHCVSS 7.6EG 7.6fixed in 2.8.02026-09-29
vulnerable: 1.26.0 ... 2.7.0 (46 versions)
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 …
- CVE-2026-97688MEDIUMCVSS 6.9EG 6.9fixed in 2.8.02026-09-29
vulnerable: 2.6.2, 2.6.3, 2.7.0
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…
- CVE-2026-97689HIGHCVSS 8.9EG 8.9fixed in 2.8.02026-09-29
vulnerable: 1.10.3 ... 2.7.0 (82 versions)
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 newlin…
Check whether urllib3 is used in your infrastructure
EchelonGraph scans your cloud and SBOMs to map every package to your actual deployments. See blast radius for urllib3 CVEs against the assets you own.
Book a Demo →