-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Vulnerable Library - nexmo-2.4.0-py2.py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Vulnerabilities
Vulnerability | Severity | Dependency | Type | Fixed in (nexmo version) | Remediation Possible** | |
---|---|---|---|---|---|---|
CVE-2024-39689 | 7.5 | certifi-2022.9.24-py3-none-any.whl | Transitive | 2.5.0 | ✅ | |
CVE-2024-3651 | 7.5 | idna-3.4-py3-none-any.whl | Transitive | 2.5.0 | ✅ | |
CVE-2023-37920 | 7.5 | certifi-2022.9.24-py3-none-any.whl | Transitive | 2.5.0 | ✅ | |
CVE-2025-45768 | 7.0 | PyJWT-2.5.0-py3-none-any.whl | Transitive | N/A* | ❌ | |
CVE-2022-23491 | 6.8 | certifi-2022.9.24-py3-none-any.whl | Transitive | N/A* | ❌ | |
CVE-2023-32681 | 6.1 | requests-2.28.1-py3-none-any.whl | Transitive | 2.5.0 | ✅ | |
CVE-2023-43804 | 5.9 | urllib3-1.26.12-py2.py3-none-any.whl | Transitive | 2.5.0 | ✅ | |
CVE-2024-35195 | 5.6 | requests-2.28.1-py3-none-any.whl | Transitive | 2.5.0 | ✅ | |
CVE-2025-50182 | 5.3 | urllib3-1.26.12-py2.py3-none-any.whl | Transitive | 2.5.0 | ✅ | |
CVE-2025-50181 | 5.3 | urllib3-1.26.12-py2.py3-none-any.whl | Transitive | 2.5.0 | ✅ | |
CVE-2024-47081 | 5.3 | requests-2.28.1-py3-none-any.whl | Transitive | 2.5.0 | ✅ | |
CVE-2024-37891 | 4.4 | urllib3-1.26.12-py2.py3-none-any.whl | Transitive | 2.5.0 | ✅ | |
CVE-2023-45803 | 4.2 | urllib3-1.26.12-py2.py3-none-any.whl | Transitive | 2.5.0 | ✅ |
*For some transitive vulnerabilities, there is no version of direct dependency with a fix. Check the "Details" section below to see if there is a version of transitive dependency where vulnerability is fixed.
**In some cases, Remediation PR cannot be created automatically for a vulnerability despite the availability of remediation
Details
CVE-2024-39689
Vulnerable Library - certifi-2022.9.24-py3-none-any.whl
Python package for providing Mozilla's CA Bundle.
Library home page: https://files.pythonhosted.org/packages/1d/38/fa96a426e0c0e68aabc68e896584b83ad1eec779265a028e156ce509630e/certifi-2022.9.24-py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- requests-2.28.1-py3-none-any.whl
- ❌ certifi-2022.9.24-py3-none-any.whl (Vulnerable Library)
- requests-2.28.1-py3-none-any.whl
Found in base branch: main
Vulnerability Details
Certifi is a curated collection of Root Certificates for validating the trustworthiness of SSL certificates while verifying the identity of TLS hosts. Certifi starting in 2021.05.30 and prior to 2024.07.4 recognized root certificates from GLOBALTRUST
. Certifi 2024.07.04 removes root certificates from GLOBALTRUST
from the root store. These are in the process of being removed from Mozilla's trust store. GLOBALTRUST
's root certificates are being removed pursuant to an investigation which identified "long-running and unresolved compliance issues."
Publish Date: 2024-07-05
URL: CVE-2024-39689
CVSS 3 Score Details (7.5)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: High
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Origin: GHSA-248v-346w-9cwc
Release Date: 2024-07-05
Fix Resolution (certifi): 2024.7.4
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
CVE-2024-3651
Vulnerable Library - idna-3.4-py3-none-any.whl
Internationalized Domain Names in Applications (IDNA)
Library home page: https://files.pythonhosted.org/packages/fc/34/3030de6f1370931b9dbb4dad48f6ab1015ab1d32447850b9fc94e60097be/idna-3.4-py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- requests-2.28.1-py3-none-any.whl
- ❌ idna-3.4-py3-none-any.whl (Vulnerable Library)
- requests-2.28.1-py3-none-any.whl
Found in base branch: main
Vulnerability Details
A vulnerability was identified in the kjd/idna library, specifically within the "idna.encode()" function, affecting version 3.6. The issue arises from the function's handling of crafted input strings, which can lead to quadratic complexity and consequently, a denial of service condition. This vulnerability is triggered by a crafted input that causes the "idna.encode()" function to process the input with considerable computational load, significantly increasing the processing time in a quadratic manner relative to the input size.
Publish Date: 2024-07-07
URL: CVE-2024-3651
CVSS 3 Score Details (7.5)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: None
- Availability Impact: High
Suggested Fix
Type: Upgrade version
Origin: GHSA-jjg7-2v4v-x38h
Release Date: 2024-07-07
Fix Resolution (idna): 3.7
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
CVE-2023-37920
Vulnerable Library - certifi-2022.9.24-py3-none-any.whl
Python package for providing Mozilla's CA Bundle.
Library home page: https://files.pythonhosted.org/packages/1d/38/fa96a426e0c0e68aabc68e896584b83ad1eec779265a028e156ce509630e/certifi-2022.9.24-py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- requests-2.28.1-py3-none-any.whl
- ❌ certifi-2022.9.24-py3-none-any.whl (Vulnerable Library)
- requests-2.28.1-py3-none-any.whl
Found in base branch: main
Vulnerability Details
Certifi is a curated collection of Root Certificates for validating the trustworthiness of SSL certificates while verifying the identity of TLS hosts. Certifi prior to version 2023.07.22 recognizes "e-Tugra" root certificates. e-Tugra's root certificates were subject to an investigation prompted by reporting of security issues in their systems. Certifi 2023.07.22 removes root certificates from "e-Tugra" from the root store.
Publish Date: 2023-07-25
URL: CVE-2023-37920
CVSS 3 Score Details (7.5)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: High
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Origin: GHSA-xqr8-7jwr-rhp7
Release Date: 2023-07-25
Fix Resolution (certifi): 2023.7.22
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
CVE-2025-45768
Vulnerable Library - PyJWT-2.5.0-py3-none-any.whl
JSON Web Token implementation in Python
Library home page: https://files.pythonhosted.org/packages/37/82/43382713811f0ddd9fff1ed778af6818cc2080ccd425e3eba540be690fb6/PyJWT-2.5.0-py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- ❌ PyJWT-2.5.0-py3-none-any.whl (Vulnerable Library)
Found in base branch: main
Vulnerability Details
pyjwt v2.10.1 was discovered to contain weak encryption.
Publish Date: 2025-07-31
URL: CVE-2025-45768
CVSS 3 Score Details (7.0)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: Low
- Integrity Impact: Low
- Availability Impact: High
CVE-2022-23491
Vulnerable Library - certifi-2022.9.24-py3-none-any.whl
Python package for providing Mozilla's CA Bundle.
Library home page: https://files.pythonhosted.org/packages/1d/38/fa96a426e0c0e68aabc68e896584b83ad1eec779265a028e156ce509630e/certifi-2022.9.24-py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- requests-2.28.1-py3-none-any.whl
- ❌ certifi-2022.9.24-py3-none-any.whl (Vulnerable Library)
- requests-2.28.1-py3-none-any.whl
Found in base branch: main
Vulnerability Details
Certifi is a curated collection of Root Certificates for validating the trustworthiness of SSL certificates while verifying the identity of TLS hosts. Certifi 2022.12.07 removes root certificates from "TrustCor" from the root store. These are in the process of being removed from Mozilla's trust store. TrustCor's root certificates are being removed pursuant to an investigation prompted by media reporting that TrustCor's ownership also operated a business that produced spyware. Conclusions of Mozilla's investigation can be found in the linked google group discussion.
Publish Date: 2022-12-07
URL: CVE-2022-23491
CVSS 3 Score Details (6.8)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: High
- User Interaction: None
- Scope: Changed
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: High
- Availability Impact: None
CVE-2023-32681
Vulnerable Library - requests-2.28.1-py3-none-any.whl
Python HTTP for Humans.
Library home page: https://files.pythonhosted.org/packages/ca/91/6d9b8ccacd0412c08820f72cebaa4f0c0441b5cda699c90f618b6f8a1b42/requests-2.28.1-py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- ❌ requests-2.28.1-py3-none-any.whl (Vulnerable Library)
Found in base branch: main
Vulnerability Details
Requests is a HTTP library. Since Requests 2.3.0, Requests has been leaking Proxy-Authorization headers to destination servers when redirected to an HTTPS endpoint. This is a product of how we use rebuild_proxies
to reattach the Proxy-Authorization
header to requests. For HTTP connections sent through the tunnel, the proxy will identify the header in the request itself and remove it prior to forwarding to the destination server. However when sent over HTTPS, the Proxy-Authorization
header must be sent in the CONNECT request as the proxy has no visibility into the tunneled request. This results in Requests forwarding proxy credentials to the destination server unintentionally, allowing a malicious actor to potentially exfiltrate sensitive information. This issue has been patched in version 2.31.0.
Publish Date: 2023-05-26
URL: CVE-2023-32681
CVSS 3 Score Details (6.1)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: None
- User Interaction: Required
- Scope: Changed
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Origin: GHSA-j8r2-6x86-q33q
Release Date: 2023-05-26
Fix Resolution (requests): 2.31.0
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
CVE-2023-43804
Vulnerable Library - urllib3-1.26.12-py2.py3-none-any.whl
HTTP library with thread-safe connection pooling, file post, and more.
Library home page: https://files.pythonhosted.org/packages/6f/de/5be2e3eed8426f871b170663333a0f627fc2924cc386cd41be065e7ea870/urllib3-1.26.12-py2.py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- requests-2.28.1-py3-none-any.whl
- ❌ urllib3-1.26.12-py2.py3-none-any.whl (Vulnerable Library)
- requests-2.28.1-py3-none-any.whl
Found in base branch: main
Vulnerability Details
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 user to specify a Cookie
header and unknowingly leak information via HTTP redirects to a different origin if that user doesn't disable redirects explicitly. This issue has been patched in urllib3 version 1.26.17 or 2.0.5.
Mend Note: The description of this vulnerability differs from MITRE.
Publish Date: 2023-10-04
URL: CVE-2023-43804
CVSS 3 Score Details (5.9)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: High
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: High
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Origin: https://www.cve.org/CVERecord?id=CVE-2023-43804
Release Date: 2023-10-04
Fix Resolution (urllib3): 1.26.17
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
CVE-2024-35195
Vulnerable Library - requests-2.28.1-py3-none-any.whl
Python HTTP for Humans.
Library home page: https://files.pythonhosted.org/packages/ca/91/6d9b8ccacd0412c08820f72cebaa4f0c0441b5cda699c90f618b6f8a1b42/requests-2.28.1-py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- ❌ requests-2.28.1-py3-none-any.whl (Vulnerable Library)
Found in base branch: main
Vulnerability Details
Requests is a HTTP library. Prior to 2.32.0, when making requests through a Requests "Session", if the first request is made with "verify=False" to disable cert verification, all subsequent requests to the same host will continue to ignore cert verification regardless of changes to the value of "verify". This behavior will continue for the lifecycle of the connection in the connection pool. This vulnerability is fixed in 2.32.0.
Mend Note: The description of this vulnerability differs from MITRE.
Publish Date: 2024-05-20
URL: CVE-2024-35195
CVSS 3 Score Details (5.6)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Local
- Attack Complexity: High
- Privileges Required: High
- User Interaction: Required
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: High
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Origin: GHSA-9wx4-h78v-vm56
Release Date: 2024-05-20
Fix Resolution (requests): 2.32.0
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
CVE-2025-50182
Vulnerable Library - urllib3-1.26.12-py2.py3-none-any.whl
HTTP library with thread-safe connection pooling, file post, and more.
Library home page: https://files.pythonhosted.org/packages/6f/de/5be2e3eed8426f871b170663333a0f627fc2924cc386cd41be065e7ea870/urllib3-1.26.12-py2.py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- requests-2.28.1-py3-none-any.whl
- ❌ urllib3-1.26.12-py2.py3-none-any.whl (Vulnerable Library)
- requests-2.28.1-py3-none-any.whl
Found in base branch: main
Vulnerability Details
urllib3 is a user-friendly HTTP client library for Python. 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.
Publish Date: 2025-06-19
URL: CVE-2025-50182
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: Low
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Release Date: 2025-06-19
Fix Resolution (urllib3): 2.5.0
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
CVE-2025-50181
Vulnerable Library - urllib3-1.26.12-py2.py3-none-any.whl
HTTP library with thread-safe connection pooling, file post, and more.
Library home page: https://files.pythonhosted.org/packages/6f/de/5be2e3eed8426f871b170663333a0f627fc2924cc386cd41be065e7ea870/urllib3-1.26.12-py2.py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- requests-2.28.1-py3-none-any.whl
- ❌ urllib3-1.26.12-py2.py3-none-any.whl (Vulnerable Library)
- requests-2.28.1-py3-none-any.whl
Found in base branch: main
Vulnerability Details
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.
Publish Date: 2025-06-19
URL: CVE-2025-50181
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: Low
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Release Date: 2025-06-19
Fix Resolution (urllib3): 2.5.0
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
CVE-2024-47081
Vulnerable Library - requests-2.28.1-py3-none-any.whl
Python HTTP for Humans.
Library home page: https://files.pythonhosted.org/packages/ca/91/6d9b8ccacd0412c08820f72cebaa4f0c0441b5cda699c90f618b6f8a1b42/requests-2.28.1-py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- ❌ requests-2.28.1-py3-none-any.whl (Vulnerable Library)
Found in base branch: main
Vulnerability Details
Requests is a HTTP library. Due to a URL parsing issue, Requests releases prior to 2.32.4 may leak .netrc credentials to third parties for specific maliciously-crafted URLs. Users should upgrade to version 2.32.4 to receive a fix. For older versions of Requests, use of the .netrc file can be disabled with "trust_env=False" on one's Requests Session.
Mend Note: The description of this vulnerability differs from MITRE.
Publish Date: 2025-06-09
URL: CVE-2024-47081
CVSS 3 Score Details (5.3)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: None
- User Interaction: Required
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Origin: GHSA-9hjg-9r4m-mvj7
Release Date: 2025-06-09
Fix Resolution (requests): 2.32.4
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
CVE-2024-37891
Vulnerable Library - urllib3-1.26.12-py2.py3-none-any.whl
HTTP library with thread-safe connection pooling, file post, and more.
Library home page: https://files.pythonhosted.org/packages/6f/de/5be2e3eed8426f871b170663333a0f627fc2924cc386cd41be065e7ea870/urllib3-1.26.12-py2.py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- requests-2.28.1-py3-none-any.whl
- ❌ urllib3-1.26.12-py2.py3-none-any.whl (Vulnerable Library)
- requests-2.28.1-py3-none-any.whl
Found in base branch: main
Vulnerability Details
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.
Mend Note: The description of this vulnerability differs from MITRE.
Publish Date: 2024-06-17
URL: CVE-2024-37891
CVSS 3 Score Details (4.4)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: High
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Origin: GHSA-34jh-p97f-mpxf
Release Date: 2024-06-17
Fix Resolution (urllib3): 1.26.19
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
CVE-2023-45803
Vulnerable Library - urllib3-1.26.12-py2.py3-none-any.whl
HTTP library with thread-safe connection pooling, file post, and more.
Library home page: https://files.pythonhosted.org/packages/6f/de/5be2e3eed8426f871b170663333a0f627fc2924cc386cd41be065e7ea870/urllib3-1.26.12-py2.py3-none-any.whl
Path to dependency file: /requirements.txt
Path to vulnerable library: /requirements.txt
Dependency Hierarchy:
- nexmo-2.4.0-py2.py3-none-any.whl (Root Library)
- requests-2.28.1-py3-none-any.whl
- ❌ urllib3-1.26.12-py2.py3-none-any.whl (Vulnerable Library)
- requests-2.28.1-py3-none-any.whl
Found in base branch: main
Vulnerability Details
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 accept a request body (like "POST") to "GET" as is required by HTTP RFCs. Although this behavior is not specified in the section for redirects, it can be inferred by piecing together information from different sections and we have observed the behavior in other major HTTP client implementations like curl and web browsers. Because the vulnerability requires a previously trusted service to become compromised in order to have an impact on confidentiality we believe the exploitability of this vulnerability is low. Additionally, many users aren't putting sensitive data in HTTP request bodies, if this is the case then this vulnerability isn't exploitable. Both of the following conditions must be true to be affected by this vulnerability: 1. Using urllib3 and submitting sensitive information in the HTTP request body (such as form data or JSON) and 2. The origin service is compromised and starts redirecting using 301, 302, or 303 to a malicious peer or the redirected-to service becomes compromised. This issue has been addressed in versions 1.26.18 and 2.0.7 and users are advised to update to resolve this issue. Users unable to update should disable redirects for services that aren't expecting to respond with redirects with "redirects=False" and disable automatic redirects with "redirects=False" and handle 301, 302, and 303 redirects manually by stripping the HTTP request body.
Mend Note: The description of this vulnerability differs from MITRE.
Publish Date: 2023-10-17
URL: CVE-2023-45803
CVSS 3 Score Details (4.2)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Adjacent
- Attack Complexity: High
- Privileges Required: High
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: High
- Integrity Impact: None
- Availability Impact: None
Suggested Fix
Type: Upgrade version
Origin: GHSA-g4mx-q9vg-27p4
Release Date: 2023-10-17
Fix Resolution (urllib3): 1.26.18
Direct dependency fix Resolution (nexmo): 2.5.0
⛑️ Automatic Remediation will be attempted for this issue.
⛑️Automatic Remediation will be attempted for this issue.