Linux Distros 未修补的漏洞:CVE-2021-37701

high Nessus 插件 ID 252546

简介

Linux/Unix 主机上安装的一个或多个程序包存在漏洞,但供应商表示不会修补此漏洞。

描述

Linux/Unix 主机中安装的一个或多个程序包受到一个漏洞影响,而供应商没有提供补丁程序。

- 4.4.16、5.0.8、6.1.7 之前版本的 npm 程序包 tar(也称为 node-tar)中存在任意文件创建/覆盖级任意代码执行漏洞。“node-tar”的目的在于保证应用程序不会提取任何位置会被符号链接修改的文件。这部分是通过确保提取的目录不是符号链接来实现的。此外,为防止不必要的“stat”调用,以确定给定的路径是否为目录,创建目录时会缓存路径。
当提取同时包含目录和与目录同名的符号链接的 tar 文件时,此逻辑尚不充分,其中存档条目中的符号链接和目录名称在 posix 系统上使用反斜线作为路径分隔符。缓存检查逻辑同时使用“\”和“/”字符作为路径分隔符,但“\”在 posix 系统上属于有效的文件名字符。通过先创建一个目录,然后用符号链接替换该目录,用户可以绕过针对目录的“node-tar”符号链接检查,这基本上允许不受信任的 tar 文件以符号链接指向任意位置,然后将任意文件提取到该位置,从而允许应用程序创建和覆盖任意文件。此外,不区分大小写的文件系统也会出现类似的混淆问题。如果 tar 存档在 `FOO` 中加入一个目录,后跟一个名为 `foo` 的符号链接,则在不区分大小写的文件系统上创建符号链接时,将从文件系统中删除该目录,但不会从内部目录缓存中删除目录,因为该目录不会被视为缓存命中。`FOO` 目录中的后续文件条目将被放置在符号链接的目标中,并认为该目录已经成功创建。这些问题已在 4.4.16、5.0.8、6.1.7 版本中解决。node-tar 的 v3 分支已弃用,且未收到针对这些问题的补丁。如果您仍在使用 v3 版本,我们建议您更新到较新的 node-tar 版本。
如果无法执行此操作,可参阅引用的 GHSA-9r2w-394v-53qc 查找解决方法。(CVE-2021-37701)

请注意,Nessus 依赖供应商报告的程序包是否存在进行判断。

解决方案

目前尚未有任何已知的解决方案。

另见

https://ubuntu.com/security/CVE-2021-37701

插件详情

严重性: High

ID: 252546

文件名: unpatched_CVE_2021_37701.nasl

版本: 1.1

类型: local

代理: unix

系列: Misc.

发布时间: 2025/8/20

最近更新时间: 2025/8/20

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

风险信息

VPR

风险因素: High

分数: 7.3

CVSS v2

风险因素: Medium

基本分数: 4.4

时间分数: 3.3

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

CVSS 分数来源: CVE-2021-37701

CVSS v3

风险因素: High

基本分数: 8.6

时间分数: 7.5

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

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

漏洞信息

CPE: cpe:/o:canonical:ubuntu_linux:14.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:node-tar, cpe:/o:canonical:ubuntu_linux:20.04:-:lts, cpe:/o:canonical:ubuntu_linux:16.04:-:lts, cpe:/o:canonical:ubuntu_linux:18.04:-:lts

必需的 KB 项: Host/cpu, Host/local_checks_enabled, global_settings/vendor_unpatched, Host/OS/identifier

易利用性: No known exploits are available

漏洞发布日期: 2021/8/31

参考资料信息

CVE: CVE-2021-37701