Medium severity · published Oct 15, 2023
CVE-2018-25091
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)
6.1
CVSS
0.6%
EPSS
No
On KEV
Description
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 to unintended hosts or transmitted in cleartext. NOTE: this issue exists because of an incomplete fix for CVE-2018-20060 (which was case-sensitive).
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
Required
Confidentiality
Low
Integrity
Low
Availability
None
Scope
Changed
Exploitation
Is it being used?
Exploit prediction (EPSS)0.6% · higher than 48% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
UR
Urllib3 · Python
before 1.24.2 · source: NVD
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2018-25091
CVE.org
https://www.cve.org/CVERecord?id=CVE-2018-25091
Patch
https://github.com/urllib3/urllib3/commit/adb358f8e06865406d1f05e581a16cbea2136fbc
Patch
https://github.com/urllib3/urllib3/compare/1.24.1...1.24.2
Issue Tracking
https://github.com/urllib3/urllib3/issues/1510
More from Urllib3
9.8
CVE-2018-20060
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)
8.1
CVE-2026-97687
urllib3: HTTPS proxy TLS configuration may be ignored or overridden
8.1
CVE-2023-43804
urllib3 is a user-friendly HTTP client library for Python
7.5
CVE-2026-97689
urllib3: HTTPResponse.stream()/read_chunked() buffers an unbounded chunk-size line into memory
7.5
CVE-2026-44432
urllib3: Decompression-bomb safeguards bypassed in parts of the streaming API
