Ubuntu 20.04 ESM:Python 漏洞 (USN-5888-1)

critical Nessus 插件 ID 171939

简介

远程 Ubuntu 主机缺少一个或多个安全更新。

描述

远程 Ubuntu 20.04 ESM 主机上安装的多个程序包受到 USN-5888-1 公告中提及的多个漏洞影响。

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

- ** 有争议 ** Python 3.x 至 3.10 版在 lib/http/server.py 中有一个开放重定向漏洞,这是由未针对 URI 路径开头的多个 (/) 提供保护而引起的,可能会导致信息泄露。
注意:第三方对此问题存在争议,因为 http.server.html 文档页面存在警告:
不建议将 http.server 用于生产用途,而仅用于基本的安全检查。(CVE-2021-28861)

- fdc6fef 之前的 Keccak XKCP SHA-3 参考实现存在整数溢出和缓冲区溢出,允许攻击者执行任意代码或消除预期的加密属性。
这会发生在 sponge 函数接口中。(CVE-2022-37454)

- Linux 上的 Python 3.9.16 之前的 3.9.x 版本和 3.10.9 之前的 3.10.x 版本允许在非默认配置中提升本地权限。Python 多处理库与 Linux 上的 forkserver 启动方法一起使用时,允许从同一计算机本地网络命名空间中的任何用户(这在许多系统配置中表示同一计算机上的任何用户)反序列化 pickles。Pickles 可执行任意代码。
因此,这允许将本地用户权限升级为运行任何 forkserver 进程的用户。将 multiprocessing.util.abstract_sockets_supported 设置为 False 是一种变通方案。多进程的 forkserver 启动方法不是默认的启动方法。仅 Linux 系统会发生此问题,因为只有 Linux 支持抽象命名空间套接字。低于 3.9 的 CPython 默认不使用 Linux 抽象命名空间套接字。在 3.7.8 和 3.8.3 版中,作为缺陷补丁添加了对用户手动指定抽象命名空间的支持,但在 3.9之前的 CPython 中,用户需要进行特定的不常见 API 调用才可以做到。(CVE-2022-42919)

- 在低于 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)

- v3.11 之前的 Python 的 urllib.parse 组件中存在一个问题,允许攻击者通过提供以空白字符开头的 URL 绕过阻止列表方法。 (CVE-2023-24329)

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

解决方案

更新受影响的程序包。

另见

https://ubuntu.com/security/notices/USN-5888-1

插件详情

严重性: Critical

ID: 171939

文件名: ubuntu_USN-5888-1.nasl

版本: 1.6

类型: local

代理: unix

发布时间: 2023/2/28

最近更新时间: 2023/10/20

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

风险信息

VPR

风险因素: High

分数: 7.4

CVSS v2

风险因素: High

基本分数: 8

时间分数: 6.3

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

CVSS 分数来源: CVE-2015-20107

CVSS v3

风险因素: Critical

基本分数: 9.8

时间分数: 8.8

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

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

CVSS 分数来源: CVE-2022-37454

漏洞信息

CPE: cpe:/o:canonical:ubuntu_linux:20.04:-:esm, p-cpe:/a:canonical:ubuntu_linux:idle-python3.9, p-cpe:/a:canonical:ubuntu_linux:libpython3.9, p-cpe:/a:canonical:ubuntu_linux:libpython3.9-dev, p-cpe:/a:canonical:ubuntu_linux:libpython3.9-minimal, p-cpe:/a:canonical:ubuntu_linux:libpython3.9-stdlib, p-cpe:/a:canonical:ubuntu_linux:libpython3.9-testsuite, p-cpe:/a:canonical:ubuntu_linux:python3.9, p-cpe:/a:canonical:ubuntu_linux:python3.9-dev, p-cpe:/a:canonical:ubuntu_linux:python3.9-examples, p-cpe:/a:canonical:ubuntu_linux:python3.9-full, p-cpe:/a:canonical:ubuntu_linux:python3.9-minimal, p-cpe:/a:canonical:ubuntu_linux:python3.9-venv

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

可利用: true

易利用性: Exploits are available

补丁发布日期: 2023/2/27

漏洞发布日期: 2022/4/13

参考资料信息

CVE: CVE-2015-20107, CVE-2021-28861, CVE-2022-37454, CVE-2022-42919, CVE-2022-45061, CVE-2023-24329

IAVA: 2023-A-0118-S, 2023-A-0283-S

USN: 5888-1