CVE Vulnerabilities

CVE-2019-9947

Improper Neutralization of CRLF Sequences ('CRLF Injection')

Published: Mar 23, 2019 | Modified: Nov 07, 2023
CVSS 3.x
6.1
MEDIUM
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
CVSS 2.x
4.3 MEDIUM
AV:N/AC:M/Au:N/C:N/I:P/A:N
RedHat/V2
RedHat/V3
6.5 MODERATE
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Ubuntu
MEDIUM

An issue was discovered in urllib2 in Python 2.x through 2.7.16 and urllib in Python 3.x through 3.7.3. CRLF injection is possible if the attacker controls a url parameter, as demonstrated by the first argument to urllib.request.urlopen with rn (specifically in the path component of a URL that lacks a ? character) followed by an HTTP header or a Redis command. This is similar to the CVE-2019-9740 query string issue. This is fixed in: v2.7.17, v2.7.17rc1, v2.7.18, v2.7.18rc1; v3.5.10, v3.5.10rc1, v3.5.8, v3.5.8rc1, v3.5.8rc2, v3.5.9; v3.6.10, v3.6.10rc1, v3.6.11, v3.6.11rc1, v3.6.12, v3.6.9, v3.6.9rc1; v3.7.4, v3.7.4rc1, v3.7.4rc2, v3.7.5, v3.7.5rc1, v3.7.6, v3.7.6rc1, v3.7.7, v3.7.7rc1, v3.7.8, v3.7.8rc1, v3.7.9.

Weakness

The product uses CRLF (carriage return line feeds) as a special element, e.g. to separate lines or records, but it does not neutralize or incorrectly neutralizes CRLF sequences from inputs.

Affected Software

Name Vendor Start Version End Version
Python Python 2.7.0 (including) 2.7.17 (excluding)
Python Python 3.5.0 (including) 3.5.8 (excluding)
Python Python 3.6.0 (including) 3.6.9 (excluding)
Python Python 3.7.0 (including) 3.7.4 (excluding)
Red Hat Ansible Tower 3.4 for RHEL 7 RedHat ansible-tower-34/ansible-tower-memcached:1.4.15-28 *
Red Hat Ansible Tower 3.4 for RHEL 7 RedHat ansible-tower-35/ansible-tower-memcached:1.4.15-28 *
Red Hat Ansible Tower 3.4 for RHEL 7 RedHat ansible-tower-37/ansible-tower-memcached-rhel7:1.4.15-28 *
Red Hat Enterprise Linux 7 RedHat python-0:2.7.5-86.el7 *
Red Hat Enterprise Linux 7.4 Advanced Update Support RedHat python-0:2.7.5-63.el7_4 *
Red Hat Enterprise Linux 7.4 Telco Extended Update Support RedHat python-0:2.7.5-63.el7_4 *
Red Hat Enterprise Linux 7.4 Update Services for SAP Solutions RedHat python-0:2.7.5-63.el7_4 *
Red Hat Enterprise Linux 7.5 Extended Update Support RedHat python-0:2.7.5-74.el7_5 *
Red Hat Enterprise Linux 7.6 Extended Update Support RedHat python-0:2.7.5-83.el7_6 *
Red Hat Enterprise Linux 8 RedHat python27:2.7-8010020190903182548.51c94b97 *
Red Hat Enterprise Linux 8 RedHat python3-0:3.6.8-15.1.el8 *
Red Hat Enterprise Linux 8 RedHat python3-0:3.6.8-15.1.el8 *
Red Hat Software Collections for Red Hat Enterprise Linux 6 RedHat python27-python-0:2.7.16-4.el6 *
Red Hat Software Collections for Red Hat Enterprise Linux 6 RedHat python27-python-jinja2-0:2.6-12.el6 *
Red Hat Software Collections for Red Hat Enterprise Linux 6 RedHat rh-python36-python-0:3.6.9-2.el6 *
Red Hat Software Collections for Red Hat Enterprise Linux 7 RedHat python27-python-0:2.7.16-4.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7 RedHat python27-python-jinja2-0:2.6-15.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7 RedHat rh-python36-python-0:3.6.9-2.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7.4 EUS RedHat python27-python-0:2.7.16-4.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7.4 EUS RedHat python27-python-jinja2-0:2.6-15.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7.5 EUS RedHat python27-python-0:2.7.16-4.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7.5 EUS RedHat python27-python-jinja2-0:2.6-15.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7.5 EUS RedHat rh-python36-python-0:3.6.9-2.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7.6 EUS RedHat python27-python-0:2.7.16-4.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7.6 EUS RedHat python27-python-jinja2-0:2.6-15.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7.6 EUS RedHat rh-python36-python-0:3.6.9-2.el7 *
Red Hat Software Collections for Red Hat Enterprise Linux 7.7 EUS RedHat rh-python36-python-0:3.6.9-2.el7 *
Python2.7 Ubuntu bionic *
Python2.7 Ubuntu cosmic *
Python2.7 Ubuntu disco *
Python2.7 Ubuntu trusty *
Python2.7 Ubuntu trusty/esm *
Python2.7 Ubuntu xenial *
Python3.4 Ubuntu trusty *
Python3.4 Ubuntu trusty/esm *
Python3.5 Ubuntu trusty *
Python3.5 Ubuntu trusty/esm *
Python3.5 Ubuntu xenial *
Python3.6 Ubuntu bionic *
Python3.6 Ubuntu cosmic *
Python3.7 Ubuntu bionic *
Python3.7 Ubuntu cosmic *
Python3.7 Ubuntu disco *

Potential Mitigations

References