【漏洞通告】tar & @npmcli/arborist 9月多个安全漏洞

发布时间 2021-09-10

0x00 漏洞概述

2021年9月8日,GitHub安全团队公开披露了在npm CLI 使用的 npm 包tar和@npmcli/arborist中发现的7个安全漏洞,攻击者可以利用这些漏洞覆盖任意文件、创建任意文件或执行任意代码。

 

0x01 漏洞详情

image.png

tar是npm的一个核心依赖,用于提取和安装npm包。@npmcli/arborist是npm CLI的一个核心依赖项,用于管理node_modules树。

当tar被用来提取不受信任的tar文件或当npm CLI在某些文件系统条件下被用来安装不受信任的npm包时,这些漏洞可能会由于文件覆盖或创建而导致任意代码执行。本次披露的7个漏洞如下:

l  CVE-2021-32803:由于目录缓存中毒,可以通过不充分的符号链接保护来实现任意文件创建/覆盖,该漏洞的CVSSv3评分为8.1/8.2。

l  CVE-2021-32804:由于绝对路径清理不足而导致任意文件创建/覆盖,该漏洞的CVSSv3评分为8.1/8.2。

l  CVE-2021-37701:由于使用符号链接的目录缓存中毒,导致符号链接保护不足,从而导致任意文件创建/覆盖,该漏洞的CVSSv3评分为8.2。

l  CVE-2021-37712:由于使用符号链接的目录缓存中毒,导致符号链接保护不足,从而导致任意文件创建/覆盖,该漏洞的CVSSv3评分为8.2。

l  CVE-2021-37713:通过不充分的相对路径清理在Windows上创建/覆盖任意文件,该漏洞的CVSSv3评分为8.2。

l  CVE-2021-39134:@npmcli/arborist中的UNIX符号链接(Symlink),该漏洞的CVSSv3评分为7.8/8.2。

l  CVE-2021-39135:@npmcli/arborist中的UNIX符号链接(Symlink),该漏洞的CVSSv3评分为7.8/8.2。

 

在处理恶意或不受信任的npm包安装,CVE-2021-32804、CVE-2021-37713、CVE-2021-39134和CVE-2021-39135会影响npm CLI,其中一些漏洞可能会导致任意代码执行。

 

影响范围

CVE

影响产品

影响范围

修复版本

参考链接

CVE-2021-32803

 

 

 

 

 

 

 

tar(npm)

 

 

<3.2.3

4.x :<4.4.15

5.x :<5.0.7

6.x :<6.1.2

3.2.3

4.4.15

5.0.7

6.1.2

https://github.com/npm/node-tar/security/advisories/GHSA-r628-mhmh-qjhw

CVE-2021-32804

<3.2.2

4.x :<4.4.14

5.x :<5.0.6

6.x :<6.1.1

3.2.2

4.4.14

5.0.6

6.1.1

https://github.com/npm/node-tar/security/advisories/GHSA-3jfq-g458-7qm9

CVE-2021-37701

<4.4.16

5:<5.0.8

6:<6.1.7

4.4.16

5.0.8

6.1.7

https://github.com/npm/node-tar/security/advisories/GHSA-9r2w-394v-53qc

CVE-2021-37712

6:<=6.1.8

5:<=5.0.9

<=4.4.17

6.1.9

5.0.10

4.4.18

 

 

https://github.com/npm/node-tar/security/advisories/GHSA-qq89-hq3f-393p

CVE-2021-37713

6:<=6.1.8

5:<=5.0.9

<=4.4.17

6.1.9

5.0.10

4.4.18

https://github.com/npm/node-tar/security/advisories/GHSA-5955-9wpr-37jh

CVE-2021-39134

@npmcli/arborist (npm)

<=2.8.1

2.8.2

https://github.com/npm/arborist/security/advisories/GHSA-2h3h-q99f-3fhc

CVE-2021-39135

<=2.8.1

2.8.2

https://github.com/npm/arborist/security/advisories/GHSA-gmw6-94gg-2rc2

 

0x02 处置建议

目前这些漏洞已经修复,建议及时升级更新。

l  如果直接安装或打包npm CLI,请更新npm CLI 到6.14.15、7.21.0 或更高版本。(只有CVE-2021-32804、CVE-2021-37713、CVE-2021-39134 和 CVE-2021-39135影响npm CLI)。

l  如果依赖 Node.js 进行 npm 安装,请更新到最新版本的 Node.js v12.22.6、v14.17.6 、v16.8.0 (截至2021 年 8 月 31 日)或更高版本,它们包含CVE-2021-32804、CVE-2021-37713、CVE-2021-39134 和 CVE-2021-39135 的补丁。

l  如果项目依赖于tar:将依赖项更新到 4.4.19、5.0.11、6.1.10 或更高版本。(详见CVE-2021-32804、CVE-2021-32803、CVE-2021-37701、CVE-2021-37712和CVE-2021-37713链接。)

l  tar的v3分支已经被废弃,建议更新到v6。

 

下载链接:

https://github.com/npm/cli/

 

0x03 参考链接

https://github.blog/2021-09-08-github-security-update-vulnerabilities-tar-npmcli-arborist/

https://github.com/npm/node-tar/security/advisories/GHSA-r628-mhmh-qjhw

https://www.bleepingcomputer.com/news/security/github-finds-7-code-execution-vulnerabilities-in-tar-and-npm-cli/

 

0x04 更新版本

版本

日期

修改内容

V1.0

2021-09-10

首次发布

 

0x05 文档附录

CNVD:www.cnvd.org.cn

CNNVD:www.cnnvd.org.cn

CVE:cve.mitre.org

NVD:nvd.nist.gov

CVSS:www.first.org

0x06 关于我们

关注以下公众号,获取更多资讯:

image.png