Skip to main content
MEDIUM

CVE-2024-37891

CVSS v3

6.5

MEDIUM

EPSS Score

1.1 %

exploit probability, as of 2026-10-17

CISA KEV

No

known exploited

Exploitation

—

SSVC status

Get an alert for each new CVE published for urllib3. Watch urllib3 in CVE Watch Free account · no credit card

Affected and fixed versions

Packages from OSV.dev and products from the vendors' CSAF advisories.

version not verifiedVersions not verified: read as OSV.dev and the vendors publish them, not checked against each vendor's release list.

Packages

  • urllib3PyPIall versions · fixed in 1.26.19
  • fence-agents-apcAlmaLinux:8all versions · fixed in 4.2.1-129.el8_10.4and 46 other packages
  • fence-virtdAlmaLinux:9all versions · fixed in 4.10.0-62.el9_4.4.alma.1and 54 other packages
  • python3-urllib3AlmaLinux:9all versions · fixed in 1.26.5-5.el9_4.1
  • python3-urllib3AlmaLinux:8all versions · fixed in 1.24.2-8.el8_10
  • python3.11-urllib3AlmaLinux:9all versions · fixed in 1.26.12-2.el9_5.1
  • python3.11-urllib3AlmaLinux:8all versions · fixed in 1.26.12-4.el8_10
  • python3.12-urllib3AlmaLinux:9all versions · fixed in 1.26.18-2.el9_5.1

2 more package ranges on OSV.dev

Vendor advisories

  • CVE-2024-37891 Red Hat Product Security1,559 products fixed · 34 known affected

    urllib3: proxy-authorization request header is not stripped during cross-origin redirects

    ansible-tower.src as a component of Red Hat Ansible Automation Platform 1.2 · ansible-automation-platform-24/ee-minimal-rhel9 as a component of Red Hat Ansible Automation Platform 2 · ansible-automation-platform-24/lightspeed-rhel8 as a component of Red Hat Ansible Automation Platform 2

  • RHSA-2024:9985 Red Hat Product Security2 products fixed

    Red Hat Security Advisory: RHOSP 17.1.4 (python-urllib3) security update

  • RHSA-2024:9922 Red Hat Product Security2 products fixed

    Red Hat Security Advisory: python3.11-urllib3 security update

  • RHSA-2024:9923 Red Hat Product Security2 products fixed

    Red Hat Security Advisory: python3.12-urllib3 security update

  • RHSA-2024:9458 Red Hat Product Security2 products fixed

    Red Hat Security Advisory: python3.11-urllib3 security update

  • RHSA-2024:9457 Red Hat Product Security2 products fixed

    Red Hat Security Advisory: python3.12-urllib3 security update

25 more advisories

Full record on NVD

Description

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 highly unlikely scenario, we believe the severity of this vulnerability is low for almost all users. Out of an abundance of caution urllib3 will automatically strip the `Proxy-Authorization` header during cross-origin redirects to avoid the small chance that users are doing this on accident. Users should use urllib3's proxy support or disable automatic redirects to achieve safe processing of the `Proxy-Authorization` header, but we still decided to strip the header by default in order to further protect users who aren't using the correct approach. We believe the number of usages affected by this advisory is low. It requires all of the following to be true to be exploited: 1. Setting the `Proxy-Authorization` header without using urllib3's built-in proxy support. 2. Not disabling HTTP redirects. 3. Either not using an HTTPS origin server or for the proxy or target origin to redirect to a malicious origin. Users are advised to update to either version 1.26.19 or version 2.2.2. Users unable to upgrade may use the `Proxy-Authorization` header with urllib3's `ProxyManager`, disable HTTP redirects using `redirects=False` when sending requests, or not user the `Proxy-Authorization` header as mitigations.

Technical details

Published
2024-06-17

Frequently asked questions

What is CVE-2024-37891?

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 highly unlikely scenario, we believe the severity of this vulnerability is low for almost all users. Out of an abundance of caution urllib3 will automatically strip the `Proxy-Authorization` header during cross-origin redirects to avoid the small chance that users are doing this on accident. Users should use urllib3's proxy support or disable automatic redirects to achieve safe processing of the `Proxy-Authorization` header, but we still decided to strip the header by default in order to further protect users who aren't using the correct approach. We believe the number of usages affected by this advisory is low. It requires all of the following to be true to be exploited: 1. Setting the `Proxy-Authorization` header without using urllib3's built-in proxy support. 2. Not disabling HTTP redirects. 3. Either not using an HTTPS origin server or for the proxy or target origin to redirect to a malicious origin. Users are advised to update to either version 1.26.19 or version 2.2.2. Users unable to upgrade may use the `Proxy-Authorization` header with urllib3's `ProxyManager`, disable HTTP redirects using `redirects=False` when sending requests, or not user the `Proxy-Authorization` header as mitigations.

Is CVE-2024-37891 actively exploited?

Active exploitation of CVE-2024-37891 has not been confirmed. Its EPSS score was 1.1% on 2026-10-17, the estimated probability of exploitation in the next 30 days.

What is the CVSS score for CVE-2024-37891?

CVE-2024-37891 has a CVSS v3 base score of 6.5 (MEDIUM severity).

Running urllib3? Hear about its next vulnerability

CVE Watch matches each new CVE to the vendors and products you list (vendor and product, not the version) and puts it in your alerts with its KEV and EPSS status.

Already have an account? Open CVE WatchNo credit card required · 50 free checks/month · Free API key