Debian DLA-3085-1:curl - LTS 安全更新

high Nessus 插件 ID 164482

简介

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

描述

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

- 当“-t”命令行选项(在 libcurl 中称为“CURLOPT_TELNETOPTIONS”)用于将 variable=content 对发送到 TELNET 服务器时,curl 7.7 直到 7.76.1 的版本受到信息泄露漏洞的影响。用于发送 NEW_ENV 变量的选项解析器中存在一个缺陷,因此 libcurl 可能会被用于将未初始化的数据从基于堆栈的缓冲区传递到服务器,从而可能导致使用明文网络协议将敏感的内部信息泄露给服务器。(CVE-2021-22898)

- LibCurl 将先前使用的连接保留在连接池中,以供后续传输重新使用(如果其中一个连接与设置匹配)。由于逻辑错误,配置匹配函数没有考虑“发行者证书”,且比较了涉及路径中的*不区分大小写*,这可导致 LibCurl 重新使用错误的连接。文件路径在许多系统中会(或可能)区分大小写,但不是全部,并且甚至会因使用的文件系统而不同。比较中未包括“发行者证书”,传输可对其进行设置,以限制验证服务器的方式。 (CVE-2021-22924)

- 用户可以在与 IMAP、POP3 或 FTP 服务器通信时,告知 7.20.0、7.78.0 及其之间的 curl 版本需要成功升级至 TLS(命令行的 `--ssl-reqd` 或`CURLOPT_USE_SSL` 设置为带有 libcurl 的 `CURLUSESSL_CONTROL` 或 `CURLUSESSL_ALL`)。如果服务器返回构建正确且完全合法的响应,则可绕过此要求。此缺陷将使 curl 默默地继续其操作
**无 TLS** 违反说明和预期,可通过网络以明文形式暴露可能的敏感数据。(CVE-2021-22946)

- 当 7.20.0、7.78.0 及其之间的 curl 版本连接到 IMAP 或 POP3 服务器以使用 STARTTLS 检索数据进而升级到 TLS 安全时,服务器可以响应并立即发回 curl 缓存的多个响应。
然后,curl 会升级至 TLS,但不会刷新缓存响应的队列,而是继续使用和信任其在 TLS 握手*之前*获得的响应,就好像这些响应已经过身份验证一样。中间人攻击者可使用此缺陷,首先注入虚假响应,然后传递来自合法服务器的 TLS 流量,并诱使 curl 认为攻击者注入的数据来自受 TLS 保护的服务器,从而向用户发回数据。(CVE-2021-22947)

- curl 7.33.0 至 7.82.0(含)版本中存在一个不当认证漏洞,从而可能允许在未正确确保已使用为传输设置的相同凭据来认证连接的情况下,重复使用经 OAUTH2 认证的连接。此漏洞会影响启用了 SASL 的协议:SMPTP(S)、IMAP(S)、POP3(S) 和 LDAP(S)(仅限 openldap)。(CVE-2022-22576)

- curl 7.83.0 版中修复的凭据保护不充分漏洞可能会在 HTTP 重定向到相同主机不同端口号时泄漏身份验证或 Cookie 标头数据。(CVE-2022-27776)

- libcurl 提供“CURLOPT_CERTINFO”选项,以允许应用程序请求返回有关服务器证书链的详细信息。由于使用错误函数,恶意服务器可造成使用 NSS 构建的 libcurl 在尝试检索此信息时被卡在忙碌等待的死循环中。
(CVE-2022-27781)

- 即便已更改 TLS 或 SSH 相关选项,libcurl 仍会重复使用以前创建的连接,而这些连接本应禁止重复使用。如果其中一个连接与设置匹配,libcurl 会将以前用过的连接保留在连接池中,以便后续传输重复使用。但是,配置匹配检查会遗漏多个 TLS 和 SSH 设置,使匹配变得过于容易。(CVE-2022-27782)

- curl 7.84.0 以下版本支持链接的 HTTP 压缩算法,这意味着服务器响应可被多次压缩,并且可能使用不同的算法。此解压缩链中可接受的链接数量不受限制,因此恶意服务器可以插入数量几乎无限制的压缩步骤。使用此类解压缩链可能导致 malloc 炸弹,使 curl 最终消耗大量分配的堆内存,或尝试并返回内存不足错误。(CVE-2022-32206)

- 低于 7.84.0 版的 curl 在执行受 krb5 保护的 FTP 传输时,会错误处理消息验证失败。
攻击者可利用此缺陷执行中间人攻击而不被发现,甚至可以向客户端注入数据。(CVE-2022-32208)

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

解决方案

升级 curl 程序包。

对于 Debian 10 buster,这些问题已在 7.64.0-4+deb10u3 版本中修复。

另见

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

https://security-tracker.debian.org/tracker/source-package/curl

https://www.debian.org/lts/security/2022/dla-3085

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

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

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

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

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

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

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

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

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

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

https://packages.debian.org/source/buster/curl

插件详情

严重性: High

ID: 164482

文件名: debian_DLA-3085.nasl

版本: 1.6

类型: local

代理: unix

发布时间: 2022/8/29

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

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

风险信息

VPR

风险因素: Medium

分数: 6.1

CVSS v2

风险因素: Medium

基本分数: 5.5

时间分数: 4.5

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

CVSS 分数来源: CVE-2022-22576

CVSS v3

风险因素: High

基本分数: 8.1

时间分数: 7.5

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

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

漏洞信息

CPE: p-cpe:/a:debian:debian_linux:curl, p-cpe:/a:debian:debian_linux:libcurl3-gnutls, p-cpe:/a:debian:debian_linux:libcurl3-nss, p-cpe:/a:debian:debian_linux:libcurl4, p-cpe:/a:debian:debian_linux:libcurl4-doc, p-cpe:/a:debian:debian_linux:libcurl4-gnutls-dev, p-cpe:/a:debian:debian_linux:libcurl4-nss-dev, p-cpe:/a:debian:debian_linux:libcurl4-openssl-dev, cpe:/o:debian:debian_linux:10.0

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

可利用: true

易利用性: Exploits are available

补丁发布日期: 2022/8/29

漏洞发布日期: 2021/5/28

参考资料信息

CVE: CVE-2021-22898, CVE-2021-22924, CVE-2021-22946, CVE-2021-22947, CVE-2022-22576, CVE-2022-27776, CVE-2022-27781, CVE-2022-27782, CVE-2022-32206, CVE-2022-32208

IAVA: 2022-A-0224-S, 2022-A-0255-S