Libsoup is an HTTP library implementation in C. It was originally part of a SOAP (Simple Object Access Protocol) implementation called Soup, but the SOAP and non-SOAP parts have now been split into separate packages.
Security Fix(es):
A flaw was found in libsoup's WebSocket implementation when using the permessage-deflate extension. The extension's decompression loop (inflate()) processes data in chunks without enforcing an upper boundary limit on the output buffer size. While libsoup limits the incoming compressed frame size via max_incoming_payload_size, it fails to track or limit memory allocation during decompression. A separate check for decompressed size (max_total_message_size) exists but executes only after inflation is complete, and it is entirely disabled by default for client connections. A remote, unauthenticated attacker can exploit this by sending a small, highly compressed payload (a decompression bomb), causing unbounded memory allocation that triggers an Out-of-Memory (OOM) crash and a Denial of Service (DoS).(CVE-2026-15709)
A heap buffer over-read vulnerability was discovered in libsoup's (versions: libsoup 3.0 to 3.7.0) HTTP/2 connection tracking framework. When the library processes an HTTP/2 GOAWAY frame, it improperly handles the "Additional Debug Data" payload by assuming the data stream is a safely NUL-terminated C-string. Because the parser lacks strict length-boundary verification before reading this data, a remote, unauthenticated attacker can intentionally send a malformed GOAWAY frame missing the appropriate null delimiter. This causes the library to read past the end of the allocated buffer, triggering an application crash that results in a denial of service (DoS), or potentially exposing fragments of memory contents.(CVE-2026-15712)
A vulnerability was found in libsoup's HTTP/2 protocol implementation. The library fails to correctly release memory context blocks under specific stream termination conditions, such as when an HTTP/2 connection encounters window exhaustion or explicit stream resets. A remote, unauthenticated attacker acting as a malicious network peer can trick the connection engine into allocating stream states that are subsequently leaked during cleanup. Over a sustained period, this flaw allows the remote attacker to consume the system's heap allocations incrementally, triggering a denial of service (DoS) through an ultimate Out-of-Memory (OOM) application crash.(CVE-2026-15713)
{
"severity": "High"
}{
"aarch64": [
"libsoup3-3.4.5-26.oe2403sp1.aarch64.rpm",
"libsoup3-debuginfo-3.4.5-26.oe2403sp1.aarch64.rpm",
"libsoup3-debugsource-3.4.5-26.oe2403sp1.aarch64.rpm",
"libsoup3-devel-3.4.5-26.oe2403sp1.aarch64.rpm"
],
"noarch": [
"libsoup3-help-3.4.5-26.oe2403sp1.noarch.rpm"
],
"src": [
"libsoup3-3.4.5-26.oe2403sp1.src.rpm"
],
"x86_64": [
"libsoup3-3.4.5-26.oe2403sp1.x86_64.rpm",
"libsoup3-debuginfo-3.4.5-26.oe2403sp1.x86_64.rpm",
"libsoup3-debugsource-3.4.5-26.oe2403sp1.x86_64.rpm",
"libsoup3-devel-3.4.5-26.oe2403sp1.x86_64.rpm"
]
}