CRLF injection in Python - CVE-2019-9740

 

CRLF injection in Python - CVE-2019-9740

Published: June 19, 2019 / Updated: July 20, 2020


Vulnerability identifier: #VU18829
CSH Severity: Medium
CVSS v4: 6.3 [CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N]
CVE-ID: CVE-2019-9740
CWE-ID: CWE-93
Exploitation vector: Remote access
Exploit availability: No public exploit available

Vulnerability details

The vulnerability allows a remote attacker to perform CRLF injection attacks.

The vulnerability exists within urllib2 implementation for Python 2.x and urllib3 implementation for Python 3.x when processing the path component of a URL after the "?" character within the urllib.request.urlopen() call. A remote attacker with ability to control URL, passed to the application, can use CRLF sequences to split the HTTP request and inject arbitrary HTTP headers into request, made by the application.


Affected software

Python
Amazon Linux AMI
Gentoo Linux
Fedora
Red Hat Enterprise Linux Workstation
Red Hat Enterprise Linux for ARM 64
Red Hat Enterprise Linux for Power 9
Red Hat Enterprise Linux for IBM System z (Structure A)
Red Hat Enterprise Linux Server
Red Hat Enterprise Linux Desktop
Red Hat Enterprise Linux for IBM z Systems
Red Hat Enterprise Linux for Scientific Computing
Red Hat Enterprise Linux Server - TUS
Red Hat Enterprise Linux Server - AUS
Red Hat Enterprise Linux for Power, little endian - Extended Update Support
Red Hat Enterprise Linux for x86_64 - Extended Update Support
Red Hat Enterprise Linux for IBM z Systems - Extended Update Support
Red Hat Enterprise Linux for Power, big endian - Extended Update Support
Red Hat Enterprise Linux EUS Compute Node
Red Hat Enterprise Linux for x86_64
Red Hat Enterprise Linux for Power, little endian
Slackware Linux
Ubuntu
Opensuse
Red Hat Software Collections
Cloud Pak for Network Automation
Data Computing Appliance (DCA)
SOAR QRadar Plugin App
python (Red Hat package)
Red Hat Enterprise Linux Server for x86_64 - Update Services for SAP Solutions
Red Hat Enterprise Linux Server for Power LE - Update Services for SAP Solutions
python3.5 (Ubuntu package)
python3.7-minimal (Ubuntu package)
python3.7 (Ubuntu package)
python3.6-minimal (Ubuntu package)
python3.6 (Ubuntu package)
python3.9-minimal (Ubuntu package)
python3.9 (Ubuntu package)
python3.8-minimal (Ubuntu package)
python3.8 (Ubuntu package)
python3.11 (Ubuntu package)
python3.5-minimal (Ubuntu package)
python3.11-minimal (Ubuntu package)
python27-python-jinja2 (Red Hat package)
python27-python (Red Hat package)
python34
python35
python36
python3
python3.10-minimal (Ubuntu package)
python3.10 (Ubuntu package)
python3.12-minimal (Ubuntu package)
python3.12 (Ubuntu package)
BIG-IP
IBM Qradar SIEM
IBM Robotic Process Automation

How to mitigate CVE-2019-9740

Install update from vendor's website.

Cloud Pak for Network Automation - update to 2.7.4
python (Red Hat package) - addressed in versions 2.7.5-63.el7_4, 2.7.5-74.el7_5, 2.7.5-83.el7_6
BIG-IP - addressed in versions 17.1.2.1, 17.5.1
python3.5 (Ubuntu package) - update to Ubuntu Pro (Infra-only)
python3.7-minimal (Ubuntu package) - update to Ubuntu Pro
python3.7 (Ubuntu package) - update to Ubuntu Pro
python3.6-minimal (Ubuntu package) - update to Ubuntu Pro
python3.6 (Ubuntu package) - update to Ubuntu Pro
python3.9-minimal (Ubuntu package) - update to Ubuntu Pro
python3.9 (Ubuntu package) - update to Ubuntu Pro
python3.8-minimal (Ubuntu package) - addressed in versions Ubuntu Pro, 3.8.10-0ubuntu1~20.04.10
python3.8 (Ubuntu package) - addressed in versions Ubuntu Pro, 3.8.10-0ubuntu1~20.04.10
python3.11 (Ubuntu package) - addressed in versions Ubuntu Pro, 3.11.6-3ubuntu0.1
python3.5-minimal (Ubuntu package) - update to Ubuntu Pro
python3.11-minimal (Ubuntu package) - addressed in versions Ubuntu Pro, 3.11.6-3ubuntu0.1
python27-python-jinja2 (Red Hat package) - addressed in versions 2.6-12.el6, 2.6-15.el7
python27-python (Red Hat package) - addressed in versions 2.7.16-4.el6, 2.7.16-4.el7
python34 - addressed in versions 3.4.10-4.el6, 3.4.10-4.el7
python35 - addressed in versions 3.5.8-2.fc29, 3.5.8-2.fc30, 3.5.8-2.fc31
python36 - addressed in versions 3.6.9-1.fc29, 3.6.9-1.fc30
python3 - addressed in versions 3.7.3-3.fc29, 3.7.3-3.fc30
python3.10-minimal (Ubuntu package) - update to 3.10.12-1~22.04.4
python3.10 (Ubuntu package) - update to 3.10.12-1~22.04.4
python3.12-minimal (Ubuntu package) - update to 3.12.0-1ubuntu0.1
python3.12 (Ubuntu package) - update to 3.12.0-1ubuntu0.1
Data Computing Appliance (DCA) - update to 4.3.0.0
SOAR QRadar Plugin App - update to 5.4.0
IBM Qradar SIEM - update to 7.5.0 Update Pack 6
IBM Robotic Process Automation - update to 21.0.5

External References

Related Security Bulletins