zstd-jni <1.5.7-14 UAF via dict lock misuse causing crash
CVE-2026-87825 Published on September 9, 2026

zstd-jni 1.3.8-4 through 1.5.7-13 Use-After-Free of Compression and Decompression Dictionaries
zstd-jni before 1.5.7-14 contains a use-after-free vulnerability where streams and contexts hold a dictionary's shared lock only during the load call, allowing the dictionary to be closed while still referenced. Attackers can close a dictionary after associating it with a stream or context, causing subsequent read or write operations to access freed native memory, resulting in silent data corruption or JVM crashes.

Vendor Advisory NVD

Vulnerability Analysis

CVE-2026-87825 can be exploited with local system access, and does not require authorization privileges or user interaction. This vulnerability is considered to have a low attack complexity. Public availability of a proof of concept (POC) exploit exists for CVE-2026-87825. The potential impact of an exploit of this vulnerability is considered to have no impact on confidentiality and integrity and availability.

Attack Vector:
LOCAL
Attack Complexity:
LOW
Privileges Required:
NONE
User Interaction:
NONE

Weakness Type

What is a Dangling pointer Vulnerability?

Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code.

CVE-2026-87825 has been classified to as a Dangling pointer vulnerability or weakness.


Products Associated with CVE-2026-87825

Want to know whenever a new CVE is published for Red Hat Kafka? stack.watch will email you.

 

Affected Versions

luben zstd-jni: