Debian 10261 Published by

A python3.5 security update has been released for Debian GNU/Linux 9 LTS to address three security issues.



DLA 2619-1: python3.5 security update



- -------------------------------------------------------------------------
Debian LTS Advisory DLA-2619-1 debian-lts@lists.debian.org
  https://www.debian.org/lts/security/ Anton Gladky
April 05, 2021   https://wiki.debian.org/LTS
- -------------------------------------------------------------------------

Package : python3.5
Version : 3.5.3-1+deb9u4
CVE ID : CVE-2021-3177 CVE-2021-3426 CVE-2021-23336

Three security issues have been discovered in python3.5:

CVE-2021-3177

Python 3.x has a buffer overflow in PyCArg_repr in _ctypes/callproc.c,
which may lead to remote code execution in certain Python applications that accept
floating-point numbers as untrusted input.
This occurs because sprintf is used unsafely.

CVE-2021-3426

Running `pydoc -p` allows other local users to extract arbitrary files.
The `/getfile?key=path` URL allows to read arbitrary file on the filesystem.

The fix removes the "getfile" feature of the pydoc module which
could be abused to read arbitrary files on the disk (directory
traversal vulnerability).

CVE-2021-23336

The Python3.5 vulnerable to Web Cache Poisoning via urllib.parse.parse_qsl
and urllib.parse.parse_qs by using a vector called parameter cloaking. When
the attacker can separate query parameters using a semicolon (;), they can
cause a difference in the interpretation of the request between the proxy
(running with default configuration) and the server. This can result in malicious
requests being cached as completely safe ones, as the proxy would usually not
see the semicolon as a separator, and therefore would not include it in a cache
key of an unkeyed parameter.

**Attention, API-change!**
Please be sure your software is working properly if it uses `urllib.parse.parse_qs`
or `urllib.parse.parse_qsl`, `cgi.parse` or `cgi.parse_multipart`.

Earlier Python versions allowed using both ``;`` and ``&`` as query parameter
separators in `urllib.parse.parse_qs` and `urllib.parse.parse_qsl`.
Due to security concerns, and to conform with
newer W3C recommendations, this has been changed to allow only a single
separator key, with ``&`` as the default. This change also affects
`cgi.parse` and `cgi.parse_multipart` as they use the affected
functions internally. For more details, please see their respective
documentation.

For Debian 9 stretch, these problems have been fixed in version
3.5.3-1+deb9u4.

We recommend that you upgrade your python3.5 packages.

For the detailed security status of python3.5 please refer to
its security tracker page at:
  https://security-tracker.debian.org/tracker/python3.5

Further information about Debian LTS security advisories, how to apply
these updates to your system and frequently asked questions can be
found at:   https://wiki.debian.org/LTS