RHEL 9 : nodejs:18 (RHSA-2024:2779)

high Nessus Plugin ID 195196

概要

遠端 Red Hat 主機缺少 nodejs:18 的一個或多個安全性更新。

說明

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

- 在 Node.js 中發現一個弱點,當使用 fetch() 函式從不受信任的網址擷取內容時,攻擊者可藉此弱點透過資源耗盡發動拒絕服務 (DoS) 攻擊。引致此弱點的原因是 Node.js 中的 fetch() 函式一律對 Brotli 進行解碼,使得攻擊者可以在從不受信任的網址擷取內容時造成資源耗盡。控制傳遞至 fetch() 之網址的攻擊者可惡意利用此弱點來耗盡記憶體,從而可能導致處理程序終止,但具體要視乎系統設定而定。(CVE-2024-22025)

- c-ares 是適用於非同步 DNS 要求的 C 程式庫。 `ares__read_line()` 用於剖析本機設定檔,例如 `/etc/resolv.conf`、`/etc/nsswitch.conf`、`HOSTALIASES` 檔案,如果使用 1.27.0 之前版本的 c-ares,則剖析的是 `/etc/hosts` 檔案。如果其中任何一個設定檔將內嵌的 `NULL` 字元做為新行的第一個字元,可導致嘗試在指定緩衝區開始之前讀取記憶體,進而可能導致當機。此問題已在 c-ares 1.27.0 中修復。
目前尚無已知的因應措施。(CVE-2024-25629)

- 團隊在最新版 Node 的 http 伺服器中發現一個重大弱點,格式錯誤的標頭可導致 HTTP 要求走私。具體而言,如果在 content-length 標頭前放置一個空格,系統則無法正確解譯該空格,進而讓攻擊者能夠在第一個要求的內文中走私第二個要求。(CVE-2024-27982)

- 攻擊者可傳送少量內含少量 HTTP/2 框架的 HTTP/2 框架封包,從而使 Node.js HTTP/2 伺服器完全無法使用。若採用 HTTP/2 CONTINUATION 框架的標頭被傳送至伺服器,即使被重設,nghttp2 記憶體中仍可能留下一些資料;若 TCP 連結被觸發 Http2Session 解構函式的用戶端突然關閉並且標頭框架仍在處理中 (儲存在記憶體中),則可能導致爭用情形。(CVE-2024-27983)

- nghttp2 是根據超文字傳輸通訊協定第 2 版、以 C 語言編寫的庫。1.61.0 版之前的 nghttp2 庫會不斷讀取無限數量的 HTTP/2 CONTINUATION 框架,即使為了保持 HPACK 內容同步以重設資料流後也是如此。這會造成解碼 HPACK 資料流時的 CPU 使用率過高。nghttp2 v1.61.0 透過限制接受的每個資料流的 CONTINUATION 框架數來減輕此弱點。
目前沒有因應措施可解決此弱點。(CVE-2024-28182)

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

解決方案

依據 RHSA-2024:2779 中的指引更新 RHEL nodejs:18 套件。

另請參閱

http://www.nessus.org/u?a1474ffa

https://access.redhat.com/errata/RHSA-2024:2779

https://access.redhat.com/security/updates/classification/#important

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

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

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

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

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

Plugin 詳細資訊

嚴重性: High

ID: 195196

檔案名稱: redhat-RHSA-2024-2779.nasl

版本: 1.2

類型: local

代理程式: unix

已發布: 2024/5/9

已更新: 2024/6/3

支援的感應器: Frictionless Assessment AWS, Frictionless Assessment Azure, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Nessus

風險資訊

VPR

風險因素: Medium

分數: 5.0

CVSS v2

風險因素: Medium

基本分數: 6.4

時間分數: 4.7

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

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

CVSS v3

風險因素: High

基本分數: 8.2

時間分數: 7.1

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

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

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

弱點資訊

CPE: cpe:/o:redhat:enterprise_linux:9, p-cpe:/a:redhat:enterprise_linux:npm, p-cpe:/a:redhat:enterprise_linux:nodejs-devel, p-cpe:/a:redhat:enterprise_linux:nodejs-packaging, p-cpe:/a:redhat:enterprise_linux:nodejs-full-i18n, p-cpe:/a:redhat:enterprise_linux:nodejs-nodemon, p-cpe:/a:redhat:enterprise_linux:nodejs-docs, p-cpe:/a:redhat:enterprise_linux:nodejs-packaging-bundler, p-cpe:/a:redhat:enterprise_linux:nodejs

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

可輕鬆利用: No known exploits are available

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

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

參考資訊

CVE: CVE-2024-22025, CVE-2024-25629, CVE-2024-27982, CVE-2024-27983, CVE-2024-28182

CWE: 127, 390, 400, 444

RHSA: 2024:2779