Vulnerability · Published Sep 9, 2026 · Assigned by VulnCheck
CVE-2026-87824zstd-jni 1.3.3-1 through 1.5.7-13 Out-of-Bounds Read via Zstd.trainFromBufferDirect
High 7.5
In plain English
A high-severity out-of-bounds read in zstd-jni from luben. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.4% (higher than 33% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
zstd-jni before 1.5.7-14 fails to validate the samples buffer capacity in Zstd.trainFromBufferDirect, allowing attackers to read past buffer boundaries by supplying oversized per-sample lengths. Attackers can trigger out-of-bounds memory access by providing crafted sample length arrays that cause the native implementation to walk past the buffer allocation, resulting in JVM termination.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | zstd-jni-java | no fix listed | DEBIAN-CVE-2026-87824 |
| Debian:13 | zstd-jni-java | no fix listed | DEBIAN-CVE-2026-87824 |
| Debian:14 | zstd-jni-java | 1.5.7-23+ds-1 | DEBIAN-CVE-2026-87824 |
| Ubuntu:24.04:LTS | zstd-jni-java | no fix listed | UBUNTU-CVE-2026-87824 |
| Ubuntu:26.04:LTS | zstd-jni-java | no fix listed | UBUNTU-CVE-2026-87824 |
| Ubuntu:26.10 | zstd-jni-java | no fix listed | UBUNTU-CVE-2026-87824 |
Affected products (as reported)
Weakness: CWE-125 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
References
- GitHub Security Advisory (GHSA-257p-3h6w-pg7h) vendor-advisory
- Fix commit: validate the samples buffer capacity against the declared sample sizes patch
- Samples buffer capacity never read at v1.5.7-13 technical-description
- Java wrapper that only checks the sample count at v1.5.7-13 technical-description
- zstd-jni v1.5.7-14 Release Notes release-notes
- Commit that introduced the direct-buffer dictionary trainer without a samples capacity check (first released in 1.3.3-1) technical-description, patch
- https://github.com/luben/zstd-jni product
- VulnCheck Advisory: zstd-jni 1.3.3-1 through 1.5.7-13 Out-of-Bounds Read via Zstd.trainFromBufferDirect third-party-advisory