Every CVESearch/Get API key

CVE-2026-116591

compress zstd: Panic on two-block frames

8.7 HighFix available

CVE-2026-116591 is a high vulnerability (CVSS 8.7) in Klauspost Compress, published October 26, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.33%, the 26th percentile. Fixed in github.com/klauspost/compress/zstd 1.20.2.

What does this mean?
Severity
8.7 HighCVSS 4.0, CVE List
Exploit chance
0.33%EPSS, 26th percentile
Exploitation
None knownNot on CISA’s or ENISA’s lists

Description

compress provides various compression algorithms. Prior to 1.20.2, the zstd DecodeAll and streaming decoder paths can panic when a crafted two-block frame reaches huff0.ReadTable with an FSE normalized count of 32768 that readNCount stores in int16 as -32768. The wrapped count allows buildDtable to retain stale fse.Scratch decode-table state from the prior block, and nextFast then derives an out-of-range state and indexes beyond the table instead of returning a decode error. Both blocks are required to preserve and then reuse the stale state, allowing untrusted zstd input to crash an application. This issue is fixed in version 1.20.2.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

0.33%Unchanged since Oct 27, 2026
90%50%10%1%

Affected products

Affected packages

Affected packages
PackageAffectedFixed
github.com/klauspost/compress/zstd
Go
through 1.20.1
1.20.2
docker
Alpine:v3.24
before 29.9.3-r0
29.9.3-r0
grafana-pcp
AlmaLinux:8
before 5.1.1-20.el8_10
5.1.1-20.el8_10
grafana
AlmaLinux:8
From an advisory covering 2 CVEs
before 9.2.10-38.el8_10
9.2.10-38.el8_10
grafana-selinux
AlmaLinux:8
From an advisory covering 2 CVEs
before 9.2.10-38.el8_10
9.2.10-38.el8_10
azl-otel-collector
Azure Linux:3
through 0.127.0-1None known
buildah
Azure Linux:3
through 1.43.1-3None known
cri-o
Azure Linux:3
through 1.30.1-1None known
kata-containers-preview
Azure Linux:3
through 3.27.0~preview2-2None known
podman
Azure Linux:3
through 5.6.1-10None known
Show 149 moreShow less
Affected packages
PackageAffectedFixed
umoci
Azure Linux:3
through 0.4.7-13None known
azurelinux-image-tools
Azure Linux:3
through 1.7.0-2None known
cert-manager
Azure Linux:3
through 1.12.15-15None known
containerd2
Azure Linux:3
through 2.3.7-1None known
containerized-data-importer
Azure Linux:3
through 1.62.0-9None known
coredns
Azure Linux:3
through 1.11.4-23None known
docker-buildx
Azure Linux:3
through 0.14.0-19None known
docker-cli
Azure Linux:3
through 25.0.7-6None known
docker-compose
Azure Linux:3
through 2.27.0-16None known
gh
Azure Linux:3
through 2.102.0-2None known
influxdb
Azure Linux:3
through 2.7.5-24None known
kata-containers
Azure Linux:3
through 4.1.0.kata1-2None known
kata-containers-cc
Azure Linux:3
through 3.15.0.aks0-23None known
keda
Azure Linux:3
through 2.14.1-19None known
kubernetes
Azure Linux:3
through 1.30.10-32None known
libcontainers-common
Azure Linux:3
through 20240213-3None known
kubevirt-openvmm
Azure Linux:3
through 1.9.0-1None known
moby-containerd-cc
Azure Linux:3
through 1.7.7-19None known
moby-engine
Azure Linux:3
through 25.0.18-1None known
opa
Azure Linux:3
through 0.63.0-6None known
packer
Azure Linux:3
through 1.9.5-24None known
skopeo
Azure Linux:3
through 1.14.4-15None known
telegraf
Azure Linux:3
through 1.31.0-36None known
vitess
Azure Linux:3
through 19.0.4-16None known
docker
Alpaquita:stream
24.0.2-r0 up to 29.9.3-r0
29.9.3-r0
golang-github-klauspost-compress
Debian:12
All versions, plus listed versions
1.15.12+ds1-31.17.0+ds1-11.17.0+ds1-1~exp11.17.10+ds1-11.17.11+ds1-1
Show 12 moreShow less
1.17.2+ds1-11.17.7+ds1-11.17.9+ds1-11.17.9+ds1-1~bpo12+11.18.0+ds1-11.18.1+ds1-11.18.6+ds1-11.18.6+ds1-21.19.0+ds1-11.19.0+ds1-21.20.0+ds1-11.20.3+ds1-1
None known
golang-github-klauspost-compress
Debian:13
All versions, plus listed versions
1.18.0+ds1-11.18.1+ds1-11.18.6+ds1-11.18.6+ds1-21.19.0+ds1-11.19.0+ds1-21.20.0+ds1-11.20.3+ds1-1
None known
golang-github-klauspost-compress
Debian:14
before 1.20.3+ds1-1, plus listed versions
1.18.0+ds1-11.18.1+ds1-11.18.6+ds1-11.18.6+ds1-21.19.0+ds1-11.19.0+ds1-21.20.0+ds1-1
1.20.3+ds1-1
github.com/klauspost/compress/zstd
Go
before 1.20.2
1.20.2
github.com/klauspost/compress
Go
before 1.20.2
1.20.2
opentelemetry-collector-k8s
Red Hat:hummingbird:1
before 0:0.163.2-0.1.hum1
0:0.163.2-0.1.hum1
buildah
Red Hat:hummingbird:1
before 2:1.46.0-1.hum1
2:1.46.0-1.hum1
opentelemetry-collector
Red Hat:hummingbird:1
before 0:0.164.0-0.1.hum1
0:0.164.0-0.1.hum1
skopeo
Red Hat:hummingbird:1
before 1:1.24.1-1.3.hum1
1:1.24.1-1.3.hum1
skopeo-tests
Red Hat:hummingbird:1
before 1:1.24.1-1.3.hum1
1:1.24.1-1.3.hum1
syft
Red Hat:hummingbird:1
before 0:1.55.0-0.3.hum1
0:1.55.0-0.3.hum1
distribution
Red Hat:hummingbird:1
before 0:3.1.2-0.4.hum1
0:3.1.2-0.4.hum1
podman
Red Hat:hummingbird:1
before 5:6.1.4-1.2.hum1
5:6.1.4-1.2.hum1
podman-docker
Red Hat:hummingbird:1
before 5:6.1.4-1.2.hum1
5:6.1.4-1.2.hum1
podman-machine
Red Hat:hummingbird:1
before 5:6.1.4-1.2.hum1
5:6.1.4-1.2.hum1
podman-remote
Red Hat:hummingbird:1
before 5:6.1.4-1.2.hum1
5:6.1.4-1.2.hum1
podmansh
Red Hat:hummingbird:1
before 5:6.1.4-1.2.hum1
5:6.1.4-1.2.hum1
cosign
Red Hat:hummingbird:1
before 0:3.1.4-0.2.hum1
0:3.1.4-0.2.hum1
opentelemetry-collector-contrib
Red Hat:hummingbird:1
before 0:0.164.0-0.1.hum1
0:0.164.0-0.1.hum1
k6v1
Red Hat:hummingbird:1
before 0:1.8.2-0.3.hum1
0:1.8.2-0.3.hum1
k6v2
Red Hat:hummingbird:1
before 0:2.3.0-0.4.hum1
0:2.3.0-0.4.hum1
jaeger
Red Hat:hummingbird:1
before 0:2.21.0-0.3.hum1
0:2.21.0-0.3.hum1
tempo3.0
Red Hat:hummingbird:1
before 0:3.0.4-0.3.hum1
0:3.0.4-0.3.hum1
spire1.14
Red Hat:hummingbird:1
before 0:1.14.9-0.3.hum1
0:1.14.9-0.3.hum1
spire1.14-agent
Red Hat:hummingbird:1
before 0:1.14.9-0.3.hum1
0:1.14.9-0.3.hum1
spire1.14-oidc-discovery-provider
Red Hat:hummingbird:1
before 0:1.14.9-0.3.hum1
0:1.14.9-0.3.hum1
spire1.14-server
Red Hat:hummingbird:1
before 0:1.14.9-0.3.hum1
0:1.14.9-0.3.hum1
spire1.15
Red Hat:hummingbird:1
before 0:1.15.5-0.3.hum1
0:1.15.5-0.3.hum1
spire1.15-agent
Red Hat:hummingbird:1
before 0:1.15.5-0.3.hum1
0:1.15.5-0.3.hum1
spire1.15-oidc-discovery-provider
Red Hat:hummingbird:1
before 0:1.15.5-0.3.hum1
0:1.15.5-0.3.hum1
spire1.15-server
Red Hat:hummingbird:1
before 0:1.15.5-0.3.hum1
0:1.15.5-0.3.hum1
trivy
Red Hat:hummingbird:1
before 0:0.76.1-0.2.hum1
0:0.76.1-0.2.hum1
caddy
Red Hat:hummingbird:1
before 0:2.11.7-0.4.hum1
0:2.11.7-0.4.hum1
prometheus3.13
Red Hat:hummingbird:1
before 0:3.13.5-0.2.hum1
0:3.13.5-0.2.hum1
grype
Red Hat:hummingbird:1
before 0:0.121.0-0.3.hum1
0:0.121.0-0.3.hum1
git-lfs
Red Hat:hummingbird:1
before 0:3.8.1-0.2.hum1
0:3.8.1-0.2.hum1
opentofu1.12
Red Hat:hummingbird:1
before 0:1.12.9-0.2.hum1
0:1.12.9-0.2.hum1
loki3.7
Red Hat:hummingbird:1
before 0:3.7.9-0.2.hum1
0:3.7.9-0.2.hum1
loki3.7-canary
Red Hat:hummingbird:1
before 0:3.7.9-0.2.hum1
0:3.7.9-0.2.hum1
loki3.7-logcli
Red Hat:hummingbird:1
before 0:3.7.9-0.2.hum1
0:3.7.9-0.2.hum1
opentofu1.12
Red Hat:hummingbird:1
before 0:1.12.11-0.1.hum1
0:1.12.11-0.1.hum1
grafana12.4
Red Hat:hummingbird:1
From an advisory covering 5 CVEs
before 0:12.4.13-0.6.hum1
0:12.4.13-0.6.hum1
grafana13.1
Red Hat:hummingbird:1
From an advisory covering 2 CVEs
before 0:13.1.8-0.6.hum1
0:13.1.8-0.6.hum1
grafana13.2
Red Hat:hummingbird:1
From an advisory covering 3 CVEs
before 0:13.2.4-0.6.hum1
0:13.2.4-0.6.hum1
tempo2.10
Red Hat:hummingbird:1
before 0:2.10.9-0.2.hum1
0:2.10.9-0.2.hum1
loki3.6
Red Hat:hummingbird:1
before 0:3.6.19-0.3.hum1
0:3.6.19-0.3.hum1
loki3.6-canary
Red Hat:hummingbird:1
before 0:3.6.19-0.3.hum1
0:3.6.19-0.3.hum1
loki3.6-logcli
Red Hat:hummingbird:1
before 0:3.6.19-0.3.hum1
0:3.6.19-0.3.hum1
grafana
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.2.6-24.el9_9.8
0:10.2.6-24.el9_9.8
grafana-debuginfo
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.2.6-24.el9_9.8
0:10.2.6-24.el9_9.8
grafana-debugsource
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.2.6-24.el9_9.8
0:10.2.6-24.el9_9.8
grafana-selinux
Red Hat:enterprise_linux:9::appstream
From an advisory covering 2 CVEs
before 0:10.2.6-24.el9_9.8
0:10.2.6-24.el9_9.8
grafana-pcp
Red Hat:enterprise_linux:10.3
before 0:6.1.0-2.el10_3.3
0:6.1.0-2.el10_3.3
grafana-pcp-debuginfo
Red Hat:enterprise_linux:10.3
before 0:6.1.0-2.el10_3.3
0:6.1.0-2.el10_3.3
grafana-pcp-debugsource
Red Hat:enterprise_linux:10.3
before 0:6.1.0-2.el10_3.3
0:6.1.0-2.el10_3.3
grafana
Red Hat:enterprise_linux:10.3
From an advisory covering 3 CVEs
before 0:12.4.3-3.el10_3.6
0:12.4.3-3.el10_3.6
grafana-debuginfo
Red Hat:enterprise_linux:10.3
From an advisory covering 3 CVEs
before 0:12.4.3-3.el10_3.6
0:12.4.3-3.el10_3.6
grafana-debugsource
Red Hat:enterprise_linux:10.3
From an advisory covering 3 CVEs
before 0:12.4.3-3.el10_3.6
0:12.4.3-3.el10_3.6
grafana-selinux
Red Hat:enterprise_linux:10.3
From an advisory covering 3 CVEs
before 0:12.4.3-3.el10_3.6
0:12.4.3-3.el10_3.6
grafana-pcp
Red Hat:enterprise_linux:8::appstream
before 0:5.1.1-20.el8_10
0:5.1.1-20.el8_10
grafana-pcp-debuginfo
Red Hat:enterprise_linux:8::appstream
before 0:5.1.1-20.el8_10
0:5.1.1-20.el8_10
grafana-pcp-debugsource
Red Hat:enterprise_linux:8::appstream
before 0:5.1.1-20.el8_10
0:5.1.1-20.el8_10
grafana
Red Hat:enterprise_linux:8::appstream
From an advisory covering 2 CVEs
before 0:9.2.10-38.el8_10
0:9.2.10-38.el8_10
grafana-debuginfo
Red Hat:enterprise_linux:8::appstream
From an advisory covering 2 CVEs
before 0:9.2.10-38.el8_10
0:9.2.10-38.el8_10
grafana-debugsource
Red Hat:enterprise_linux:8::appstream
From an advisory covering 2 CVEs
before 0:9.2.10-38.el8_10
0:9.2.10-38.el8_10
grafana-selinux
Red Hat:enterprise_linux:8::appstream
From an advisory covering 2 CVEs
before 0:9.2.10-38.el8_10
0:9.2.10-38.el8_10
grafana
Red Hat:enterprise_linux_eus:10.2
From an advisory covering 2 CVEs
before 0:10.2.6-28.el10_2.11
0:10.2.6-28.el10_2.11
grafana-debuginfo
Red Hat:enterprise_linux_eus:10.2
From an advisory covering 2 CVEs
before 0:10.2.6-28.el10_2.11
0:10.2.6-28.el10_2.11
grafana-debugsource
Red Hat:enterprise_linux_eus:10.2
From an advisory covering 2 CVEs
before 0:10.2.6-28.el10_2.11
0:10.2.6-28.el10_2.11
grafana-selinux
Red Hat:enterprise_linux_eus:10.2
From an advisory covering 2 CVEs
before 0:10.2.6-28.el10_2.11
0:10.2.6-28.el10_2.11
grafana
Red Hat:rhel_eus:9.8::appstream
From an advisory covering 2 CVEs
before 0:10.2.6-23.el9_8.10
0:10.2.6-23.el9_8.10
grafana-debuginfo
Red Hat:rhel_eus:9.8::appstream
From an advisory covering 2 CVEs
before 0:10.2.6-23.el9_8.10
0:10.2.6-23.el9_8.10
grafana-debugsource
Red Hat:rhel_eus:9.8::appstream
From an advisory covering 2 CVEs
before 0:10.2.6-23.el9_8.10
0:10.2.6-23.el9_8.10
grafana-selinux
Red Hat:rhel_eus:9.8::appstream
From an advisory covering 2 CVEs
before 0:10.2.6-23.el9_8.10
0:10.2.6-23.el9_8.10
grafana-pcp
Red Hat:rhel_eus:9.8::appstream
before 0:5.1.1-17.el9_8.3
0:5.1.1-17.el9_8.3
grafana-pcp-debuginfo
Red Hat:rhel_eus:9.8::appstream
before 0:5.1.1-17.el9_8.3
0:5.1.1-17.el9_8.3
grafana-pcp-debugsource
Red Hat:rhel_eus:9.8::appstream
before 0:5.1.1-17.el9_8.3
0:5.1.1-17.el9_8.3
grafana-pcp
Red Hat:enterprise_linux_eus:10.2
before 0:5.3.0-8.el10_2.3
0:5.3.0-8.el10_2.3
grafana-pcp-debuginfo
Red Hat:enterprise_linux_eus:10.2
before 0:5.3.0-8.el10_2.3
0:5.3.0-8.el10_2.3
grafana-pcp-debugsource
Red Hat:enterprise_linux_eus:10.2
before 0:5.3.0-8.el10_2.3
0:5.3.0-8.el10_2.3
grafana-pcp
Red Hat:enterprise_linux:9::appstream
before 0:5.1.1-17.el9_9.4
0:5.1.1-17.el9_9.4
grafana-pcp-debuginfo
Red Hat:enterprise_linux:9::appstream
before 0:5.1.1-17.el9_9.4
0:5.1.1-17.el9_9.4
grafana-pcp-debugsource
Red Hat:enterprise_linux:9::appstream
before 0:5.1.1-17.el9_9.4
0:5.1.1-17.el9_9.4
grafana
Rocky Linux:9
From an advisory covering 2 CVEs
before 0:10.2.6-24.el9_9.8
0:10.2.6-24.el9_9.8
grafana-debuginfo
Rocky Linux:9
From an advisory covering 2 CVEs
before 0:10.2.6-24.el9_9.8
0:10.2.6-24.el9_9.8
grafana-debugsource
Rocky Linux:9
From an advisory covering 2 CVEs
before 0:10.2.6-24.el9_9.8
0:10.2.6-24.el9_9.8
grafana-selinux
Rocky Linux:9
From an advisory covering 2 CVEs
before 0:10.2.6-24.el9_9.8
0:10.2.6-24.el9_9.8
grafana-pcp
Rocky Linux:10
before 0:6.1.0-2.el10_3.3
0:6.1.0-2.el10_3.3
grafana-pcp-debuginfo
Rocky Linux:10
before 0:6.1.0-2.el10_3.3
0:6.1.0-2.el10_3.3
grafana-pcp-debugsource
Rocky Linux:10
before 0:6.1.0-2.el10_3.3
0:6.1.0-2.el10_3.3
grafana-pcp
Rocky Linux:8
before 0:5.1.1-20.el8_10
0:5.1.1-20.el8_10
grafana-pcp-debuginfo
Rocky Linux:8
before 0:5.1.1-20.el8_10
0:5.1.1-20.el8_10
grafana-pcp-debugsource
Rocky Linux:8
before 0:5.1.1-20.el8_10
0:5.1.1-20.el8_10
grafana
Rocky Linux:8
From an advisory covering 2 CVEs
before 0:9.2.10-38.el8_10
0:9.2.10-38.el8_10
grafana-debuginfo
Rocky Linux:8
From an advisory covering 2 CVEs
before 0:9.2.10-38.el8_10
0:9.2.10-38.el8_10
grafana-debugsource
Rocky Linux:8
From an advisory covering 2 CVEs
before 0:9.2.10-38.el8_10
0:9.2.10-38.el8_10
grafana-selinux
Rocky Linux:8
From an advisory covering 2 CVEs
before 0:9.2.10-38.el8_10
0:9.2.10-38.el8_10
aliyun-cli
SUSE:Linux Enterprise Server 16.0
before 3.5.2-160000.1.1
3.5.2-160000.1.1
aliyun-cli
SUSE:Linux Enterprise Server for SAP applications 16.0
before 3.5.2-160000.1.1
3.5.2-160000.1.1
aliyun-cli
SUSE:Linux Enterprise Module for Public Cloud 15 SP5
From an advisory covering 2 CVEs
before 3.5.2-150400.9.13.1
3.5.2-150400.9.13.1
aliyun-cli
SUSE:Linux Enterprise Module for Public Cloud 15 SP6
From an advisory covering 2 CVEs
before 3.5.2-150400.9.13.1
3.5.2-150400.9.13.1
aliyun-cli
SUSE:Linux Enterprise Module for Public Cloud 15 SP7
From an advisory covering 2 CVEs
before 3.5.2-150400.9.13.1
3.5.2-150400.9.13.1
golang-github-klauspost-compress
Ubuntu:16.04:LTS
All versions, plus listed versions
0.0~git20151221.0.2dd54ae-1
None known
golang-github-klauspost-compress
Ubuntu:18.04:LTS
All versions, plus listed versions
1.2.1-11.2.1-21.2.1-41.2.1-5
None known
golang-github-klauspost-compress
Ubuntu:20.04:LTS
All versions, plus listed versions
1.2.1-51.7.6-21.9.5-11.9.5-2
None known
golang-github-klauspost-compress
Ubuntu:22.04:LTS
All versions, plus listed versions
1.11.7-2
None known
golang-github-klauspost-compress
Ubuntu:24.04:LTS
All versions, plus listed versions
1.15.12+ds1-31.17.7+ds1-1
None known
golang-github-klauspost-compress
Ubuntu:26.10
All versions, plus listed versions
1.18.1+ds1-11.19.0+ds1-11.20.0+ds1-1
None known
golang-github-klauspost-compress
Ubuntu:26.04:LTS
All versions, plus listed versions
1.18.0+ds1-11.18.1+ds1-1
None known
aliyun-cli
openSUSE:Tumbleweed
before 3.5.2-2.1
3.5.2-2.1
cadvisor
openSUSE:Tumbleweed
From an advisory covering 2 CVEs
before 0.60.6-5.1
0.60.6-5.1
distribution
openSUSE:Tumbleweed
before 3.1.2-4.1
3.1.2-4.1
go-containerregistry
openSUSE:Tumbleweed
before 0.22.1-3.1
0.22.1-3.1
hauler
openSUSE:Tumbleweed
before 2.1.2-3.1
2.1.2-3.1
helm
openSUSE:Tumbleweed
From an advisory covering 5 CVEs
before 4.3.1-3.1
4.3.1-3.1
helm3
openSUSE:Tumbleweed
before 3.22.1-2.1
3.22.1-2.1
amazon-cloudwatch-agent
openSUSE:Tumbleweed
before 1.300073.2-3.1
1.300073.2-3.1
google-osconfig-agent
openSUSE:Tumbleweed
From an advisory covering 4 CVEs
before 20261103.02-1.1
20261103.02-1.1
syft
openSUSE:Tumbleweed
From an advisory covering 2 CVEs
before 1.56.0-1.1
1.56.0-1.1
gopass
openSUSE:Tumbleweed
before 1.17.4-2.1
1.17.4-2.1
cadvisor
openSUSE:Leap 16.0
From an advisory covering 2 CVEs
before 0.60.6-bp160.4.1
0.60.6-bp160.4.1
go-containerregistry
openSUSE:Leap 16.0
From an advisory covering 3 CVEs
before 0.22.1-bp160.1.1
0.22.1-bp160.1.1
hauler
openSUSE:Leap 16.0
before 2.1.2-bp160.2.1
2.1.2-bp160.2.1
aliyun-cli
openSUSE:Leap 16.0
before 3.5.2-160000.1.1
3.5.2-160000.1.1

What each source reports

CVE List Score used8.7

compress zstd: Panic on two-block frames

compress provides various compression algorithms. Prior to 1.20.2, the zstd DecodeAll and streaming decoder paths can panic when a crafted two-block frame reaches huff0.ReadTable with an FSE normalized count of 32768 that readNCount stores in int16 as -32768. The wrapped count allows buildDtable to retain stale fse.Scratch decode-table state from the prior block, and nextFast then derives an out-of-range state and indexes beyond the table instead of returning a decode error. Both blocks are required to preserve and then reuse the stale state, allowing untrusted zstd input to crash an application. This issue is fixed in version 1.20.2.

Record
CVE-2026-116591
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Weakness
CWE-190
Updated
2026-11-02
EUVDEUVD-2026-1104978.7

compress provides various compression algorithms. Prior to 1.20.2, the zstd DecodeAll and streaming decoder paths can panic when a crafted two-block frame reaches huff0.ReadTable with an FSE normalized count of 32768 that readNCount stores in int16 as -32768. The wrapped count allows buildDtable to retain stale fse.Scratch decode-table state from the prior block, and nextFast then derives an out-of-range state and indexes beyond the table instead of returning a decode error. Both blocks are required to preserve and then reuse the stale state, allowing untrusted zstd input to crash an application. This issue is fixed in version 1.20.2.

Record
EUVD-2026-110497
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-fpmh-frq8-7rj88.7

compress zstd: Panic on two-block frames

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, checked at fse/decompress.go:54), so a symbol's normalized count can reach 32768 (2^15). The count is stored in an int16 at fse/decompress.go:126, where 32768 wraps to −32768. The validation only looks at the int32 running totals (remaining and gotTotal), which still match, so the bad value passes. The crafted second block produces norm = [0, -32768], symbolLen = 2.

2. The decode table is built empty, with no error. In buildDtable, −32768 isn't the −1 that flags a low-probability symbol, so it skips that branch, and the spread loop for i := 0; i < int(v); i++ runs zero times for a negative v. position never advances, so the position != 0 guard passes as well.

3. Stale state from the previous block is reused. huff0 shares one fse.Scratch across both blocks, and allocDtable reuses decTable and ct.stateTable without clearing them. So the table is rebuilt on top of block 1's symbols and symbolNext values. Many cells end up with nbBits == 0, because the leftover nextState is ≥ 32768.

At decode time, every symbol's count is below largeLimit, so zeroBits stays false and decompress takes the nextFast path. On a cell with nbBits == 0, getBitsFast(0) shifts by (64-0)&63 == 0 and returns the low 16 bits of the whole register instead of 0. The state runs past the end of the table, and d.dt[d.state] panics:

panic: runtime error: index out of range [33077] with length 32768

Both blocks are needed. With a fresh Scratch, every cell would be symbol 0 with symbolNext 0, highBits(0) would underflow, newState would reach 32768, and the newState >= tableSize guard would return an error. Block 1's leftover state is what carries the malformed table past that guard.

The underlying bug is the int16 storage combined with a tableLog allowed to reach 15. The C reference uses short too, but caps the FSE tableLog at 12 and the Huffman-weight tableLog at 6, so the count never wraps. huff0.ReadTable doesn't enforce that 6-bit bound.

A fix: reject a count of 1<<15 (or nbBits > 14) in readNCount, and enforce the weight-table tableLog in huff0. Clearing the reused table would also turn the panic into an error.

Proof of concept

Run the following repro:

package compression

import (
	"bytes"
	"slices"
	"testing"

	"github.com/klauspost/compress/zstd"
	"github.com/stretchr/testify/require"
)

func TestDecodeAll(t *testing.T) {
	// zstdFSEPanic is a crafted two-block…
Record
GHSA-fpmh-frq8-7rj8
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Weakness
CWE-190
Updated
2026-11-02
NVD8.7

compress provides various compression algorithms. Prior to 1.20.2, the zstd DecodeAll and streaming decoder paths can panic when a crafted two-block frame reaches huff0.ReadTable with an FSE normalized count of 32768 that readNCount stores in int16 as -32768. The wrapped count allows buildDtable to retain stale fse.Scratch decode-table state from the prior block, and nextFast then derives an out-of-range state and indexes beyond the table instead of returning a decode error. Both blocks are required to preserve and then reuse the stale state, allowing untrusted zstd input to crash an application. This issue is fixed in version 1.20.2.

Record
CVE-2026-116591
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Weakness
CWE-190
Updated
2026-11-02
OSVALPINE-CVE-2026-1165918.7

compress provides various compression algorithms. Prior to 1.20.2, the zstd DecodeAll and streaming decoder paths can panic when a crafted two-block frame reaches huff0.ReadTable with an FSE normalized count of 32768 that readNCount stores in int16 as -32768. The wrapped count allows buildDtable to retain stale fse.Scratch decode-table state from the prior block, and nextFast then derives an out-of-range state and indexes beyond the table instead of returning a decode error. Both blocks are required to preserve and then reuse the stale state, allowing untrusted zstd input to crash an application. This issue is fixed in version 1.20.2.

Record
ALPINE-CVE-2026-116591
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Updated
2026-11-05
OSV8.7

compress zstd: Panic on two-block frames

compress provides various compression algorithms. Prior to 1.20.2, the zstd DecodeAll and streaming decoder paths can panic when a crafted two-block frame reaches huff0.ReadTable with an FSE normalized count of 32768 that readNCount stores in int16 as -32768. The wrapped count allows buildDtable to retain stale fse.Scratch decode-table state from the prior block, and nextFast then derives an out-of-range state and indexes beyond the table instead of returning a decode error. Both blocks are required to preserve and then reuse the stale state, allowing untrusted zstd input to crash an application. This issue is fixed in version 1.20.2.

Record
CVE-2026-116591
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Weakness
CWE-190
Updated
2026-11-07
Show 48 moreShow less
OSVDEBIAN-CVE-2026-1165918.7

compress provides various compression algorithms. Prior to 1.20.2, the zstd DecodeAll and streaming decoder paths can panic when a crafted two-block frame reaches huff0.ReadTable with an FSE normalized count of 32768 that readNCount stores in int16 as -32768. The wrapped count allows buildDtable to retain stale fse.Scratch decode-table state from the prior block, and nextFast then derives an out-of-range state and indexes beyond the table instead of returning a decode error. Both blocks are required to preserve and then reuse the stale state, allowing untrusted zstd input to crash an application. This issue is fixed in version 1.20.2.

Record
DEBIAN-CVE-2026-116591
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Updated
2026-11-02
OSVGHSA-fpmh-frq8-7rj88.7

compress zstd: Panic on two-block frames

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, checked at fse/decompress.go:54), so a symbol's normalized count can reach 32768 (2^15). The count is stored in an int16 at fse/decompress.go:126, where 32768 wraps to −32768. The validation only looks at the int32 running totals (remaining and gotTotal), which still match, so the bad value passes. The crafted second block produces norm = [0, -32768], symbolLen = 2.

2. The decode table is built empty, with no error. In buildDtable, −32768 isn't the −1 that flags a low-probability symbol, so it skips that branch, and the spread loop for i := 0; i < int(v); i++ runs zero times for a negative v. position never advances, so the position != 0 guard passes as well.

3. Stale state from the previous block is reused. huff0 shares one fse.Scratch across both blocks, and allocDtable reuses decTable and ct.stateTable without clearing them. So the table is rebuilt on top of block 1's symbols and symbolNext values. Many cells end up with nbBits == 0, because the leftover nextState is ≥ 32768.

At decode time, every symbol's count is below largeLimit, so zeroBits stays false and decompress takes the nextFast path. On a cell with nbBits == 0, getBitsFast(0) shifts by (64-0)&63 == 0 and returns the low 16 bits of the whole register instead of 0. The state runs past the end of the table, and d.dt[d.state] panics:

panic: runtime error: index out of range [33077] with length 32768

Both blocks are needed. With a fresh Scratch, every cell would be symbol 0 with symbolNext 0, highBits(0) would underflow, newState would reach 32768, and the newState >= tableSize guard would return an error. Block 1's leftover state is what carries the malformed table past that guard.

The underlying bug is the int16 storage combined with a tableLog allowed to reach 15. The C reference uses short too, but caps the FSE tableLog at 12 and the Huffman-weight tableLog at 6, so the count never wraps. huff0.ReadTable doesn't enforce that 6-bit bound.

A fix: reject a count of 1<<15 (or nbBits > 14) in readNCount, and enforce the weight-table tableLog in huff0. Clearing the reused table would also turn the panic into an error.

Proof of concept

Run the following repro:

package compression

import (
	"bytes"
	"slices"
	"testing"

	"github.com/klauspost/compress/zstd"
	"github.com/stretchr/testify/require"
)

func TestDecodeAll(t *testing.T) {
	// zstdFSEPanic is a crafted two-block…
Record
GHSA-fpmh-frq8-7rj8
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Weakness
CWE-190
Updated
2026-11-06
OSVRHSA-2026:881857.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update

Record
RHSA-2026:88185
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:881907.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update

Record
RHSA-2026:88190
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:909917.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update

Record
RHSA-2026:90991
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:913687.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91368
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:913767.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91376
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:913787.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91378
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:913857.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91385
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:913897.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91389
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:913937.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update

Record
RHSA-2026:91393
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:914017.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91401
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:914127.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91412
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:914447.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91444
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:914597.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91459
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:914607.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91460
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:914627.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91462
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:914717.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91471
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:914807.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91480
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:914837.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91483
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:916437.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91643
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:916457.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91645
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:916477.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91647
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:916657.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:91665
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:929037.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs bug fix and enhancement update

Record
RHSA-2026:92903
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:936017.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:93601
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:936087.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:93608
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:947947.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:94794
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:954067.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:95406
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:956177.5

Red Hat Security Advisory: Red Hat Hardened Images RPMs Security Update

Record
RHSA-2026:95617
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:985417.7

Red Hat Security Advisory: grafana security update

Record
RHSA-2026:98541
CVSS 3.1
7.7 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:L
Updated
2026-11-13
OSVRHSA-2026:986207.5

Red Hat Security Advisory: grafana-pcp security update

Record
RHSA-2026:98620
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:986397.7

Red Hat Security Advisory: grafana security update

Record
RHSA-2026:98639
CVSS 3.1
7.7 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
Updated
2026-11-13
OSVRHSA-2026:990207.5

Red Hat Security Advisory: grafana-pcp security update

Record
RHSA-2026:99020
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:990307.5

Red Hat Security Advisory: grafana security update

Record
RHSA-2026:99030
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:991347.7

Red Hat Security Advisory: grafana security update

Record
RHSA-2026:99134
CVSS 3.1
7.7 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:L
Updated
2026-11-13
OSVRHSA-2026:991517.7

Red Hat Security Advisory: grafana security update

Record
RHSA-2026:99151
CVSS 3.1
7.7 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:L
Updated
2026-11-13
OSVRHSA-2026:991527.5

Red Hat Security Advisory: grafana-pcp security update

Record
RHSA-2026:99152
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:991717.5

Red Hat Security Advisory: grafana-pcp security update

Record
RHSA-2026:99171
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRHSA-2026:991727.5

Red Hat Security Advisory: grafana-pcp security update

Record
RHSA-2026:99172
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRLSA-2026:985417.7

Important: grafana security update

Grafana is an open source, feature rich metrics dashboard and graph editor for Graphite, InfluxDB & OpenTSDB.

Security Fix(es):

  • grafana: Azure Monitor data source could leak its Azure access token (CVE-2026-88967)

  • github.com/klauspost/compress/zstd: klauspost/compress: Denial of Service via crafted zstd compressed input (CVE-2026-116591)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
RLSA-2026:98541
CVSS 3.1
7.7 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:L
Updated
2026-11-13
OSVRLSA-2026:986207.5

Important: grafana-pcp security update

The Grafana plugin for Performance Co-Pilot includes datasources for scalable time series from pmseries and Redis, live PCP metrics and bpftrace scripts from pmdabpftrace, as well as several dashboards.

Security Fix(es):

  • github.com/klauspost/compress/zstd: klauspost/compress: Denial of Service via crafted zstd compressed input (CVE-2026-116591)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
RLSA-2026:98620
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRLSA-2026:990207.5

Important: grafana-pcp security update

The Grafana plugin for Performance Co-Pilot includes datasources for scalable time series from pmseries and Redis, live PCP metrics and bpftrace scripts from pmdabpftrace, as well as several dashboards.

Security Fix(es):

  • github.com/klauspost/compress/zstd: klauspost/compress: Denial of Service via crafted zstd compressed input (CVE-2026-116591)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
RLSA-2026:99020
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVRLSA-2026:990307.5

Important: grafana security update

Grafana is an open source, feature rich metrics dashboard and graph editor for Graphite, InfluxDB & OpenTSDB.

Security Fix(es):

  • grafana: Grafana: Information disclosure vulnerability in Unified Alerting (CVE-2026-17183)

  • github.com/klauspost/compress/zstd: klauspost/compress: Denial of Service via crafted zstd compressed input (CVE-2026-116591)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
RLSA-2026:99030
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-13
OSVUBUNTU-CVE-2026-1165918.7

compress provides various compression algorithms. Prior to 1.20.2, the zstd DecodeAll and streaming decoder paths can panic when a crafted two-block frame reaches huff0.ReadTable with an FSE normalized count of 32768 that readNCount stores in int16 as -32768. The wrapped count allows buildDtable to retain stale fse.Scratch decode-table state from the prior block, and nextFast then derives an out-of-range state and indexes beyond the table instead of returning a decode error. Both blocks are required to preserve and then reuse the stale state, allowing untrusted zstd input to crash an application. This issue is fixed in version 1.20.2.

Record
UBUNTU-CVE-2026-116591
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Updated
2026-11-02
OSVALSA-2026:99020No score

Important: grafana-pcp security update

The Grafana plugin for Performance Co-Pilot includes datasources for scalable time series from pmseries and Redis, live PCP metrics and bpftrace scripts from pmdabpftrace, as well as several dashboards.

Security Fix(es):

  • github.com/klauspost/compress/zstd: klauspost/compress: Denial of Service via crafted zstd compressed input (CVE-2026-116591)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
ALSA-2026:99020
Updated
2026-11-13
OSVALSA-2026:99030No score

Important: grafana security update

Grafana is an open source, feature rich metrics dashboard and graph editor for Graphite, InfluxDB & OpenTSDB.

Security Fix(es):

  • grafana: Grafana: Information disclosure vulnerability in Unified Alerting (CVE-2026-17183)
  • github.com/klauspost/compress/zstd: klauspost/compress: Denial of Service via crafted zstd compressed input (CVE-2026-116591)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Record
ALSA-2026:99030
Updated
2026-11-13
OSVAZL-111664No score

CVE-2026-116591 affecting package azl-otel-collector 0.127.0-1

compress provides various compression algorithms. Prior to 1.20.2, the zstd DecodeAll and streaming decoder paths can panic when a crafted two-block frame reaches huff0.ReadTable with an FSE normalized count of 32768 that readNCount stores in int16 as -32768. The wrapped count allows buildDtable to retain stale fse.Scratch decode-table state from the prior block, and nextFast then derives an out-of-range state and indexes beyond the table instead of returning a decode error. Both blocks are required to preserve and then reuse the stale state, allowing untrusted zstd input to crash an application. This issue is fixed in version 1.20.2.

Record
AZL-111664
Updated
2026-11-05

History

History
RecordedChangedSources
affected, aliases, referencesOSV
affectedOSV
affected, aliases, referencesOSV
affected, aliases, referencesOSV
affected, aliases, referencesOSV
affected, aliases, referencesOSV
affected, aliases, referencesOSV
affected, aliases, referencesOSV
affected, aliases, referencesOSV
affected, aliases, referencesOSV
Show 8 moreShow less
History
RecordedChangedSources
affected, aliases, referencesOSV
affected
affected, aliasesOSV
affected, aliases, referencesOSV
affectedOSV
affected, aliases, referencesOSV
affected, aliases, facts, referencesOSV
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

References

Show 167 moreShow less
This page doesn't list everything

Left out here: the rest of 2 source descriptions. The JSON record has them. Left out on purpose, here and in the API, to keep responses small: 47 source records.

MoveEnter Open