Rocky Linux 9:nodejs:20 (RLSA-2024:1688)

critical Nessus Plugin ID 195012

概要

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

說明

遠端 Rocky Linux 9 主機上安裝的多個套件受到 RLSA-2024:1688 公告中提及的多個弱點影響。

- Node.js 權限模型未在文件中闡明萬用字元只能作為檔案路徑的最後一個字元使用。例如:``` --allow-fs-read=/home/node/.ssh/*.pub ``` 將略過 `pub` 並提供 `.ssh/` 之後所有項目的存取權。此誤導文件會影響使用 Node.js 20 和 Node.js 21 版中實驗性權限模型的所有使用者。請注意,在此 CVE 發布時,此權限模型為 Node.js 的實驗性功能。(CVE-2024-21890)

- Node.js 會依賴多個內建公用程式函式來標準化提供給 node:fs 函式的路徑,其可由使用者定義的實作過度覆寫,進而導致透過路徑遊走攻擊繞過檔案系統權限模型。此弱點會影響使用 Node.js 20 和 Node.js 21 版中實驗性權限模型的所有使用者。請注意,在此 CVE 發布時,此權限模型為 Node.js 的實驗性功能。(CVE-2024-21891)

- 在 Linux 上,若無權限的使用者在以提升的權限執行處理程序時已設定特定環境變數,Node.js 就會忽略這些變數,唯一的例外狀況是 CAP_NET_BIND_SERVICE。由於此例外狀況的實作中有一個錯誤,因此即使已設定某些其他功能,Node.js 仍會以不正確的方式套用此例外狀況。無權限的使用者可藉此插入繼承處理程序提升權限的程式碼。(CVE-2024-21892)

- 權限模型可在使用者提供的任何路徑上呼叫 path.resolve(),藉此保護自己免受路徑遊走攻擊。如果要將路徑視為 Buffer,則實作會使用 Buffer.from() 從 path.resolve() 的結果中取得 Buffer。應用程式可以透過「猴子式修補法」緩衝區內部項目 (即 Buffer.prototype.utf8Write) 修改 path.resolve() 的結果,進而造成路徑遊走弱點。此弱點會影響使用 Node.js 20 和 Node.js 21 版中實驗性權限模型的所有使用者。請注意,在此 CVE 發布時,此權限模型為 Node.js 的實驗性功能。(CVE-2024-21896)

- 如果 setuid() 已在呼叫 setuid() 之前初始化,則 setuid() 不會影響 libuv 的內部 io_uring 作業。
即使處理程序可能已透過 setuid() 呼叫中斷此類權限,處理程序仍可進行有權限的作業。此弱點會影響使用 Node.js 18.18.0、Node.js 20.4.0 和 Node.js 21 版或以上版本的所有使用者。(CVE-2024-22017)

- Node.js HTTP 伺服器中存在一個弱點,攻擊者可藉此傳送具有區塊編碼的特製 HTTP 要求,進而導致資源耗盡和拒絕服務 (DoS)。伺服器會利用區塊延伸位元組缺少限制的弱點,從單一連線讀取無限數量的位元組。此問題可造成 CPU 和網路頻寬耗盡,進而繞過標准防護措施,如逾時和內文大小限制。(CVE-2024-22019)

- crypto 程式庫的 privateDecrypt() API 中存有一個弱點,會在 PKCS#1 v1.5 填補錯誤處理期間造成隱密計時旁路。此弱點會揭露有效和無效加密文字在解密時的顯著時間差。這會造成嚴重威脅,因為攻擊者可從遠端惡意利用此弱點,將擷取的 RSA 加密文字解密或偽造簽章,特別是在涉及 API 端點處理 Json Web 加密訊息的情況下。影響:感謝 hkario 報告此弱點,同時感謝 Michael Dawson 修正此弱點。(CVE-2023-46809)

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

解決方案

更新受影響的套件。

另請參閱

https://errata.rockylinux.org/RLSA-2024:1688

https://bugzilla.redhat.com/show_bug.cgi?id=2264569

https://bugzilla.redhat.com/show_bug.cgi?id=2264574

https://bugzilla.redhat.com/show_bug.cgi?id=2264582

https://bugzilla.redhat.com/show_bug.cgi?id=2265717

https://bugzilla.redhat.com/show_bug.cgi?id=2265720

https://bugzilla.redhat.com/show_bug.cgi?id=2265722

https://bugzilla.redhat.com/show_bug.cgi?id=2265727

Plugin 詳細資訊

嚴重性: Critical

ID: 195012

檔案名稱: rocky_linux_RLSA-2024-1688.nasl

版本: 1.3

類型: local

已發布: 2024/5/6

已更新: 2025/4/3

支援的感應器: Nessus Agent, Continuous Assessment, Nessus

風險資訊

VPR

風險因素: Medium

分數: 5.9

CVSS v2

風險因素: Critical

基本分數: 10

時間性分數: 7.4

媒介: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C

CVSS 評分資料來源: CVE-2024-21896

CVSS v3

風險因素: Critical

基本分數: 9.8

時間性分數: 8.5

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

時間媒介: CVSS:3.0/E:U/RL:O/RC:C

弱點資訊

CPE: p-cpe:/a:rocky:linux:nodejs-packaging, p-cpe:/a:rocky:linux:nodejs-docs, p-cpe:/a:rocky:linux:nodejs-devel, p-cpe:/a:rocky:linux:nodejs, p-cpe:/a:rocky:linux:nodejs-nodemon, p-cpe:/a:rocky:linux:nodejs-full-i18n, p-cpe:/a:rocky:linux:nodejs-packaging-bundler, p-cpe:/a:rocky:linux:nodejs-debugsource, cpe:/o:rocky:linux:9, p-cpe:/a:rocky:linux:npm, p-cpe:/a:rocky:linux:nodejs-debuginfo

必要的 KB 項目: Host/local_checks_enabled, Host/cpu, Host/RockyLinux/release, Host/RockyLinux/rpm-list

可輕鬆利用: No known exploits are available

修補程式發佈日期: 2024/5/6

弱點發布日期: 2024/2/14

參考資訊

CVE: CVE-2023-46809, CVE-2024-21890, CVE-2024-21891, CVE-2024-21892, CVE-2024-21896, CVE-2024-22017, CVE-2024-22019