CVE-2019-18348
python: CRLF injection via the host part of the url passed to urlopen()
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
0Exploited in Wild
-Decision
Descriptions
An issue was discovered in urllib2 in Python 2.x through 2.7.17 and urllib in Python 3.x through 3.8.0. CRLF injection is possible if the attacker controls a url parameter, as demonstrated by the first argument to urllib.request.urlopen with \r
(specifically in the host component of a URL) followed by an HTTP header. This is similar to the CVE-2019-9740 query string issue and the CVE-2019-9947 path string issue. (This is not exploitable when glibc has CVE-2016-10739 fixed.). This is fixed in: v2.7.18, v2.7.18rc1; v3.5.10, v3.5.10rc1; v3.6.11, v3.6.11rc1, v3.6.12; v3.7.8, v3.7.8rc1, v3.7.9; v3.8.3, v3.8.3rc1, v3.8.4, v3.8.4rc1, v3.8.5, v3.8.6, v3.8.6rc1.
Se detectó un problema en urllib2 en Python versiones 2.x hasta 2.7.17 y urllib en Python versiones 3.x hasta 3.8.0. La inyección de CRLF es posible si el atacante controla un parámetro url, como es demostrado por el primer argumento para urllib.request.urlopen con \ r
(específicamente en el componente host de una URL) seguido de un encabezado HTTP. Esto es similar al problema de la cadena de consulta de CVE-2019-9740 y al problema de la cadena de ruta de CVE-2019-9947. (Esto no es explotable cuando glibc tiene corregido el CVE-2016-10739). Esto está corregido en las versiones: v2.7.18, v2.7.18rc1; v3.5.10, v3.5.10rc1; v3.6.11, v3.6.11rc1, v3.6.12; v3.7.8, v3.7.8rc1, v3.7.9; v3.8.3, v3.8.3rc1, v3.8.4, v3.8.4rc1, v3.8.5, v3.8.6, v3.8.6rc1
A CRLF injection flaw was discovered in python in the way URLs are handled when doing an HTTP/HTTPS connection (e.g. through urlopen() or HTTPConnection). An attacker who can control the url parameter passed to urlopen method in the urllib/urllib2 modules can inject CRLF sequences and HTTP headers by abusing the "host" part of the URL.
It was discovered that Python incorrectly handled certain inputs. An attacker could possibly use this issue to execute arbitrary code. This issue only affected Ubuntu 14.04 LTS and Ubuntu 18.04 LTS. It was discovered that Python incorrectly used regular expressions vulnerable to catastrophic backtracking. A remote attacker could possibly use this issue to cause a denial of service. This issue only affected Ubuntu 14.04 LTS.
CVSS Scores
SSVC
- Decision:-
Timeline
- 2019-10-23 CVE Reserved
- 2019-10-23 CVE Published
- 2024-08-05 CVE Updated
- 2025-03-30 EPSS Updated
- ---------- Exploited in Wild
- ---------- KEV Due Date
- ---------- First Exploit
CWE
- CWE-74: Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')
- CWE-113: Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Request/Response Splitting')
CAPEC
References (14)
URL | Tag | Source |
---|---|---|
https://lists.debian.org/debian-lts-announce/2020/07/msg00011.html | Mailing List |
|
https://security.netapp.com/advisory/ntap-20191107-0004 | Technical Description |
|
https://www.oracle.com/security-alerts/cpuoct2020.html | Technical Description |
|
URL | Date | SRC |
---|
URL | Date | SRC |
---|
Affected Vendors, Products, and Versions
Vendor | Product | Version | Other | Status | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
Python Search vendor "Python" | Python Search vendor "Python" for product "Python" | >= 2.0 <= 2.7.17 Search vendor "Python" for product "Python" and version " >= 2.0 <= 2.7.17" | - |
Affected
| ||||||
Python Search vendor "Python" | Python Search vendor "Python" for product "Python" | >= 3.0 < 3.5.10 Search vendor "Python" for product "Python" and version " >= 3.0 < 3.5.10" | - |
Affected
| ||||||
Python Search vendor "Python" | Python Search vendor "Python" for product "Python" | >= 3.6.0 < 3.6.11 Search vendor "Python" for product "Python" and version " >= 3.6.0 < 3.6.11" | - |
Affected
| ||||||
Python Search vendor "Python" | Python Search vendor "Python" for product "Python" | >= 3.7.0 < 3.7.8 Search vendor "Python" for product "Python" and version " >= 3.7.0 < 3.7.8" | - |
Affected
| ||||||
Python Search vendor "Python" | Python Search vendor "Python" for product "Python" | >= 3.8.0 < 3.8.3 Search vendor "Python" for product "Python" and version " >= 3.8.0 < 3.8.3" | - |
Affected
|