Slackware Linux 14.0/14.1/14.2/15.0/最新版 curl 多个漏洞 (SSA:2022-299-01)

critical Nessus 插件 ID 166622

简介

远程 Slackware Linux 主机缺少 curl 的安全更新。

描述

远程主机上安装的 curl 版本低于 7.86.0。因此,该应用程序受到 SSA:2022-299-01 公告中提及的多个漏洞的影响。

- 在 7.86.0 版之前的 curl 中存在双重释放。如果指示 curl 使用 HTTP 代理进行具有非 HTTP URL 的传输,它会通过向代理发出 CONNECT 请求来与远程服务器建立连接,然后使协议的其余部分通过隧道。HTTP 代理可能拒绝此请求(HTTP 代理通常只允许传出连接至特定端口号,例如 HTTPS 的 443),而向客户端返回非 200 状态代码。由于错误/清理处理中的缺陷,如果在 URL 中使用以下方案之一进行传输,则这可能在 curl 中触发双重释放:dict、gopher、gophers、ldap、ldaps、rtmp、rtmps 或 telnet。低于 7.77.0 的版本均受影响。(CVE-2022-42915)

- 在进行 HTTP(S) 传输时,如果之前使用相同的句柄发出 `PUT` 请求(使用读取回调 (`CURLOPT_READFUNCTION`)),即使设置了 `CURLOPT_POSTFIELDS` 选项,libcurl 可能会错误地使用该回调来请求发送数据。此缺陷可能会使应用程序发生意外并导致其行为不当,并在后续的 `POST` 请求中发送错误的数据或使用释放后的内存或类似内容。从 PUT 更改为 POST 时,重用句柄的逻辑中存在此问题。(CVE-2022-32221)

- 可指示 curl 解析 `.netrc` 文件以获取凭据。如果该文件以具有 4095 个连续非空白字符且无换行符的行结尾,则 curl 将首先读取超过基于堆栈的缓冲区的末尾,如果是 readworks,则写入一个超出其边界的零字节。在大多数情况下此问题会造成段错误或类似问题,但不同的环境也可能造成不同的结果。如果恶意用户可以向应用程序提供自定义 netrc 文件,或以其他方式影响其内容,则此缺陷可被用作拒绝服务。(CVE-2022-35260)

- 在 7.86.0 版之前的 curl 中,可绕过 HSTS 检查以诱骗其继续使用 HTTP。使用其 HSTS 支持,即使在 URL 中提供 HTTP 时,也可指示 curl 直接使用 HTTPS,而不是使用不安全的明文 HTTP 步骤。如果给定 URL 中的主机名使用在 IDN 转换过程中被 ASCII 对应项替换的 IDN 字符,则可绕过此机制。例如使用字符 UTF-8 U+3002 (IDEOGRAPHIC FULL STOP) 而不是通用 ASCII 句号 U+002E (.)。
低于 7.77.0 2021-05-26 的版本均受影响。(CVE-2022-42916)

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

解决方案

升级受影响的 curl 程序包。

插件详情

严重性: Critical

ID: 166622

文件名: Slackware_SSA_2022-299-01.nasl

版本: 1.8

类型: local

发布时间: 2022/10/27

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

支持的传感器: Nessus

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: Critical

基本分数: 10

时间分数: 7.8

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

CVSS 分数来源: CVE-2022-32221

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

漏洞信息

CPE: p-cpe:/a:slackware:slackware_linux:curl, cpe:/o:slackware:slackware_linux, cpe:/o:slackware:slackware_linux:14.0, cpe:/o:slackware:slackware_linux:14.1, cpe:/o:slackware:slackware_linux:14.2, cpe:/o:slackware:slackware_linux:15.0

必需的 KB 项: Host/local_checks_enabled, Host/Slackware/release, Host/Slackware/packages

可利用: true

易利用性: Exploits are available

参考资料信息

CVE: CVE-2022-32221, CVE-2022-35260, CVE-2022-42915, CVE-2022-42916

IAVA: 2022-A-0451-S