简介
远程 Amazon Linux 2023 主机缺少安全更新。
描述
因此,该软件受到 ALAS2023-2026-3144 公告中提及的多个漏洞影响。
(提交 6ff7ef0,libsoup3.6.6)的CVE-2026-0716补丁将整数溢出防护置于 if(已屏蔽)块内,而未屏蔽的服务器到客户端帧不会受到保护。当 max_incoming_payload_size 设置为 0 时,恶意 WebSocket 服务器可发送负载长度接近 UINT64_MAX 的特制未屏蔽帧,以触发基于 libsoup 的客户端中的 OOB 读取。(CVE-2026-12478)
SoupAuthManager 缓存代理认证凭据,而不将其界定到代理颁发机构 (host:port)。当代理配置发生变更(例如通过系统设置或 WPAD)时,来自之前代理的缓存 Proxy-Authorization 标头会发送到新代理,导致泄露凭据。
(CVE-2026-12547)
在 libsoup 中发现堆越界读取缺陷。解析多部分 HTTP 消息时,调用程序和 soup_headers_parse() 之间的整数类型不匹配可造成长度参数被错误截断,从而造成堆缓冲区过度读取。远程攻击者可利用此缺陷,造成使用 libsoup 的应用程序崩溃,或可能泄露堆内存内容。(CVE-2026-12548)
后续 CVE-2026-2443 返工提交回归了该补丁,该返工提交将特定溢出检查替换为通用签名比较。当客户端发送后缀长度超出内容大小的范围请求时,不会正确限制产生的负起始值,从而导致畸形 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 的多部分处理子系统中发现越界读取漏洞。soup-multipart-input-stream.c 内的 soup_multipart_input_stream_read_headers() 函数中存在缺陷,未适当限制或验证传入多部分边界字符串的大小。当处理包含畸形或过大边界参数的特制 HTTP 响应时,内部流读取器会超过分配的缓冲区边界进行读取。未经身份验证的远程攻击者可利用此行为,通过应用程序故障造成拒绝服务 (DoS),或可能读取未经授权内存元数据片段。(CVE-2026-15714)
在 libsoup 中发现一个缺陷。通过 HTTP 代理建立 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 Range 标头处理中存在一个算法复杂性缺陷,该缺陷在修复后 CVE-2025-32907 仍然存在。
CVE-2025-32907 解决了客户端在单个 Range 标头中多次重复相同范围时的内存放大问题。提交 9bb92f7a 修正了 libsoup/soup-message-headers.c 中 soup_message_headers_get_ranges_internal() 中的合并正确性,但 coalescing 循环仍然为每个 coalesced 元素使用 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 的测量结果显示,线路上每个此类请求的单核 CPU 最大值为 ~90 毫秒,从而在该持续时间内阻断服务器的事件循环。
这只是 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“以更新系统。
插件详情
文件名: 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