CVE-2025-50182: urllib3 does not control redirects in browsers and Node.js

Published Jun 18, 2025
·
Updated

urllib3 supports being used in a Pyodide runtime utilizing the JavaScript Fetch API or falling back on XMLHttpRequest. This means you can use Python libraries to make HTTP requests from your browser or Node.js. Additionally, urllib3 provides a mechanism to control redirects.

However, the retries and redirect parameters are ignored with Pyodide; the runtime itself determines redirect behavior.

Affected usages

Any code which relies on urllib3 to control the number of redirects for an HTTP request in a Pyodide runtime.

Impact

Redirects are often used to exploit SSRF vulnerabilities. An application attempting to mitigate SSRF or open redirect vulnerabilities by disabling redirects may remain vulnerable if a Pyodide runtime redirect mechanism is unsuitable.

Remediation

If you use urllib3 in Node.js, upgrade to a patched version of urllib3.

Unfortunately, browsers provide no suitable way which urllib3 can use: XMLHttpRequest provides no control over redirects, the Fetch API returns opaqueredirect responses lacking data when redirects are controlled manually. Expect default browser behavior for redirects.

Other sources

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 Fetch API or falling back on XMLHttpRequest. This means Python libraries can be used to make HTTP requests from a browser or Node.js. Additionally, urllib3 provides a mechanism to control redirects, but the retries and redirect parameters are ignored with Pyodide; the runtime itself determines redirect behavior. This issue has been patched in version 2.5.0.

NVD

Affected Software

3 affected componentsFixes available
pip/urllib3>=2.2.0<2.5.0
2.5.0
Python urllib3>=2.2.0<2.5.0
IBM watsonx.data intelligence<=5.2.0, 5.2.1, 5.2.2, 5.3.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade pip/urllib3 to a version that resolves this vulnerability.

    Fixed in 2.5.0
  2. Upgrade

    Upgrade urllib3 to a version that resolves this vulnerability.

    Fixed in 2.5.0
  3. Compensating control

    In a Pyodide runtime, do not rely on urllib3 `retries` or redirect-related parameters to prevent SSRF/open-redirect behavior because Pyodide ignores urllib3 redirect/retry controls and the runtime determines redirect behavior; design mitigations that do not depend on disabling redirects via urllib3 in Pyodide, and account for default browser redirect behavior.

Event History

Jun 18, 2025
Advisory Published
via GitHub·05:50 PM
Data Sourced
via GitHub·05:50 PM
DescriptionSeverityWeaknessAffected Software
Jun 19, 2025
CVE Published
via MITRE·01:42 AM
Data Sourced
via MITRE·01:42 AM
DescriptionSeverityWeakness
Data Sourced
via NVD·02:15 AM
DescriptionSeverityWeakness
Data Sourced
via NVD·02:15 AM
RemedyAffected Software
Jun 24, 2026
Data Sourced
via IBM·12:00 AM
DescriptionAffected Software

Parent advisories

This vulnerability appears in the following advisories.

Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2025-50182?

CVE-2025-50182 is classified as a moderate severity vulnerability.

2

How do I fix CVE-2025-50182?

To fix CVE-2025-50182, upgrade urllib3 to version 2.5.0 or later.

3

Which versions of urllib3 are affected by CVE-2025-50182?

CVE-2025-50182 affects versions of urllib3 below 2.5.0.

4

What types of applications are impacted by CVE-2025-50182?

CVE-2025-50182 impacts applications using urllib3 in a Pyodide runtime environment.

5

Is CVE-2025-50182 a local or remote vulnerability?

CVE-2025-50182 is considered a remote vulnerability as it can be exploited over the network.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203