CVE-2026-43970: Decompression Bomb in cow_spdy:inflate/2 Allows Memory Exhaustion via Crafted SPDY Frame
Improper Handling of Highly Compressed Data (Data Amplification) vulnerability in ninenines cowlib allows unauthenticated remote denial of service via memory exhaustion.
cowspdy:inflate/2 in cowlib passes peer-supplied compressed bytes directly to zlib:inflate/2 with no output size bound. The SPDY header compression dictionary (?ZDICT) is public, and zlib compresses long runs of repeated bytes at roughly 1024:1, so a few kilobytes of SPDY frame payload can decompress to gigabytes on the BEAM heap, OOM-killing the node. A single unauthenticated SPDY frame is sufficient to trigger the condition. The parsers for synstream, synreply, and headers frame types are all affected via cowspdy:parseheaders/2.
This issue affects cowlib from 0.1.0 before 2.16.1.
Affected Software
Remediation
Information
Event History
Frequently Asked Questions
What is the severity of CVE-2026-43970?
CVE-2026-43970 is classified as a denial of service vulnerability due to memory exhaustion.
How do I fix CVE-2026-43970?
To fix CVE-2026-43970, update cowlib to a version that is patched against this vulnerability.
Who is affected by CVE-2026-43970?
CVE-2026-43970 affects all versions of cowlib from 0.1.0 to 2.16.1.
What kind of attacks can exploit CVE-2026-43970?
CVE-2026-43970 can be exploited through unauthenticated remote attacks that send crafted SPDY frames.
What is the impact of CVE-2026-43970 on systems?
The impact of CVE-2026-43970 can lead to system downtime due to memory exhaustion, resulting in a denial of service.