CRLF injection in Python - CVE-2019-9740
Published: June 19, 2019 / Updated: July 20, 2020
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
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
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
- http://www.securityfocus.com/bid/107466
- https://access.redhat.com/errata/RHSA-2019:1260
- https://bugs.python.org/issue36276
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/JMWSKTNOHSUOT3L25QFJAVCFYZX46FYK/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/JXASHCDD4PQFKTMKQN4YOP5ZH366ABN4/
Related Security Bulletins
- Multiple vulnerabilities in Python
- Amazon Linux AMI update for python27
- Amazon Linux AMI update for python35
- Amazon Linux AMI update for python34
- Red Hat update for python
- Slackware Linux update for python
- Red Hat update for python3
- Red Hat update for rh-python36-python
- Gentoo update for Python
- OpenSUSE Linux update for python-urllib3
- OpenSUSE Linux update for python-urllib3
- Red Hat Enterprise Linux 7 update for python
- Red Hat Enterprise Linux 7 update for python
- Red Hat Enterprise Linux 7 update for python
- Amazon Linux AMI update for python34, python35
- Amazon Linux AMI update for python36
- Multiple vulnerabilities in Dell EMC Data Computing Appliance (DCA)
- Multiple vulnerabilities in IBM Robotic Process Automation for Cloud Pak
- Red Hat Software Collections update for python27-python and python27-python-jinja2
- Multiple vulnerabilities in IBM QRadar SIEM
- Multiple vulnerabilities in IBM SOAR QRadar Plugin App
- Ubuntu update for python3.10
- Multiple vulnerabilities in IBM Cloud Pak for Network Automation
- Red Hat Enterprise Linux 8 update for the python27:2.7 module
- Fedora 30 update for python3
- Fedora 29 update for python3
- Fedora 30 update for python36
- Fedora 29 update for python36
- Fedora EPEL 6 update for python34
- Fedora EPEL 7 update for python34
- Fedora 30 update for python35
- Fedora 29 update for python35
- Fedora 31 update for python35
- F5 BIG-IP update for urllib
- Multiple vulnerabilities in F5 BIG-IP Python component