CVE-2025-66566: Lz4 java Yawkat LZ4 Java Has A Vulnerability
HIGHCVE-2025-66566 is a HIGH yawkat lz4 java has a vulnerability (CWE-201: Insertion of Sensitive Information Into Sent Data) affecting Lz4 java libraries in the Maven ecosystem. The issue involves yawkat lz4 java has a possible information leak in java safe decompressor. Remediation is available by upgrading affected packages to version 1.10.1.
CVE-2025-66566 at a Glance
How to Fix CVE-2025-66566
To remediate this vulnerability, upgrade all affected Lz4 java dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
<dependency>
<groupId>at.yawk.lz4</groupId>
<artifactId>lz4-java</artifactId>
<version>1.10.1</version>
</dependency>
<dependency>
<groupId>org.lz4</groupId>
<artifactId>lz4-java</artifactId>
<version>Latest secure release</version>
</dependency>
<dependency>
<groupId>org.lz4</groupId>
<artifactId>lz4-pure-java</artifactId>
<version>Latest secure release</version>
</dependency>
<dependency>
<groupId>net.jpountz.lz4</groupId>
<artifactId>lz4</artifactId>
<version>Latest secure release</version>
</dependency>
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
mvn dependency:tree -Dincludes=at.yawk.lz4
How to Check if You Are Affected
To determine whether your Java application is affected by CVE-2025-66566, inspect your build dependencies using the Maven Dependency Plugin:
mvn dependency:tree -Dincludes=at.yawk.lz4
Analyze the terminal output to locate any version of Lz4 java in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 1.10.1), your application is affected.
Note: The mvn dependency:tree -Dincludes=at.yawk.lz4 command inspects the resolved dependency graph declared in your project's POM files; it does not perform automated security scanning or inspect runtime dynamic classpaths. Always verify runtime container classpaths and shaded JARs.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-201: Insertion of Sensitive Information Into Sent Data, where the code transmits data to another actor, but a portion of the data includes sensitive information that should not be accessible to that actor. In Lz4 java, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
CVE-2025-66566 Affected Lz4 java Versions
4 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
at.yawk.lz4:lz4-java
|
Maven |
< 1.10.1
|
1.10.1
|
|
org.lz4:lz4-java
|
Maven |
≤ 1.8.1
|
|
|
org.lz4:lz4-pure-java
|
Maven |
≤ 1.8.1
|
|
|
net.jpountz.lz4:lz4
|
Maven |
≤ 1.8.1
|
|
References
Frequently Asked Questions
What is CVE-2025-66566?
Which Lz4 java versions are affected?
What version fixes CVE-2025-66566?
Is lz4-java affected?
Is lz4-pure-java affected?
What CWE is associated with CVE-2025-66566?
How can I check Maven dependencies for CVE-2025-66566?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-cmp6-m4wj-q63q",
"modified" : "2025-12-05T18:54:55Z",
"published" : "2025-12-05T18:54:55Z",
"aliases" : [ "CVE-2025-66566" ],
"summary" : "yawkat LZ4 Java has a possible information leak in Java safe decompressor",
"details" : "### Summary\n\nInsufficient clearing of the output buffer in Java-based decompressor implementations in lz4-java 1.10.0 and earlier allows remote attackers to read previous buffer contents via crafted compressed input. In applications where the output buffer is reused without being cleared, this may lead to disclosure of sensitive data.\n\nJNI-based implementations are *not* affected.\n\n### Details\n\nDuring the decompression process, the lz4 algorithm may have to repeat data that was previously decompressed in the same input frame. In the Java implementation, this is implemented by copy operations within the output buffer.\n\nWith a crafted input, an attacker may induce the Java implementation to copy from a region in the output buffer that does not contain decompressed data yet. If that region contains sensitive information because the output buffer was not cleared prior to decompression, that data will then be copied to the decompressed output.\n\n- `LZ4Factory.nativeInstance().safeDecompressor()` *is not* affected.\n- `LZ4Factory.nativeInstance().fastDecompressor()` *is* affected because it actually uses `safeInstance()` since 1.8.1. In 1.8.0 and earlier versions, this implementation is instead vulnerable to the more severe [CVE‐2025‐12183](https://sites.google.com/sonatype.com/vulnerabilities/cve-2025-12183), so downgrading is not a solution.\n- Both decompressors of `LZ4Factory.safeInstance()`, `LZ4Factory.unsafeInstance()` and `LZ4Factory.fastestJavaInstance()` are affected.\n- `LZ4Factory.fastestInstance()` uses the `nativeInstance` or `fastestJavaInstance` depending on platform. `LZ4Factory.fastestInstance().fastDecompressor()` is always affected, while `LZ4Factory.fastestInstance().safeDecompressor()` is affected only when JNI cannot be used (e.g. on unsupported platforms).\n\nIndependent of this vulnerability, it is recommended that users migrate from `fastDecompressor` to `safeDecompressor`, as the latter is more performant (despite the name).\n\nThe impact of this vulnerability depends on how user code interacts with the decompression API. Users that allocate a new destination buffer each time, or use only zeroed buffers, are not impacted. When the buffer is reused, however, the confidentiality impact can be severe. This vulnerability is marked as VC:H out of caution.\n\n### Mitigation\n\nlz4-java 1.10.1 fixes this issue without requiring changes in user code.\n\nIf you cannot upgrade to 1.10.1, you can mitigate this vulnerability by zeroing the output buffer before passing it to the decompression function.\n\n### Relation to CVE‐2025‐12183\n\nThis CVE is a different attack than [CVE‐2025‐12183](https://sites.google.com/sonatype.com/vulnerabilities/cve-2025-12183), affecting different implementations with different impact. This new vulnerability was discovered by [CodeIntelligence](https://www.code-intelligence.com/) during research that followed up on CVE‐2025‐12183. Users are recommended to upgrade to 1.10.1 to fix both vulnerabilities.",
"severity" : [ {
"type" : "CVSS_V4",
"score" : "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "Maven",
"name" : "at.yawk.lz4:lz4-java"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"fixed" : "1.10.1"
} ]
} ],
"database_specific" : {
"last_known_affected_version_range" : "<= 1.10.0"
}
}, {
"package" : {
"ecosystem" : "Maven",
"name" : "org.lz4:lz4-java"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"last_affected" : "1.8.1"
} ]
} ]
}, {
"package" : {
"ecosystem" : "Maven",
"name" : "org.lz4:lz4-pure-java"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"last_affected" : "1.8.1"
} ]
} ]
}, {
"package" : {
"ecosystem" : "Maven",
"name" : "net.jpountz.lz4:lz4"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0"
}, {
"last_affected" : "1.8.1"
} ]
} ]
} ],
"references" : [ {
"type" : "WEB",
"url" : "https://github.com/yawkat/lz4-java/security/advisories/GHSA-cmp6-m4wj-q63q"
}, {
"type" : "ADVISORY",
"url" : "https://nvd.nist.gov/vuln/detail/CVE-2025-66566"
}, {
"type" : "WEB",
"url" : "https://github.com/yawkat/lz4-java/commit/33d180cb70c4d93c80fb0dc3ab3002f457e93840"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/yawkat/lz4-java"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-201" ],
"severity" : "HIGH",
"github_reviewed" : true,
"github_reviewed_at" : "2025-12-05T18:54:55Z",
"nvd_published_at" : "2025-12-05T18:15:59Z"
}
}