CVE-2026-43970: cowlib Decompression Bomb Vulnerability
HIGHCVE-2026-43970 is a HIGH decompression bomb vulnerability (CWE-409: Improper Handling of Highly Compressed Data (Data Amplification)) affecting cowlib libraries in the Hex ecosystem. The issue involves decompression bomb in cow_spdy:inflate/2 allows memory exhaustion via crafted spdy frame. Remediation is available by upgrading affected packages to version 2.16.1.
CVE-2026-43970 at a Glance
How to Fix CVE-2026-43970
To remediate this vulnerability, upgrade all affected cowlib dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
Upgrade cowlib to 2.16.1
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
inspect dependencies for cowlib
How to Check if You Are Affected
To determine whether your application is affected by CVE-2026-43970, inspect your project dependencies for cowlib:
inspect dependencies for cowlib
Analyze the terminal output to locate any version of cowlib in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 2.16.1), your application is affected.
Note: Verify declared build manifests and deployed runtime container environments.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-409: Improper Handling of Highly Compressed Data (Data Amplification), where the product does not handle or incorrectly handles a compressed input with a very high compression ratio that produces a large output. In cowlib, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
CVE-2026-43970 Affected cowlib Versions
1 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
cowlib
|
Hex |
≥ 0.1.0
< 2.16.1
|
2.16.1
|
References
Frequently Asked Questions
What is CVE-2026-43970?
Which cowlib versions are affected?
What version fixes CVE-2026-43970?
Is cowlib affected?
What CWE is associated with CVE-2026-43970?
How can I check Hex dependencies for CVE-2026-43970?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-84f2-rp86-235p",
"modified" : "2026-05-19T20:12:01Z",
"published" : "2026-05-13T21:32:06Z",
"aliases" : [ "CVE-2026-43970" ],
"summary" : "cowlib: Decompression Bomb in cow_spdy:inflate/2 Allows Memory Exhaustion via Crafted SPDY Frame",
"details" : "Improper Handling of Highly Compressed Data (Data Amplification) vulnerability in ninenines cowlib allows unauthenticated remote denial of service via memory exhaustion.\n\ncow_spdy: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 syn_stream, syn_reply, and headers frame types are all affected via cow_spdy:parse_headers/2.\n\nThis issue affects cowlib from 0.1.0 before 2.16.1.",
"severity" : [ {
"type" : "CVSS_V4",
"score" : "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "Hex",
"name" : "cowlib"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0.1.0"
}, {
"fixed" : "2.16.1"
} ]
} ]
} ],
"references" : [ {
"type" : "ADVISORY",
"url" : "https://nvd.nist.gov/vuln/detail/CVE-2026-43970"
}, {
"type" : "WEB",
"url" : "https://github.com/ninenines/cowlib/commit/16aad3fb9f81f5cda4d1706ff0c54237c619c282"
}, {
"type" : "WEB",
"url" : "https://cna.erlef.org/cves/CVE-2026-43970.html"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/ninenines/cowlib"
}, {
"type" : "WEB",
"url" : "https://osv.dev/vulnerability/EEF-CVE-2026-43970"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-409" ],
"severity" : "HIGH",
"github_reviewed" : true,
"github_reviewed_at" : "2026-05-19T20:12:01Z",
"nvd_published_at" : "2026-05-13T19:17:25Z"
}
}