Debian DLA-3432-1:python2.7 - LTS 安全更新

critical Nessus 插件 ID 176347

简介

远程 Debian 主机上缺少一个或多个与安全性相关的更新。

描述

远程 Debian 10 主机上安装的程序包受到 dla-3432 公告中提及的多个漏洞影响。

- 在 Python(也称为 CPython)3.10.8 及之前的所有版本中,mailcap 模块不会将转义字符添加到在系统 mailcap 文件中发现的命令中,攻击者可借此将 shell 命令注入使用不受信任的输入调用 mailcap.findmatch 的应用程序(如果缺少对用户提供的文件名或参数的验证)。此补丁也会向后移植到 3.7、3.8、3.9 (CVE-2015-20107)

- 在 Python 3.8.3 及之前版本的 Lib/tarfile.py 中,由于 _proc_pax 缺少标头验证,因此攻击者可以构建一个由 tarfile.open 打开时产生无限循环的 TAR 归档文件。(CVE-2019-20907)

- 如果攻击者控制 HTTP 请求方法,则 Python 3.5.10 之前的 3.x、3.6.12 之前的 3.6.x、3.7.9 之前的 3.7.x 以及 3.8.5 之前的 3.8.x 中的 http.client 会允许 CRLF 注入,这一点已通过在 HTTPConnection.request 的第一个参数中插入 CR 和 LF 控制字符证实。(CVE-2020-26116)

- 由于 urllib.request.AbstractBasicAuthHandler 灾难性回溯,Python 2.7 到 2.7.17、3.5 到 3.5.9、3.6 到 3.6.10、3.7 到 3.7.6 以及 3.8 到 3.8.1 版本允许 HTTP 服务器对客户端进行正则表达式拒绝服务 (ReDoS) 攻击。(CVE-2020-8492)

- Python 3.9.1 及之前的 3.x 版本可能受到 _ctypes/callproc.c 内的 PyCArg_repr 中缓冲区溢出的影响,这可导致在某些将浮点数接受为不受信任输入的 Python 应用程序中远程执行代码,c_double.from_param 的 1e300 参数即为一例。这是未安全使用 sprintf 所致。(CVE-2021-3177)

- urllib 的 AbstractBasicAuthHandler 类中存在一个缺陷。如果攻击者可以控制 HTTP 客户端(例如 Web 浏览器)连接到的恶意 HTTP 服务器,则有可能在使用由服务器发送到客户端的特制负载请求身份验证期间,触发正则表达式拒绝服务 (ReDOS)。 此缺陷对应用程序可用性的威胁最大。
(CVE-2021-3733)

- 在 python 中发现一个缺陷。python 的 HTTP 客户端代码中存在未正确处理的 HTTP 响应,因此可能允许控制 HTTP 服务器的远程攻击者使客户端脚本进入无限循环,从而消耗 CPU 时间。此漏洞最大的威胁在于系统可用性。(CVE-2021-3737)

- 在 Python 中发现一个缺陷,尤其是在 PASV(被动)模式下的 FTP(文件传输协议)客户端库中。问题在于默认情况下 FTP 客户端如何信任来自 PASV 响应的主机。此缺陷允许攻击者设置恶意的 FTP 服务器,诱骗 FTP 客户端连接回给定的 IP 地址和端口。此漏洞可导致 FTP 客户端扫描端口,而在其他情况下无法执行此操作。(CVE-2021-4189)

- 在低于 3.11.1 版的 Python 中发现一个问题 。处理 IDNA (RFC 3490) 解码器的某些输入时,一个路径中存在不必要的二次算法,因此向解码器显示的特别构建的过长名称可导致 CPU 拒绝服务。主机名通常由可能受到恶意执行者控制的远程服务器提供;在这种情况下,它们可在尝试使用攻击者提供的假想主机名的客户端上触发过度消耗 CPU。
例如,攻击负载可放置在具有状态代码 302 的 HTTP 响应的 Location 标头中。计划在 3.11.1、 3.10.9、 3.9.16、 3.8.16 和 3.7.16 版中进行修复。(CVE-2022-45061)

请注意,Nessus 尚未测试这些问题,而是只依据应用程序自我报告的版本号进行判断。

解决方案

升级 python2.7 程序包。

对于 Debian 10 buster,已在 2.7.16-2+deb10u2 版本中修复这些问题。

另见

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=970099

https://security-tracker.debian.org/tracker/source-package/python2.7

https://www.debian.org/lts/security/2023/dla-3432

https://security-tracker.debian.org/tracker/CVE-2015-20107

https://security-tracker.debian.org/tracker/CVE-2019-20907

https://security-tracker.debian.org/tracker/CVE-2020-26116

https://security-tracker.debian.org/tracker/CVE-2020-8492

https://security-tracker.debian.org/tracker/CVE-2021-3177

https://security-tracker.debian.org/tracker/CVE-2021-3733

https://security-tracker.debian.org/tracker/CVE-2021-3737

https://security-tracker.debian.org/tracker/CVE-2021-4189

https://security-tracker.debian.org/tracker/CVE-2022-45061

https://packages.debian.org/source/buster/python2.7

插件详情

严重性: Critical

ID: 176347

文件名: debian_DLA-3432.nasl

版本: 1.0

类型: local

代理: unix

发布时间: 2023/5/25

最近更新时间: 2023/5/25

支持的传感器: Agentless Assessment, Frictionless Assessment Agent, Nessus Agent, Nessus

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: High

基本分数: 8

时间分数: 6.6

矢量: CVSS2#AV:N/AC:L/Au:S/C:P/I:C/A:P

CVSS 分数来源: CVE-2015-20107

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 9.1

矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

时间矢量: CVSS:3.0/E:F/RL:O/RC:C

CVSS 分数来源: CVE-2021-3177

漏洞信息

CPE: p-cpe:/a:debian:debian_linux:idle-python2.7, p-cpe:/a:debian:debian_linux:libpython2.7, p-cpe:/a:debian:debian_linux:libpython2.7-dbg, p-cpe:/a:debian:debian_linux:libpython2.7-dev, p-cpe:/a:debian:debian_linux:libpython2.7-minimal, p-cpe:/a:debian:debian_linux:libpython2.7-stdlib, p-cpe:/a:debian:debian_linux:libpython2.7-testsuite, p-cpe:/a:debian:debian_linux:python2.7, p-cpe:/a:debian:debian_linux:python2.7-dbg, p-cpe:/a:debian:debian_linux:python2.7-dev, p-cpe:/a:debian:debian_linux:python2.7-doc, p-cpe:/a:debian:debian_linux:python2.7-examples, p-cpe:/a:debian:debian_linux:python2.7-minimal, cpe:/o:debian:debian_linux:10.0

必需的 KB 项: Host/local_checks_enabled, Host/Debian/release, Host/Debian/dpkg-l

可利用: true

易利用性: Exploits are available

补丁发布日期: 2023/5/24

漏洞发布日期: 2020/1/30

参考资料信息

CVE: CVE-2015-20107, CVE-2019-20907, CVE-2020-26116, CVE-2020-8492, CVE-2021-3177, CVE-2021-3733, CVE-2021-3737, CVE-2021-4189, CVE-2022-45061