概要
遠端 Amazon Linux 2023 主機缺少一個安全性更新。
說明
因此,它會受到 ALAS2023-2026-3330 公告中所提及的多個弱點影響。
Node.js HTTP Agent 處理中的弱點允許保持連線通訊端處理在傳送對應要求之前寫入的回應。這可能會導致不正確的回應關聯,並可能導致 HTTP 回應混淆或意外資料暴露。(CVE-2026-105481)
Node.js 中的弱點允許「dns.resolve」函式不當處理包含空位元組的網域名稱,進而可能導致網域名稱截斷和主機名稱驗證不一致。這可能允許依賴主機名稱驗證的應用程式處理意外的網域名稱。此問題會影響 Node.js 22.x、 24.x和 26.x 發行行。升級至已修補的版本以解決此弱點。
(CVE-2026-105482)
Node.js TLS 憑證主機名稱驗證中的弱點允許鬆散解析為 IP 位址的主機名稱繞過主機名稱驗證。這可能使攻擊者能夠模擬受信任的端點,並可能促進中間人攻擊。(CVE-2026-106069)
Node.js TLS 憑證驗證中的弱點可導致非正式 IPv4 主機名稱與憑證中的DNS主體別名 (SAN) 項目錯誤比對。這可能允許為 DNS 名稱核發的憑證驗證 IP 端點,進而略過預期的主機名稱驗證。(CVE-2026-106072)
Node.js 中的弱點會導致「crypto.randomUUID()」和「crypto.randomInt()」使用的熵快取保留在使用者空間啟動快照和單一可執行應用程式 (SEA) 中。因此,從同一快照初始化的多個進程可能會產生重複值,從而削弱隨機性,並可能損害依賴唯一或不可預測值的安全機制。(CVE-2026-106073)
Node.js 權限模型中的一個弱點允許透過「fs.realpathSync()」繞過檔案系統存取限制。這可讓應用程式存取應受設定權限原則限制的檔案系統路徑。(CVE-2026-106074)
UNDICI 是 Node.js 的HTTP用戶端程式庫。在 、 7.0.0 和 8.0.07.30.08.12.1通過 的6.29.0版本4.0.0中,其代理程式分派器會先透過 JSON 型深層複製傳遞其建構函式選項,然後再將它們轉送至每個來源集區,而且由於 JSON 無法表示函式,因此包含 checkServerIdentity 回呼的呼叫端提供的 tls 選項在到達 TLS 層之前會以無訊息方式刪除。因此,會以無訊息方式接受其自訂 checkServerIdentity 憑證已寫入拒絕,但通過 Node 預設主機名稱和鏈結檢查的 TLS 對等體。由於 Agent 是 request、fetch 和 setGlobalDispatcher 背後的預設分派器,因此這會影響大多數應用程式使用的路徑,而 EnvHttpProxyAgent 的直接和無 Proxy 路由也會受到影響,而只有傳遞函式值 tls 選項 (例如憑證或公開金鑰釘選的自訂 checkServerIdentity) 的應用程式才有風險。此問題已在 undici 6.29.1、 7.30.1和 8.12.2中修正,它們會在 JSON 複製之外保留 tls 選項,因此自訂驗證回呼會原封不動地轉送,而且使用者應升級至其中一個版本或更新版本。因應措施是透過 connect 而不是 tls 傳遞 TLS 選項,或針對代理目的地使用 requestTls 和 proxyTls。(CVE-2026-109383)
UNDICI 是 Node.js 的HTTP用戶端程式庫。在 7.0.0 版本 7.30.08.0.08.12.1中,當無來源代理程式以共用快取存放區依順序撰寫重新導向和快取攔截器時,快取會在重新導向處理常式變更來源之前,從原始要求 URL 建立其金鑰,因此跨來源重新導向之後產生的回應會儲存在原始金鑰下。控制來自受信任 URL 的重新導向目標的攻擊者可以將其回應快取在該受信任 URL 下,並提供給後來的呼叫者,從而允許持續的快取中毒,而相同的金鑰混淆允許對使用者特定資源的私密、未儲存的重新導向回應儲存在原始 URL 下,並提供給後來未經驗證的呼叫者, 揭露私人資料。只有在全部使用無來源代理程式、共用快取儲存庫及重新導向然後快取組合時,應用程式才會受到影響。此問題已在 undici 7.30.1 和 8.12.2中修正,其會驗證產生的來源是否仍符合快取金鑰,並在儲存之前保留每個重新導向躍點的快取控制原則,使用者應升級至其中一個版本或更新版本。因應措施是在重新導向攔截器之前撰寫快取攔截器、使用每個來源的分派器和快取存放區,或在支援重新導向的要求上停用共用快取。
(CVE-2026-109829)
UNDICI 是 Node.js 的HTTP用戶端程式庫。在版本8.12.17.30.08.0.0中7.15.0,其 fetch() 實作會透過將演算法權杖與僅小寫的集合進行比對來驗證子資源完整性中繼資料,即使 SRI 規格以 ASCII 小寫形式定義權杖,因此有效但非小寫的權杖 (例如大寫或混合大小寫SHA256) 會被視為未知並略過。當沒有識別的演算法保留時,undici 會將完整性清單視為空並接受回應,因此傳回不符合固定摘要的內文的伺服器會通過檢查。因此,僅控制回應內文的攻擊者可以將攻擊者控制的位元組傳遞至釘選有效大寫或混合大小寫 SRI 權杖的應用程式,而不會發生完整性錯誤,只會影響回應完整性。此問題已在 undici 7.30.1 和 8.12.2中修正,它們會在驗證前將演算法權杖正規化為 ASCII 小寫,使用者應升級至其中一個版本或更新版本。因應措施是,在完整性中繼資料中使用小寫演算法權杖,例如 sha256、sha384 或 sha512。(CVE-2026-109841)
UNDICI 是 Node.js 的HTTP用戶端程式庫。在 、 through 7.30.0和 8.0.07.18.08.12.1through 的6.29.0版本6.23.0中,當惡意伺服器傳回具有五個以上內容編碼的回應並在傳送正文之前關閉連線時,其 fetch() 實作會使 Node.js 進程崩潰。
由於內容編碼限制,Undici 會拒絕這類回應,但它會在檢查之前建立內部回應資料流,並在未附加錯誤接聽程式或中止要求的情況下傳回,因此提前關閉會在孤立的資料流上顯示內容長度不相符,Node.js將其視為未處理的錯誤並終止處理程序。遠端、未經身份驗證的伺服器可以透過單一回應觸發此觸發,即使應用程式正確捕獲了 fetch() 拒絕,從而導致拒絕服務。此問題已在 undici 6.29.1、 7.30.1和 8.12.2中修正,使用者應升級至其中一個版本或更新版本。沒有因應措施。(CVE-2026-109869)
UNDICI 是 Node.js 的HTTP用戶端程式庫。在 、 7.0.0 和 7.30.08.0.0 透過 8.12.1的6.29.0版本6.5.0中,其 EventSource 用戶端可能會被惡意或遭入侵的伺服器傳送事件對等體驅動耗盡處理程序記憶體。藉由傳送數以百萬計的微小已完成資料欄位,且沒有空白事件分隔符號,或將單一未完成的行分割成多個區塊,剖析器會保留越來越多的每個欄位和每個區塊狀態,而位元組型 maxEventSize 和 maxResponseSize 限制不會綁定這些狀態,而且因為 maxResponseSize 是在解壓縮之前在壓縮內文上強制執行的,所以小型壓縮回應可以擴充為足夠的保留記憶體來終止處理程序。應用程式只需要維護與不受信任對等的 EventSource 連線,這只會控制回應,而可用性是唯一的影響。此問題已在 undici 6.29.1、 7.30.1和 8.12.2中修正,它們會獨立於位元組限制來繫結保留的剖析器狀態,使用者應該升級至其中一個版本或更新版本。沒有因應措施。(CVE-2026-109924)
UNDICI 是 Node.js 的HTTP用戶端程式庫。在 、 through 和 7.0.07.30.08.0.0 through 8.12.1的6.29.0版本5.15.0中,其 WebSocket 用戶端(包括 Node.js 公開的捆綁 WebSocket)可能會被惡意或受損的 WebSocket 伺服器驅動耗盡進程記憶體。對於收到的每個 PING 幀,用戶端會自動寫入 PONG 回應並忽略來自通訊端寫入的背壓訊號,因此串流小型 PING 幀而不讀取用戶端 PONG 的伺服器會使傳出寫入佇列和堆積無限制地成長,直到 Node.js 進程記憶體耗盡並終止。此攻擊是遠端且未經驗證,只需要正常的 WebSocket 連線,而且是不對稱的,因為小型入站 PING 會產生更大的保留出站佇列,而可用性是唯一的影響。此問題已在 undici 6.29.1、 7.30.1和 8.12.2中修正,當自動 PONG 回應達到通訊端背壓並在清空時繼續時,會暫停 WebSocket 框架剖析,限制傳出佇列,而且使用者應該升級至其中一個版本或更新版本。目前沒有任何的因應措施。
(CVE-2026-109932)
Node.js Brotli 解碼器中的弱點可能會導致在處理特製的 Brotli 輸入時發生越界記憶體寫入。成功利用可能會導致記憶體損毀和遠端程式碼執行。
(CVE-2026-111497)
UNDICI 是 Node.js 的HTTP用戶端程式庫。在 、 7.0.0 和 7.30.08.0.08.12.1透過 的6.29.0版本4.2.1中,當 TLS 1.2 伺服器在建立連線後重新協商並提供主機名稱不符合要求的主機的不同 CA 信任憑證時,用戶端處理程序會當機。Node.js在重新協商的交握上重新執行主機名稱驗證,並以 certificate-altname 錯誤破壞通訊端,但 Undici 的 established-socket 錯誤處理常式斷言此錯誤代碼永遠不會發生,因此對等控制錯誤成為終止Node.js進程的未捕獲判斷提示,影響 HTTP/1.1 和 HTTP/2 路徑。透過 undici 或全域 fetch() 到達的惡意或受損的 HTTPS 端點可以透過單一伺服器啟動的重新協商使用戶端崩潰,從而關閉過程中所有正在進行的請求和背景工作,並且利用不需要 CA 妥協,因為攻擊者控制端點並且可以提供兩個普通的有效憑證。只有 TLS 1.2 受到影響,因為 TLS 1.3 不支援重新協商。此問題已在 undici 6.29.1、 7.30.1和 8.12.2中修正,使用者應升級至其中一個版本或更新版本。因應措施是將傳出連線限制為 TLS 1.3 ,以便在目標端點支援時無法進行重新協商。(CVE-2026-87018)
UNDICI 是 Node.js 的HTTP用戶端程式庫。在整個7.30.08.0.08.12.1版本7.15.0中,其解壓縮攔截器將解壓縮的回應資料從 zlib 串流事件回呼轉發到下游處理常式,而不會捕獲這些回呼可能拋出的異常,雖然 undici 的引擎將來自下游處理常式的同步拋出轉換為每個請求的失敗,但當拋出從 zlib 回調異步發生時,該保護就不存在了。因此,設計擲回的下游處理常式 (例如當回應超出其設定的大小上限時擲回的內建傾印攔截器) 會逸出為終止Node.js處理程序的未擷取例外狀況。惡意或受損的 HTTP 伺服器可能會傳回一個小型壓縮內文,該主體會解壓縮到超過設定的限制,從而使任何使用此類處理常式組成解壓縮攔截器的用戶端當機,因此只有解壓縮的大小才重要,並且線上的位元組保持很小。此問題已在 undici 7.30.1 和 8.12.2中修正,使用者應升級至其中一個版本或更新版本。因應措施是避免使用回應處理常式來撰寫解壓縮攔截器,回應處理常式會在回應處理期間擲回,直到升級為止。
(CVE-2026-87029)
Tenable 已直接從所測試產品的安全公告擷取前置描述區塊。
請注意,Nessus 並未測試這些問題,而是僅依據應用程式自我報告的版本號碼作出判斷。
解決方案
執行「dnf update nodejs24 --releasever 2023.12.20261026」或「dnf update --advisory ALAS2023-2026-3330 --releasever 2023.12.20261026」以更新系統。
Plugin 詳細資訊
檔案名稱: al2023_ALAS2023-2026-3330.nasl
代理程式: unix
支援的感應器: Frictionless Assessment AWS, Frictionless Assessment Agent, Nessus Agent, Agentless Assessment, Continuous Assessment, Tenable Cloud Security, Tenable Self-Hosted Container Security, Nessus
風險資訊
媒介: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:N
媒介: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
時間媒介: CVSS:3.0/E:P/RL:O/RC:C
Threat Vector: CVSS:4.0/E:P
Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
弱點資訊
CPE: cpe:/o:amazon:linux:2023, p-cpe:/a:amazon:linux:nodejs24-debuginfo, p-cpe:/a:amazon:linux:nodejs24-debugsource, p-cpe:/a:amazon:linux:nodejs24-devel, p-cpe:/a:amazon:linux:nodejs24-docs, p-cpe:/a:amazon:linux:nodejs24-full-i18n, p-cpe:/a:amazon:linux:nodejs24-libs-debuginfo, p-cpe:/a:amazon:linux:nodejs24-libs, p-cpe:/a:amazon:linux:nodejs24-npm, p-cpe:/a:amazon:linux:nodejs24, p-cpe:/a:amazon:linux:v8-13.6-devel
必要的 KB 項目: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list
可輕鬆利用: Exploits are available
參考資訊
CVE: CVE-2026-105481, CVE-2026-105482, CVE-2026-106069, CVE-2026-106072, CVE-2026-106073, CVE-2026-106074, CVE-2026-109383, CVE-2026-109829, CVE-2026-109841, CVE-2026-109869, CVE-2026-109924, CVE-2026-109932, CVE-2026-111497, CVE-2026-87018, CVE-2026-87029