Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-106451— yawkat LZ4 Java: Native library extraction to a shared temporary directory is vulnerable to file replacement by another local user

Quick assessment

Affected
yawkat lz4-java
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

yawkat LZ4 Java 为 Java 提供了 LZ4 压缩支持。从版本 1.7.0 到 1.11.4, 方法使用 创建一个独占的临时 文件,但在推导本地库路径时,它仅通过移除后缀来获取路径,随后使用 以非独占方式打开该可预测的路径。这允许同一共享临时目录中的其他本地用户在 加载库之前创建或替换该库文件,从而构成竞争条件漏洞。成功利用此漏洞依赖于共享目录的权限设置、主机系统的安全防护措施以及是否能在竞争中胜出。利用成功后,攻击者可以以受害者身份执行原生代码;而在加固后的系统中,可能导致库加载失败,进而回退到纯

CVSS 7.3 · High

Possible ATT&CK Techniques 1 AI

T1211 · Exploitation for Stealth

Affected Version Matrix 1

VendorProduct Version RangeStatus
yawkat lz4-java < 1.11.4 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-106451

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
yawkat LZ4 Java: Native library extraction to a shared temporary directory is vulnerable to file replacement by another local user
Source: CVE Program / CVE List V5
Vulnerability Description
yawkat LZ4 Java provides LZ4 compression for Java. From 1.7.0 until 1.11.4, net.jpountz.util.Native.load() uses File.createTempFile to create an exclusive temporary .lck file but derives the native-library path by removing the suffix, then FileOutputStream opens that predictable path without exclusive creation, allowing another local user with access to the same shared temporary directory to create or replace the library file before System.load() uses it. Successful exploitation depends on shared-directory permissions, host protections, and winning the race, and can execute native code as the victim; hardened systems may instead cause library loading to fail and fall back to Java implementations. Configurations using a system library, a private java.io.tmpdir, or Java-only implementations are not affected. This issue is fixed in version 1.11.4.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:4.0/AV:L/AC:H/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Source: CVE Program / CVE List V5
Vulnerability Type
检查时间与使用时间(TOCTOU)的竞争条件
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
yawkat lz4-java < 1.11.4 -

II. Public POCs for CVE-2026-106451

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-106451

请登录查看更多情报信息。

Patches & Fixes for CVE-2026-106451 (1)

Vendor Advisories for CVE-2026-106451 (1)

Vendor Pages for CVE-2026-106451 (1)

Same Patch Batch · yawkat · 2026-10-06 · 5 CVEs total

CVE-2026-106452 5.3 MEDIUM yawkat LZ4 Java: LZ4BlockInputStream allocates an unvalidated compressed length from the s
CVE-2026-106450 5.3 MEDIUM yawkat LZ4 Java: LZ4FrameInputStream reallocates block buffers for every frame, allowing C
CVE-2026-106453 5.3 MEDIUM yawkat LZ4 Java: LZ4DecompressorWithLength allocates the unvalidated size from the 4-byte
CVE-2026-106449 3.7 LOW yawkat LZ4 Java: LZ4BlockInputStream with stopOnEmptyBlock=false recurses once per empty b

IV. Related Vulnerabilities

V. Comments for CVE-2026-106451

No comments yet


Leave a comment