概要
遠端 Amazon Linux 2023 主機缺少一個安全性更新。
說明
因此,它會受到 ALAS2023-2026-1920 公告中所提及的多個弱點影響。
當 undici 剖析 Set-Cookie 標頭時,它會接受任何包含 Strict、Lax 或 None 作為子字串的 SameSite 屬性值,而不是 RFC 6265 指定的不區分大小寫的完全相符專案。非規格值會以無訊息方式對應至三個標準權杖之一:
SameSite=NoneOfYourBusiness 會剖析為 None,這是最寬鬆的設定。SameSite=StrictLax 會剖析為 Lax,這是 Strict 的降級。受影響的應用程式是那些從伺服器回應取用 Set-Cookie 標頭 (例如透過 undici 的擷取或 Proxy 程式碼路徑),然後轉送或依賴剖析的 sameSite 屬性的應用程式。惡意或不合規的伺服器可能會將消費者對 Cookie 的 SameSite 原則檢視強制為較弱的值,以無訊息的方式降低 Cookie 應提供的 SameSite 強制執行。
這是在新增 cookie 功能時在 undici 5.15.0 中引入的。(CVE-2026-11525)
SQLite 3.53.2 之前的版本中,FTS5 全文檢索搜尋延伸模組中的記憶體損毀弱點允許攻擊者透過提供具有格式錯誤的 FTS5 頁面資料的特製資料庫,造成過程當機、記憶體耗盡或任意程式碼執行。針對惡意資料庫執行 FTS5 MATCH 查詢時,透過攻擊者控制的迴圈綁定在 fts5LeafSeek() 中,攻擊者可以觸及超出邊界讀取,以及透過特製的連續頁面在 fts5ChunkIterate() 中進行堆積緩衝區溢位寫入,導致整數反向溢位,都是可利用的弱點。(CVE-2026-11822)
SQLite 3.53.2 之前的版本中,FTS5 全文檢索搜尋擴充功能中包含一個堆積型緩衝區溢位弱點允許攻擊者透過向特製的資料庫提供惡意延續頁面中繼資料 (指定小於 4 的 szLeaf 值),進而導致當機或執行任意程式碼。攻擊者可以在 fts5ChunkIterate() 中觸發整數反向溢位,造成 FTS5 MATCH 查詢處理期間剩餘位元組計數膨脹,進而在符合 SQLITE_ENABLE_FTS5 的應用程式中導致攻擊者控制資料的堆積緩衝區溢位。(CVE-2026-11824)
undici WebSocket 用戶端會在訊息中片段的累積位元組計數上強制執行 maxPayloadSize,但不會對片段數目強制執行限制。惡意 WebSocket 伺服器可以串流許多小型或空的接續框架,每個框架都會透過每幀和累積大小驗證,共同導致用戶端過程中無限的記憶體增加。結果是記憶體耗盡和拒絕服務。
受影響的應用程式是那些使用 undici WebSocket 用戶端 (新的 WebSocket(...)) 或 WebSocketStream API 的應用程式,這些應用程式可能會被誘導連接到攻擊者控制或受損的 WebSocket 端點。
從 undici 6.17.0 開始的所有版本都會受到影響。(CVE-2026-12151)
Node.js Proxy 通道錯誤處理中的瑕疵可能會在ERR_PROXY_TUNNEL錯誤訊息中洩漏 Proxy 憑證。
當 Proxy 認證內嵌在 Proxy URL 中時,它們可能會透過錯誤處理路徑公開,並由記錄、診斷或其他錯誤消費者擷取。
此弱點會影響所有支援的版本系列:Node.js 22、Node.js 24 和 Node.js 26。
(CVE-2026-48615)
Node.js權限模型強制執行中的一個缺陷允許透過「process.report.writeReport()」路徑錯誤驗證繞過。這可能會導致機密性影響,或在受影響的組態下繞過預期的安全邊界。此弱點會影響所有支援的版本系列:**Node.js 22**、**Node.js 24** 和 **Node.js 26**。(CVE-2026-48617)
Node.js TLS 主機名稱處理中的瑕疵可能會造成 Node.js unicode 點分隔符號處理由於解析程式和驗證程式主機名稱正規化不相符,導致繞過 tls 萬用字元深度驗證。
這可能會導致機密性影響,或在受影響的組態下繞過預期的安全邊界。
此弱點會影響所有支援的版本系列:Node.js 22、Node.js 24 和 Node.js 26。
(CVE-2026-48618)
Node.js HTTP/2 用戶端中的缺陷允許伺服器傳送無限數量的 ORIGIN 框架,這可能會導致用戶端上發生記憶體不足錯誤。
此弱點會影響所有支援的版本系列:Node.js 22、Node.js 24 和 Node.js 26。
(CVE-2026-48619)
Node.js主機名稱比對的不一致可能會導致在多內容 mTLS 設定中繞過信任原則。
此弱點會影響所有支援的版本系列:Node.js 22、Node.js 24 和 Node.js 26。
(CVE-2026-48928)
Node.js TLS主機名稱處理中的瑕疵可能會造成 Embedded-nul 主機名稱因解析器綁定中的 c-string 截斷,導致無訊息授權單位重新綁定。
此弱點會影響所有支援的版本系列:Node.js 22、Node.js 24 和 Node.js 26。
(CVE-2026-48930)
Node.js HTTP Agent 中的缺陷可能會導致用戶端接受在用戶端傳送要求之前傳送的回應為有效。
此弱點會影響所有支援的版本系列:Node.js 22、Node.js 24 和 Node.js 26。
(CVE-2026-48931)
如果 subtle.encrypt() 的輸入是 2GiB 的倍數,則 Node.js WebCrypto 實作中的瑕疵可能會使進程當機。
此弱點會影響所有支援的版本系列:Node.js 22、Node.js 24 和 Node.js 26。
(CVE-2026-48933)
Node.js TLS主機驗證中的缺陷可能會導致攻擊者繞過認證驗證。
此弱點會影響所有支援的版本系列:Node.js 22、Node.js 24 和 Node.js 26。
(CVE-2026-48934)
Node.js Permission API 中的缺陷可能會導致檔案中繼資料被修改,即使在設定為唯讀的路徑上也是如此,例如 --allow-fs-read。
此弱點會影響所有支援的版本系列:Node.js 22、Node.js 24 和 Node.js 26。
(CVE-2026-48935)
Node.js HTTP/2 伺服器 API 中的缺陷可能會導致伺服器即使在發送「GOAWAY」框架後仍繼續接受資料。此弱點會影響兩個支援的版本系列:**Node.js 22** 和 **Node.js 24**。
(CVE-2026-48937)
Undici 的 HTTP/1.1 用戶端在重複使用的 keep-alive 通訊端上容易受到回應佇列中毒的影響。攻擊者控制的上游伺服器可在要求完成後,將未經請求的 HTTP/1.1 回應插入閒置通訊端。當用戶端在該通訊端上分派下一個要求時,它會將插入的回應與新要求相關聯,導致回應傳遞給錯誤的要求。
這需要攻擊者控制或入侵的上游 HTTP/1.1 伺服器,以及保持連線重複使用。(CVE-2026-6733)
使用 Socks5ProxyAgent 時,undici 會跨不同來源重複使用單一連線集區,而不會驗證集區的來源是否符合要求的來源。所有請求都會透過連線至第一個來源的集區進行分配,不論預期的目的地為何。
這會導致跨來源請求路由:用於來源 B 的憑證和請求資料被傳送到來源 A,來自錯誤來源的回應受到信任,同時 HTTPS 請求可能會被無訊息地降級為 HTTP。
受影響的使用者是使用 Socks5ProxyAgent (直接或透過 setGlobalDispatcher) 並向多個來源提出要求的應用程式。
這是透過 #4385 在 undici 7.23.0 中引入,並透過 8.1.0 影響所有版本。(CVE-2026-6734)
當上游 Cache-Control 標頭使用空格填充的限定私有或無快取欄位名稱 (例如 private= authorization 或 no-cache=\tauthorization) 時,Undici 的快取攔截器會錯誤地將某些回應分類為可快取。剖析器會保留周圍的空格,因此稍後與文字授權欄位名稱的比較會失敗,並且會儲存回應。
在共用快取模式中,當兩個要求解析為相同的快取金鑰時,這允許將包含一個使用者已驗證資料的回應從快取提供給後續呼叫端,包括未經驗證的呼叫端。
受影響的應用程式是在共用模式下明確啟用快取攔截器 (interceptors.cache())、將授權標頭轉送上游,以及接收具有非標準限定私有或無快取指令的可快取回應的應用程式。(CVE-2026-9678)
undici 的 parseSetCookie 中的 cookie 解析器透過 qsUnescape 對 cookie 值進行百分比解碼,將 %0D%0A、%00、%3B 和 %3D 等編碼序列轉換為其文字位元組等效項。RFC 6265 SS5.4 沒有指定任何解碼,瀏覽器也不解碼。
剖析 Set-Cookie 標頭,然後將剖析值轉送至回應標頭的應用程式 (代理、中介軟體、SSR 架構) 容易受到 HTTP 回應標頭插入的影響:攻擊者控制的上游可以將任意 Set-Cookie、Location 或 Cache-Control 標頭注入應用程式的下游回應中,進而啟用工作階段固定、開放重新導向或快取中毒。
受影響的應用程式是那些使用 undici 的 cookie 剖析 (parseSetCookie、parseCookie、getSetCookies) 並將剖析的 cookie 值轉送至回應標頭的應用程式。
這是在 undici 7.0.0 (CVE-2026-9679) 中引入的
使用 SOCKS5 proxy URI (socks5:// 或 socks://) 進行設定時,undici 的 ProxyAgent 會以無訊息方式刪除 requestTls 選項。透過 SOCKS5 通道的目標 HTTPS 連線會退回至 Node 的預設信任儲存區,忽略使用者設定的 ca、cert、key、rejectUnauthorized 和 servername 設定。
當其 proxy URI 為 SOCKS5 時,透過 requestTls.ca 釘選至內部或公司 CA 的應用程式,將改為取得預設的 Mozilla CA Bundle 作為信任錨點。任何由任何公開信任的目標主機名稱 CA 簽署的任何憑證都會被接受,進而破壞預期的 PIN 並啟用 MITM 讀取和篡改 HTTPS 交換。
受影響的應用程式是將 undici 的 ProxyAgent (或直接 Socks5ProxyAgent) 與 SOCKS5 搭配使用,並依賴 requestTls 進行 TLS 範圍限制的應用程式。該錯誤是在新增 SOCKS5 支援時於 undici 7.23.0 中引入的。(CVE-2026-9697)
Tenable 已直接從所測試產品的安全公告擷取前置描述區塊。
請注意,Nessus 並未測試這些問題,而是僅依據應用程式自我報告的版本號碼作出判斷。
解決方案
執行「dnf update nodejs24 --releasever 2023.12.20260706」或「dnf update --advisory ALAS2023-2026-1920 --releasever 2023.12.20260706」以更新系統。
Plugin 詳細資訊
檔案名稱: al2023_ALAS2023-2026-1920.nasl
代理程式: unix
支援的感應器: Agentless Assessment, Continuous Assessment, Frictionless Assessment Agent, Frictionless Assessment AWS, Nessus Agent, Tenable Cloud Security, Tenable Self-Hosted Container Security, Nessus
風險資訊
媒介: CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C
媒介: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
時間媒介: CVSS:3.0/E:P/RL:O/RC:C
Threat Vector: CVSS:4.0/E:P
Vector: CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
弱點資訊
CPE: p-cpe:/a:amazon:linux:v8-13.6-devel, p-cpe:/a:amazon:linux:nodejs24-debugsource, p-cpe:/a:amazon:linux:nodejs24-debuginfo, p-cpe:/a:amazon:linux:nodejs24-full-i18n, p-cpe:/a:amazon:linux:nodejs24-npm, p-cpe:/a:amazon:linux:nodejs24-libs-debuginfo, p-cpe:/a:amazon:linux:nodejs24-docs, p-cpe:/a:amazon:linux:nodejs24-devel, p-cpe:/a:amazon:linux:nodejs24-libs, p-cpe:/a:amazon:linux:nodejs24, cpe:/o:amazon:linux:2023
必要的 KB 項目: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list
可輕鬆利用: Exploits are available
參考資訊
CVE: CVE-2026-11525, CVE-2026-11822, CVE-2026-11824, CVE-2026-12151, CVE-2026-48615, CVE-2026-48617, CVE-2026-48618, CVE-2026-48619, CVE-2026-48928, CVE-2026-48930, CVE-2026-48931, CVE-2026-48933, CVE-2026-48934, CVE-2026-48935, CVE-2026-48937, CVE-2026-6733, CVE-2026-6734, CVE-2026-9678, CVE-2026-9679, CVE-2026-9697