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.
Published: 2026-09-09
Score: 8.7 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

zstd-jni libraries between 1.3.3-1 and 1.5.7-13 do not limit the size of sample length arrays passed to Zstd.trainFromBufferDirect, allowing an attacker to provide oversized per-sample lengths that read past the allocated buffer. This out‑of‑bounds memory access can lead to JVM termination, causing the application to crash and become unavailable. The vulnerability is a classic buffer overread (CWE‑125).

Affected Systems

The vulnerability affects the Java library zstd‑jni maintained by the Luben project, covering all released versions from 1.3.3‑1 through 1.5.7‑13. Any application that links against these versions and calls Zstd.trainFromBufferDirect is potentially impacted.

Risk and Exploitability

The CVSS score of 8.7 classifies this flaw as High. The EPSS metric is not available, so no quantified exploitation probability is indicated. It is not listed in the CISA Known Exploited Vulnerabilities catalog. Attackers would need to supply a crafted sample length array to the native code, which implies the vulnerability is exploitable from code executing within the same application context; it is not a remote code execution vulnerability as it merely causes a denial of service.

Generated by OpenCVE AI on September 9, 2026 at 16:42 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to zstd‑jni version 1.5.7‑14 or later, which implements bounds checking for the sample length array.
  • If upgrade is not immediately possible, audit your code to ensure that any data passed to Zstd.trainFromBufferDirect is validated against the sample buffer size and reject oversized or malformed length arrays.
  • Disable or replace the use of Zstd.trainFromBufferDirect in non‑essential code paths, or replace it with a safer, updated implementation to prevent exploitation.

Generated by OpenCVE AI on September 9, 2026 at 16:42 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 09 Sep 2026 14:45:00 +0000

Type Values Removed Values Added
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.
Title zstd-jni 1.3.3-1 through 1.5.7-13 Out-of-Bounds Read via Zstd.trainFromBufferDirect
Weaknesses CWE-125
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}

cvssV4_0

{'score': 8.7, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-09-09T14:32:44.099Z

Reserved: 2026-09-09T10:32:34.110Z

Link: CVE-2026-87824

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-09T15:17:27.753

Modified: 2026-09-09T15:17:27.753

Link: CVE-2026-87824

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-09T16:45:13Z

Weaknesses