CVE Feed
8.7 High

compress provides various compression algorithms.

CVE-2026-116591

Summary A crafted ~27 KB two-block zstd frame makes DecodeAll and the streaming decoder panic with an out-of-range slice index instead of returning a decode error. The same bytes decode fine with the reference zstd. Any program that decompresses untrusted zstd input can be crashed by it. Reproduced on v1.20.0 and v1.20.1. Released in https://github.com/klauspost/compress/releases/tag/v1.20.2 Details The panic is in the FSE decoder that huff0.ReadTable uses to read a block's Huffman-weight table. Three conditions have to hold at once, and the crafted frame arranges all three. 1. A count that doesn't fit is accepted. readNCount permits a tableLog up to 15 ([tablelogAbsoluteMax](https://github.com/klauspost/compress/blob/v1.20.0/fse/decompress.go#L9), checked at [fse/decompress.go:54](https://github.com/klauspost/compress/blob/v1.20.0/fse/decompress.go#L54)), so a symbol's normalized count can reach 32768 (2^15). The count is stored in an int16 at [fse/decompress.go:126](https://github.com/klauspost/compress/blob/v1.20.0/fse/decompress.go#L126), where 32768 wraps to −32768. The validation only looks at the int32 running totals (remaining and gotTotal), which still match, so the bad…

Assessment

CVSS
8.7 (v4.0)
Severity
High
EPSS
0.00333% chance of exploitation in the next 30 days
Known exploited
Not listed in CISA KEV
Exploit availability
Nothing found in Exploit-DB, Metasploit, Nuclei or public PoC repositories
Published
26 October 2026
Last updated
27 October 2026
Affected
go · github.com/klauspost/compress/zstd
Weakness
CWE-190
Assigner
security-advisories@github.com

CVSS vectorCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

At the source

References

Query this programmatically

Agents can read this through the MCP endpoint, or over HTTP:

curl https://cve.zerocrew.in/api/cve/CVE-2026-116591