概要
遠端 Amazon Linux 2023 主機缺少一個安全性更新。
說明
因此,它會受到 ALAS2023-2026-3144 公告中所提及的多個弱點影響。
的修正 (commit 6ff7ef0, libsoup 3.6.6) 將CVE-2026-0716整數溢位防護放在 if (遮罩) 區塊內,使未遮罩的伺服器到用戶端框架不受保護。惡意 WebSocket 伺服器可傳送裝載長度接近 UINT64_MAX 的特製未遮罩框架,以在 libsoup 型用戶端中觸發 max_incoming_payload_size 設定為 0 時的 OOB 讀取。(CVE-2026-12478)
SoupAuthManager 會快取 Proxy 驗證憑證,而不會將其範圍限定為 Proxy 授權單位 (host:port)。當 Proxy 設定變更時 (例如,透過系統設定或 WPAD),先前 Proxy 快取的 Proxy-Authorization 標頭會傳送至新 Proxy,從而洩漏憑證。
(CVE-2026-12547)
在 libsoup 中發現堆積越界讀取缺陷。剖析分段HTTP訊息時,呼叫端與 soup_headers_parse() 之間的整數類型不相符可能會導致長度參數被錯誤截斷,進而導致堆積緩衝區過度讀取。遠端攻擊者可利用此缺陷,使用 libsoup 使應用程式當機,或可能洩漏堆積記憶體內容。(CVE-2026-12548)
後 CVE-2026-2443 續的重做提交已將特定的溢位檢查替換為一般帶正負號的比較。當用戶端傳送尾碼長度超過內容大小的 Range 要求時,產生的負起始值不會正確限制,進而導致格式錯誤的 HTTP 206 回應和記錄泛濫。(CVE-2026-12549)
在 libsoup 的 HTTP/2 連線追蹤架構中發現堆積緩衝區過度讀取弱點。
當程式庫處理 HTTP/2 GOAWAY 框架時,它會假設資料流是安全的 NUL 終止 C 字串,從而不正確地處理其他偵錯資料承載。由於剖析器在讀取此資料之前缺少嚴格的長度邊界驗證,因此未經驗證的遠端攻擊者可能會故意傳送格式錯誤的 GOAWAY 框架,而缺少適當的空分隔符號。這會導致程式庫讀取超過已配置緩衝區的結尾,觸發應用程式當機,進而導致拒絕服務 (DoS),或可能暴露記憶體內容片段。(CVE-2026-15712)
在 libsoup 的 HTTP/2 通訊協定實作中發現弱點。程式庫無法在特定串流終止條件下正確釋放記憶體內容區塊,例如當 HTTP/2 連線遇到視窗耗盡或明確串流重設時。作為惡意網路對等的遠端、未經驗證的攻擊者可以誘騙連線引擎配置資料流狀態,這些狀態隨後在清理期間會洩漏。在持續的時間內,此缺陷允許遠端攻擊者以增量方式消耗系統的堆積分配,透過最終的記憶體不足 (OOM) 應用程式崩潰觸發拒絕服務 (DoS)。(CVE-2026-15713)
在 libsoup 的 multipart 處理子系統中發現一個越界讀取弱點。soup-multipart-input-stream.c 內的 soup_multipart_input_stream_read_headers() 函式中存在此缺陷,該函式無法充分限制或驗證傳入 multipart 邊界字串的大小。處理包含格式錯誤或過大邊界參數的特製 HTTP 回應時,內部資料流讀取器會讀取超過配置的緩衝區邊界。未經驗證的遠端攻擊者可利用此行為,透過應用程式故障造成拒絕服務 (DoS),或可能讀取未經授權的記憶體中繼資料片段。(CVE-2026-15714)
在 libsoup 中發現一個缺陷。透過 HTTP Proxy 建立 CONNECT 通道之後,libsoup 會錯誤地將 Proxy-Authorization 標頭附加至透過該通道傳送至目的地伺服器的後續 HTTPS 要求。這允許目標伺服器捕獲代理憑證,從而導致資訊洩露。(CVE-2026-66339)
在 libsoup 的 SoupServer HTTP 範圍標頭處理中發現一個缺陷。soup-message-headers.c 中的 sort_ranges() 比較器會將 64 位元減法結果截斷為 32 位元 int,翻轉相差超過 INT_MAX 範圍位移的符號。這會導致在大於大約 2 GB 的資源上,HTTP 206 部分內容回應中要求的位元組範圍被無訊息地遺漏。(CVE-2026-77014)
libsoup 的 HTTP 範圍標頭處理中存在演算法複雜性缺陷,該缺陷在修正後 CVE-2025-32907 仍然存在。
CVE-2025-32907 解決了當用戶端在單一 Range 標頭中多次重複相同範圍時的記憶體放大問題。提交 9bb92f7a 更正了 libsoup/soup-message-headers.c 中 soup_message_headers_get_ranges_internal() 中的合併正確性,但合併迴圈仍會針對每個合併的元素使用 g_array_remove_index() 刪除合併的範圍。由於 GArray 是連續的,因此每個中間陣列移除都會執行 O(N) 記憶體移動。當提供許多相同的可滿足範圍時(例如,bytes=0-0 重複數千次),迴圈會執行 O(N2) 工作,將它們合併成一個範圍。
可從 libsoup/server/http1/ 中的 handle_partial_get() 連線到伺服器端的易受攻擊路徑soup-server-message-io-http1.c 當 SoupServer 處理常式傳回具有非空內文的 HTTP 200 時。不需要驗證。範圍數目僅受最大要求標頭大小 (~100 KiB) 的限制,每個要求大約允許 25,000 個範圍。包含修正程式 CVE-2025-32907 的 libsoup HEAD 上的報告器測量結果顯示,在連線最大值下,每個此類要求有 ~90 毫秒的單核心 CPU,從而在該期間封鎖伺服器的事件迴圈。
這只是 CPU 耗盡/可用性問題。不會發生記憶體損毀或資訊洩漏。
受影響:包含修正但 CVE-2025-32907 未合併要求 !550 的 libsoup 版本。已修正上游:MR !550 已於 2026 年 8 月 20 日合併,將每個元素的移除取代為 O(N) 就地壓縮,並拒絕要求超過 200 個範圍的 Range 標頭。上游報告:
https://gitlab.gnome.org/GNOME/libsoup/-/issues/538Related: CVE-2025-32907 (CVE-2026-77680)
在 libsoup 中發現一個缺陷。惡意 HTTP/2 伺服器或中間人 (MITM) 攻擊者可惡意利用 HTTP/2 用戶端實作中的堆積釋放後使用弱點。當 GNOME 應用程式使用 HTTP/2 上傳檔案,且伺服器在非同步讀取檔案內文時傳送 GOAWAY 框架時,就會發生這種情況。這可能導致記憶體損壞,可能導致資訊洩露或任意程式碼執行。(CVE-2026-85197)
在 libsoup 中發現一個缺陷。當用戶端從不可輪詢的輸入資料流傳送 HTTP/2 要求內文時,程式庫可以緩衝比目前流量控制視窗稍後允許的資料更多的資料。惡意 HTTP/2 伺服器可以在緩衝讀取仍在進行時縮小SETTINGS_INITIAL_WINDOW_SIZE。然後,用戶端會將完整緩衝區複製到較小的 DATA 回呼中,而不進行執行階段邊界檢查,這可能會中止處理程序或 HTTP/2 工作階段失敗。(CVE-2026-85534)
Tenable 已直接從所測試產品的安全公告擷取前置描述區塊。
請注意,Nessus 並未測試這些問題,而是僅依據應用程式自我報告的版本號碼作出判斷。
解決方案
執行「dnf update libsoup3 --releasever 2023.12.20260928」或「dnf update --advisory ALAS2023-2026-3144 --releasever 2023.12.20260928」來更新您的系統。
Plugin 詳細資訊
檔案名稱: al2023_ALAS2023-2026-3144.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:P/I:P/A:C
媒介: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:H
時間媒介: CVSS:3.0/E:P/RL:O/RC:C
弱點資訊
CPE: cpe:/o:amazon:linux:2023, p-cpe:/a:amazon:linux:libsoup3-debuginfo, p-cpe:/a:amazon:linux:libsoup3-debugsource, p-cpe:/a:amazon:linux:libsoup3-devel, p-cpe:/a:amazon:linux:libsoup3-doc, p-cpe:/a:amazon:linux:libsoup3
必要的 KB 項目: Host/local_checks_enabled, Host/AmazonLinux/release, Host/AmazonLinux/rpm-list
可輕鬆利用: Exploits are available
參考資訊
CVE: CVE-2026-12478, CVE-2026-12547, CVE-2026-12548, CVE-2026-12549, CVE-2026-15712, CVE-2026-15713, CVE-2026-15714, CVE-2026-66339, CVE-2026-77014, CVE-2026-77680, CVE-2026-85197, CVE-2026-85534
IAVA: 2026-A-0555-S, 2026-A-0894