CyberRota Analysis
AI-GeneratedThe jxl-oxide library, specifically versions prior to 0.6.2, is vulnerable to memory corruption due to improper handling of large JPEG XL images on 32-bit platforms, which can lead to out-of-bounds writes. This can result in denial of service or arbitrary code execution, making it critical for developers using this library in applications that process JPEG XL images to prioritize upgrading to the patched version. Organizations relying on jxl-oxide for image rendering should assess their exposure and implement the necessary updates to mitigate potential exploitation.
Public Exploit Signal
A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.
Note: these links are listed for security research and verification purposes only.
Original NVD Description
jxl-oxide is a pure Rust implementation of a JPEG XL decoder. Prior to jxl-grid 0.6.2, decoding a crafted JPEG XL image on a 32-bit platform can overflow length calculations in AlignedGrid::with_alloc_tracker and related grid and subgrid arithmetic. A 65536 x 65536 frame can pass the frame-area limit while overflowing the usize element count, causing modular, VarDCT, or filter rendering paths to allocate a backing buffer smaller than the logical grid. A tiny bitstream-controlled cropped frame combined with a huge canvas or requested region can also reach the vulnerable composition path in crates/jxl-render/src/blend.rs through ordinary render_frame(). Later mutable subgrid and raw-pointer operations can then perform attacker-controlled out-of-bounds writes, causing memory corruption, denial of service, or arbitrary code execution. This issue is fixed in jxl-grid version 0.6.2.