CVE-2026-2369CVE-2026-2369 是存在于 libsoup 库中的一个整数下溢(Integer Underflow)安全漏洞。该漏洞发生在处理具有零长度资源的 HTTP 内容时,当程序尝试计算缓冲区大小时,整数值可能下溢到负数或极小值,导致后续内存访问操作发生缓冲区越界读取(Buffer Overread)。攻击者可以通过构造特殊的 HTTP 响应或请求,触发 libsoup 对零长度资源的错误处理逻辑,从而读取相邻内存区域中的敏感数据。这些数据可能包括用户凭证、会话令牌、API 密钥或其他机密信息。此外,该漏洞也可能导致应用程序拒绝服务(DoS),因为越界读取可能引发程序崩溃或异常行为。由于该漏洞的利用无需认证且可通过网络远程触发,因此对使用 libsoup 的应用程序构成严重安全威胁。建议受影响用户尽快更新到修复后的版本,并实施相应的安全防护措施。
该漏洞的根本原因在于 libsoup 库在处理 HTTP 响应内容时,对资源长度验证不足。当收到 Content-Length 为 0 或空内容的 HTTP 响应时,代码在计算缓冲区偏移量或大小时可能发生整数下溢。具体来说,当程序执行类似 length - 1 或其他减法操作处理零长度资源时,结果会下溢为负值或极大的无符号整数值。随后,当使用该下溢值进行内存分配或指针运算时,会导致缓冲区越界读取。攻击者可以构造恶意的 HTTP 服务器或中间人攻击,发送精心设计的零长度响应,诱导受害客户端执行越界读取操作。成功利用此漏洞可能导致以下后果:1)敏感信息泄露,攻击者获取应用程序内存中的敏感数据;2)拒绝服务,读取无效内存地址导致程序崩溃;3)进一步利用,在某些复杂场景下可能为更严重的代码执行漏洞奠定基础。CVSS 3.1 向量显示该漏洞的网络可访问性(AV:N)和无需认证(PR:N)的特性使其具有较高的可利用性。