---
title: "CVE-2026-87824: zstd-jni - Denial of Service"
description: "zstd-jni before 1.5.7-14 contains an out-of-bounds read caused by improper validation of samples buffer capacity in Zstd.trainFromBufferDirect, letting attackers cause JVM termination by supplying crafted sample lengths, exploit requires crafted input."
url: https://panop.io/threat-heartbeat/CVE-2026-87824/
---

# CVE-2026-87824 zstd-jni - Denial of Service

zstd-jni before 1.5.7-14 contains an out-of-bounds read caused by improper validation of samples buffer capacity in Zstd.trainFromBufferDirect, letting attackers cause JVM termination by supplying crafted sample lengths, exploit requires crafted input.

CVSS base score 7.5 /10

High

CISA KEV

Not listed

Public exploit

None known

Authentication

Not required

EPSS

0.39% chance of exploitation in 30 days

[View the NVD record ↗](https://nvd.nist.gov/vuln/detail/CVE-2026-87824)

## Details

Type

Denial of Service

Impact

Denial Of Service

CVSS vector

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Published

9 September 2026

Updated

15 October 2026

Weakness

[CWE-125](https://cwe.mitre.org/data/definitions/125.html)

## Vendor fix

Update to version 1.5.7-14 or later.

Patching closes this CVE. It does not tell you which of your systems run the affected version, or what else is exposed alongside them.

## References

- [https://nvd.nist.gov/vuln/detail/CVE-2026-87824](https://nvd.nist.gov/vuln/detail/CVE-2026-87824)
- [https://github.com/luben/zstd-jni/releases/tag/v1.5.7-14](https://github.com/luben/zstd-jni/releases/tag/v1.5.7-14)
- [https://github.com/luben/zstd-jni/security/advisories/GHSA-257p-3h6w-pg7h](https://github.com/luben/zstd-jni/security/advisories/GHSA-257p-3h6w-pg7h)
- [https://www.vulncheck.com/advisories/zstd-jni-1.3.3-1-through-1.5.7-13-out-of-bounds-read-via-zstd-trainfrombufferdirect](https://www.vulncheck.com/advisories/zstd-jni-1.3.3-1-through-1.5.7-13-out-of-bounds-read-via-zstd-trainfrombufferdirect)
- [https://github.com/luben/zstd-jni](https://github.com/luben/zstd-jni)
- [https://github.com/luben/zstd-jni/blob/v1.5.7-13/src/main/java/com/github/luben/zstd/Zstd.java](https://github.com/luben/zstd-jni/blob/v1.5.7-13/src/main/java/com/github/luben/zstd/Zstd.java)
- [https://github.com/luben/zstd-jni/blob/v1.5.7-13/src/main/native/jni\_zdict.c](https://github.com/luben/zstd-jni/blob/v1.5.7-13/src/main/native/jni_zdict.c)
- [https://github.com/luben/zstd-jni/commit/53d3c6342883f7d6717b2477a7f9c1b4a4a56980](https://github.com/luben/zstd-jni/commit/53d3c6342883f7d6717b2477a7f9c1b4a4a56980)
- [https://github.com/luben/zstd-jni/commit/bba6cfca2c0897f1fa004f4193247479f10da853](https://github.com/luben/zstd-jni/commit/bba6cfca2c0897f1fa004f4193247479f10da853)

[← All CVEs](https://panop.io/threat-heartbeat/)

## What this record can't tell you

- Whether you run the affected software, and where
- Whether an attacker can actually reach and exploit it
- The misconfigurations that never get a CVE number
- What it would cost the business, ranked into what to fix first

Panop answers these inside your environment, for this CVE and every other finding.

[Book a demo](https://panop.io/demo)
