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.
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.
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:- Version 1.3.8-4 and below 1.5.7-14 is affected.