CVE-2023-35790
📋 TL;DR
This vulnerability in libjxl (JPEG XL library) allows an integer underflow during patch dictionary decoding, which can cause denial of service through infinite loops. It affects any application or system using vulnerable versions of libjxl to process JPEG XL images. Attackers can exploit this by providing malicious JPEG XL files.
💻 Affected Systems
- libjxl
- Applications using libjxl library
📦 What is this software?
Libjxl by Libjxl Project
⚠️ Risk & Real-World Impact
Worst Case
Complete system resource exhaustion leading to denial of service, potentially crashing applications or systems processing malicious JPEG XL files.
Likely Case
Application hangs or crashes when processing specially crafted JPEG XL images, causing service disruption.
If Mitigated
Minimal impact with proper input validation and sandboxing, though processing may still fail.
🎯 Exploit Status
Exploitation requires providing a malicious JPEG XL file to vulnerable systems. No authentication needed if file processing is accessible.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 0.8.2 and later
Vendor Advisory: https://github.com/libjxl/libjxl/releases/tag/v0.8.2
Restart Required: Yes
Instructions:
1. Update libjxl to version 0.8.2 or later. 2. Rebuild any applications using libjxl. 3. Restart affected services.
🔧 Temporary Workarounds
Disable JPEG XL processing
allTemporarily disable JPEG XL image processing in applications
Application-specific configuration to reject JPEG XL files
Input validation
allImplement strict validation of JPEG XL files before processing
Implement file signature validation and size limits
🧯 If You Can't Patch
- Implement strict file upload restrictions for JPEG XL files
- Run libjxl processing in isolated containers with resource limits
🔍 How to Verify
Check if Vulnerable:
Check libjxl version: ldd --version | grep libjxl or check application dependencies
Check Version:
pkg-config --modversion libjxl || ldd --version | grep libjxl
Verify Fix Applied:
Verify libjxl version is 0.8.2 or higher: pkg-config --modversion libjxl
📡 Detection & Monitoring
Log Indicators:
- Application hangs or crashes when processing JPEG XL files
- High CPU usage from image processing tasks
Network Indicators:
- Unusual JPEG XL file uploads to web applications
SIEM Query:
source="application_logs" AND ("libjxl" OR "JPEG XL") AND ("crash" OR "hang" OR "high cpu")