[ CVE-2026-106452 · Published 6 Oct 2026 ]
yawkat LZ4 Java: LZ4BlockInputStream allocates an unvalidated compressed length from the stream header
CVSS 5.3
EPSS <1%Fix available
[ Description ]Official description
yawkat LZ4 Java provides LZ4 compression for Java. Prior to 1.11.2, net.jpountz.lz4.LZ4BlockInputStream refill() validates that the compressedLen field in a legacy LZ4Block header is nonnegative but allocates a compressed-input buffer of that attacker-controlled size before reading payload data, allowing a header-only stream to request a near-2 GiB allocation and exhaust the JVM heap. Canonical writers emit raw blocks when compression is not smaller than the original block, but vulnerable readers accept non-canonical oversized compressed blocks. This issue is fixed in version 1.11.2.
[ Fixes ]Fixes and patches
- at.yawk.lz4:lz4-java 1.11.2Fixed version · GitHub Advisories · maven package at.yawk.lz4:lz4-java: upgrade to 1.11.2 or later (affected <= 1.11.1)
[ Packages ]Affected open-source packages
- at.yawk.lz4:lz4-java mavenAffected <= 1.11.1 · fixed in 1.11.2 · GHSA-4v53-57pg-c464
- org.lz4:lz4-java mavenAffected <= 1.8.1 · GHSA-4v53-57pg-c464