Debian DSA-5008-1:node-tar - 安全性更新

high Nessus Plugin ID 155314

概要

遠端 Debian 主機上缺少一個或多個安全性更新。

說明

遠端 Debian 11 主機上安裝的套件受到 dsa-5008 公告中提及的多個弱點影響。

- 4.4.16、5.0.8、6.1.7 版之前的 npm 套件 tar (亦稱 node-tar) 存在任意檔案建立/覆寫和任意程式碼執行弱點。「node-tar」的目的是保證應用程式不會擷取任何會被符號連結修改位置的檔案。這部分是透過確保擷取的目錄不是符號連結來實現的。此外,為了防止不必要的「stat」呼叫以判斷指定路徑是否為目錄,在建立目錄時,應用程式會快取路徑。
在 posix 系統上,封存項目中的符號連結和目錄名稱使用反斜線作為路徑分隔符號,當擷取含有目錄和同名符號連結的 tar 檔案時,此邏輯是不充分的。快取檢查邏輯同時使用 `\` 和 `/` 字元作為路徑分隔符號,不過 `\` 在 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)

- 4.4.18、5.0.10、6.1.9 版之前的 npm 套件 tar (亦稱 node-tar) 存在任意檔案建立/覆寫和任意程式碼執行弱點。「node-tar」的目的是保證應用程式不會擷取任何會被符號連結修改位置的檔案。這部分是透過確保擷取的目錄不是符號連結來實現的。此外,為了防止不必要的「stat」呼叫以判斷指定路徑是否為目錄,在建立目錄時,應用程式會快取路徑。
當擷取的 tar 檔案同時包含目錄以及符號連結 (其名稱包含標準化為相同值的 unicode 值) 時,此邏輯是不充分的。此外,在 Windows 系統上,長路徑部分會解析為其 8.3 對應短路徑的相同檔案系統實體。因此,特製的 tar 封存可包含具有一種形式路徑的目錄,隨後是具有解析為相同檔案系統實體的不同字串的符號連結,之後是使用第一種形式的檔案。藉由先建立目錄,然後以符號連結 (具有不同的明顯名稱,且解析為檔案系統中的相同條目) 取代該目錄,就可以繞過「node-tar」針對目錄的符號連結檢查,實際上,這允許未受信任的 tar 檔案以符號連結指向任意位置,然後將任意檔案解壓縮至該位置,從而允許建立和覆寫任意檔案。這些問題已在 4.4.18、5.0.10、6.1.9 版中得到解決。
node-tar 的 v3 分支已過時,且未收到這些問題的修補程式。如果您仍在使用 v3 版本,我們建議您更新至較新的 node-tar 版本。如果無法執行此操作,請參閱 GHSA-qq89-hq3f-393p 中的因應措施。(CVE-2021-37712)

請注意,Nessus 並未測試此問題,而是僅依據應用程式自我報告的版本號碼作出判斷。

解決方案

升級 node-tar 套件。

針對穩定的發行版本 (bullseye),已在 6.0.5+ds1+~cs11.3.9-1+deb11u2 版本中修正這些問題。

另請參閱

https://security-tracker.debian.org/tracker/source-package/node-tar

https://www.debian.org/security/2021/dsa-5008

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

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

https://packages.debian.org/source/bullseye/node-tar

Plugin 詳細資訊

嚴重性: High

ID: 155314

檔案名稱: debian_DSA-5008.nasl

版本: 1.2

類型: local

代理程式: unix

已發布: 2021/11/12

已更新: 2021/11/12

支援的感應器: Agentless Assessment, Frictionless Assessment Agent, 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-37712

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: p-cpe:/a:debian:debian_linux:node-tar, cpe:/o:debian:debian_linux:11.0

必要的 KB 項目: Host/local_checks_enabled, Host/Debian/release, Host/Debian/dpkg-l

可輕鬆利用: No known exploits are available

修補程式發佈日期: 2021/11/11

弱點發布日期: 2021/8/31

參考資訊

CVE: CVE-2021-37701, CVE-2021-37712