medium5.3
CVE-2026-106450
yawkat LZ4 Java: LZ4FrameInputStream reallocates block buffers for every frame, allowing CPU and GC amplification from small inputs
Impact
yawkat LZ4 Java provides LZ4 compression for Java. Prior to 1.11.4, net.jpountz.lz4.LZ4FrameInputStream readHeader() allocates two new 4 MiB block buffers whenever a maximum-block-size frame header is read, and the default concatenated-frame mode allows attacker-controlled streams containing many minimal empty frames to trigger roughly 8 MiB of allocation for every 11 input bytes. The stream produces no decompressed output while consuming CPU and garbage-collection time, so decompressed-size limits do not mitigate the issue; readSingleFrame mode is not affected. This issue is fixed in version 1.11.4.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| maven | at.yawk.lz4:lz4-java | <= 1.11.3 | 1.11.4 |
| maven | org.lz4:lz4-java | <= 1.8.1 | none recorded |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-gm45-99xc-r7wv
- https://github.com/yawkat/lz4-java/security/advisories/GHSA-gm45-99xc-r7wv
- https://nvd.nist.gov/vuln/detail/CVE-2026-106450
- https://github.com/yawkat/lz4-java/commit/2acc0ec1ead226145c62a817c18c8ed49233a283
- https://github.com/yawkat/lz4-java/releases/tag/v1.11.4