CVE-2025-12183

N/A Unknown

📋 TL;DR

This vulnerability in lz4-java library allows remote attackers to cause denial of service and potentially read adjacent memory by sending specially crafted compressed input. It affects applications using lz4-java 1.8.0 or earlier for data decompression. Any Java application processing untrusted compressed data with this library is vulnerable.

💻 Affected Systems

Products:
  • lz4-java library
  • Any Java application using lz4-java for compression/decompression
Versions: 1.8.0 and earlier
Operating Systems: All platforms running Java
Default Config Vulnerable: ⚠️ Yes
Notes: Vulnerability triggers when processing untrusted compressed data. Applications must be actively using lz4 compression/decompression functionality.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution through memory corruption leading to complete system compromise, though this requires specific memory layout conditions.

🟠

Likely Case

Denial of service through application crashes and potential information disclosure via memory reads.

🟢

If Mitigated

Limited impact with proper input validation and sandboxing, though denial of service remains possible.

🌐 Internet-Facing: HIGH - Any service accepting compressed input from untrusted sources is directly vulnerable to exploitation.
🏢 Internal Only: MEDIUM - Internal services processing compressed data from controlled sources have reduced but still present risk.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires sending malicious compressed data to vulnerable endpoint. No authentication needed if service accepts external input.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 1.8.1

Vendor Advisory: https://github.com/yawkat/lz4-java/releases/tag/v1.8.1

Restart Required: Yes

Instructions:

1. Update lz4-java dependency to version 1.8.1 or later in your build configuration (Maven/Gradle). 2. Rebuild and redeploy your application. 3. Restart affected services.

🔧 Temporary Workarounds

Input validation and sanitization

all

Validate and sanitize all compressed input before processing with lz4-java library

Network filtering

all

Implement network-level filtering to block or limit compressed data from untrusted sources

🧯 If You Can't Patch

  • Implement strict input validation and size limits on compressed data
  • Isolate vulnerable services in network segments with limited access

🔍 How to Verify

Check if Vulnerable:

Check your project's dependency management file (pom.xml, build.gradle) for lz4-java version 1.8.0 or earlier

Check Version:

mvn dependency:tree | grep lz4-java OR gradle dependencies | grep lz4-java

Verify Fix Applied:

Verify lz4-java version 1.8.1 or later appears in your dependency tree after update

📡 Detection & Monitoring

Log Indicators:

  • Application crashes with memory access violations
  • OutOfMemoryError or segmentation faults in Java logs
  • Unusual decompression failures

Network Indicators:

  • Unusually large or malformed compressed data packets
  • Repeated connection attempts with compressed payloads

SIEM Query:

source="application.logs" AND ("OutOfMemoryError" OR "segmentation fault" OR "lz4" AND "error")

🔗 References

📤 Share & Export