RedHat: RHSA-2021-3252:01 Moderate: python27 security update
Summary
Python is an interpreted, interactive, object-oriented programming
language, which includes modules, classes, exceptions, very high level
dynamic data types and dynamic typing. Python supports interfaces to many
system calls and libraries, as well as to various windowing systems.
Security Fix(es):
* python: Unsafe use of eval() on data retrieved via HTTP in the test suite
(CVE-2020-27619)
* python-jinja2: ReDoS vulnerability due to the sub-pattern
(CVE-2020-28493)
* python: Stack-based buffer overflow in PyCArg_repr in _ctypes/callproc.c
(CVE-2021-3177)
* python-babel: Relative path traversal allows attacker to load arbitrary
locale files and execute arbitrary code (CVE-2021-20095)
* python-pygments: Infinite loop in SML lexer may lead to DoS
(CVE-2021-20270)
* python: Web cache poisoning via urllib.parse.parse_qsl and
urllib.parse.parse_qs by using a semicolon in query parameters(CVE-2021-23336)
* python-pygments: ReDoS via crafted malicious input (CVE-2021-27291)
For more details about the security issue(s), including the impact, a CVSS
score, acknowledgments, and other related information, refer to the CVE
page(s) listed in the References section.
Additional information
* Changes in the default separator for the Python urllib parsing functions
To mitigate the Web Cache Poisoning CVE-2021-23336 in the Python urllib
library, the default separator for the urllib.parse.parse_qsl and
urllib.parse.parse_qs functions is being changed from both ampersand (&)
and semicolon (;) to only an ampersand.
The change of the default separator is potentially backwards incompatible,
therefore Red Hat provides a way to configure the behavior in Python
packages where the default separator has been changed. In addition, the
affected urllib parsing functions issue a warning if they detect that a
customer’s application has been affected by the change.
For more information, see the Knowledgebase article "Mitigation of Web
Cache Poisoning in the Python urllib library (CVE-2021-23336)" linked from
the References section.
Summary
Solution
For details on how to apply this update, which includes the changes
described in this advisory, refer to:
https://access.redhat.com/articles/11258
References
https://access.redhat.com/security/cve/CVE-2020-27619 https://access.redhat.com/security/cve/CVE-2020-28493 https://access.redhat.com/security/cve/CVE-2021-3177 https://access.redhat.com/security/cve/CVE-2021-20095 https://access.redhat.com/security/cve/CVE-2021-20270 https://access.redhat.com/security/cve/CVE-2021-23336 https://access.redhat.com/security/cve/CVE-2021-27291 https://access.redhat.com/security/updates/classification/#moderate https://access.redhat.com/articles/5860431
Package List
Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 7):
Source:
python27-babel-0.9.6-10.el7.src.rpm
python27-python-2.7.18-3.el7.src.rpm
python27-python-jinja2-2.6-16.el7.src.rpm
python27-python-pygments-1.5-5.el7.src.rpm
noarch:
python27-babel-0.9.6-10.el7.noarch.rpm
python27-python-babel-0.9.6-10.el7.noarch.rpm
python27-python-jinja2-2.6-16.el7.noarch.rpm
python27-python-pygments-1.5-5.el7.noarch.rpm
ppc64le:
python27-python-2.7.18-3.el7.ppc64le.rpm
python27-python-debug-2.7.18-3.el7.ppc64le.rpm
python27-python-debuginfo-2.7.18-3.el7.ppc64le.rpm
python27-python-devel-2.7.18-3.el7.ppc64le.rpm
python27-python-libs-2.7.18-3.el7.ppc64le.rpm
python27-python-test-2.7.18-3.el7.ppc64le.rpm
python27-python-tools-2.7.18-3.el7.ppc64le.rpm
python27-tkinter-2.7.18-3.el7.ppc64le.rpm
s390x:
python27-python-2.7.18-3.el7.s390x.rpm
python27-python-debug-2.7.18-3.el7.s390x.rpm
python27-python-debuginfo-2.7.18-3.el7.s390x.rpm
python27-python-devel-2.7.18-3.el7.s390x.rpm
python27-python-libs-2.7.18-3.el7.s390x.rpm
python27-python-test-2.7.18-3.el7.s390x.rpm
python27-python-tools-2.7.18-3.el7.s390x.rpm
python27-tkinter-2.7.18-3.el7.s390x.rpm
x86_64:
python27-python-2.7.18-3.el7.x86_64.rpm
python27-python-debug-2.7.18-3.el7.x86_64.rpm
python27-python-debuginfo-2.7.18-3.el7.x86_64.rpm
python27-python-devel-2.7.18-3.el7.x86_64.rpm
python27-python-libs-2.7.18-3.el7.x86_64.rpm
python27-python-test-2.7.18-3.el7.x86_64.rpm
python27-python-tools-2.7.18-3.el7.x86_64.rpm
python27-tkinter-2.7.18-3.el7.x86_64.rpm
Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.7):
Source:
python27-babel-0.9.6-10.el7.src.rpm
python27-python-2.7.18-3.el7.src.rpm
python27-python-jinja2-2.6-16.el7.src.rpm
python27-python-pygments-1.5-5.el7.src.rpm
noarch:
python27-babel-0.9.6-10.el7.noarch.rpm
python27-python-babel-0.9.6-10.el7.noarch.rpm
python27-python-jinja2-2.6-16.el7.noarch.rpm
python27-python-pygments-1.5-5.el7.noarch.rpm
ppc64le:
python27-python-2.7.18-3.el7.ppc64le.rpm
python27-python-debug-2.7.18-3.el7.ppc64le.rpm
python27-python-debuginfo-2.7.18-3.el7.ppc64le.rpm
python27-python-devel-2.7.18-3.el7.ppc64le.rpm
python27-python-libs-2.7.18-3.el7.ppc64le.rpm
python27-python-test-2.7.18-3.el7.ppc64le.rpm
python27-python-tools-2.7.18-3.el7.ppc64le.rpm
python27-tkinter-2.7.18-3.el7.ppc64le.rpm
s390x:
python27-python-2.7.18-3.el7.s390x.rpm
python27-python-debug-2.7.18-3.el7.s390x.rpm
python27-python-debuginfo-2.7.18-3.el7.s390x.rpm
python27-python-devel-2.7.18-3.el7.s390x.rpm
python27-python-libs-2.7.18-3.el7.s390x.rpm
python27-python-test-2.7.18-3.el7.s390x.rpm
python27-python-tools-2.7.18-3.el7.s390x.rpm
python27-tkinter-2.7.18-3.el7.s390x.rpm
x86_64:
python27-python-2.7.18-3.el7.x86_64.rpm
python27-python-debug-2.7.18-3.el7.x86_64.rpm
python27-python-debuginfo-2.7.18-3.el7.x86_64.rpm
python27-python-devel-2.7.18-3.el7.x86_64.rpm
python27-python-libs-2.7.18-3.el7.x86_64.rpm
python27-python-test-2.7.18-3.el7.x86_64.rpm
python27-python-tools-2.7.18-3.el7.x86_64.rpm
python27-tkinter-2.7.18-3.el7.x86_64.rpm
Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 7):
Source:
python27-babel-0.9.6-10.el7.src.rpm
python27-python-2.7.18-3.el7.src.rpm
python27-python-jinja2-2.6-16.el7.src.rpm
python27-python-pygments-1.5-5.el7.src.rpm
noarch:
python27-babel-0.9.6-10.el7.noarch.rpm
python27-python-babel-0.9.6-10.el7.noarch.rpm
python27-python-jinja2-2.6-16.el7.noarch.rpm
python27-python-pygments-1.5-5.el7.noarch.rpm
x86_64:
python27-python-2.7.18-3.el7.x86_64.rpm
python27-python-debug-2.7.18-3.el7.x86_64.rpm
python27-python-debuginfo-2.7.18-3.el7.x86_64.rpm
python27-python-devel-2.7.18-3.el7.x86_64.rpm
python27-python-libs-2.7.18-3.el7.x86_64.rpm
python27-python-test-2.7.18-3.el7.x86_64.rpm
python27-python-tools-2.7.18-3.el7.x86_64.rpm
python27-tkinter-2.7.18-3.el7.x86_64.rpm
These packages are GPG signed by Red Hat for security. Our key and
details on how to verify the signature are available from
https://access.redhat.com/security/team/key/
Topic
An update for python27-babel, python27-python, python27-python-jinja2, andpython27-python-pygments is now available for Red Hat Software Collections.Red Hat Product Security has rated this update as having a security impactof Moderate. A Common Vulnerability Scoring System (CVSS) base score, whichgives a detailed severity rating, is available for each vulnerability fromthe CVE link(s) in the References section.
Topic
Relevant Releases Architectures
Red Hat Software Collections for Red Hat Enterprise Linux Server (v. 7) - noarch, ppc64le, s390x, x86_64
Red Hat Software Collections for Red Hat Enterprise Linux Server EUS (v. 7.7) - noarch, ppc64le, s390x, x86_64
Red Hat Software Collections for Red Hat Enterprise Linux Workstation (v. 7) - noarch, x86_64
Bugs Fixed
1889886 - CVE-2020-27619 python: Unsafe use of eval() on data retrieved via HTTP in the test suite
1918168 - CVE-2021-3177 python: Stack-based buffer overflow in PyCArg_repr in _ctypes/callproc.c
1922136 - CVE-2021-20270 python-pygments: Infinite loop in SML lexer may lead to DoS
1928707 - CVE-2020-28493 python-jinja2: ReDoS vulnerability due to the sub-pattern
1928904 - CVE-2021-23336 python: Web cache poisoning via urllib.parse.parse_qsl and urllib.parse.parse_qs by using a semicolon in query parameters1940603 - CVE-2021-27291 python-pygments: ReDoS via crafted malicious input
1955615 - CVE-2021-20095 python-babel: Relative path traversal allows attacker to load arbitrary locale files and execute arbitrary code