jxl-oxide: `FrameBuffer::new` creates out-of-bounds slices on overflow
Affects jxl-oxideSource GCVE Database
CVSS 6.2 Medium : upgrade to 0.12.6 when convenient.
Data as of 4 Jul 2026, 22:34 UTC
- Patch
- Available – fixed in 0.12.6
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HWhat to do
Upgrade jxl-oxide to 0.12.6.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| crates.iojxl-oxide | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
If you cannot patch yet, avoid using affected versions on 32-bit platforms or in contexts where FrameBuffer::new might be called with unchecked multiplication inputs.
Description
### Summary `jxl-oxide` exposes a public safe API that can construct an undersized `FrameBuffer` due to unchecked `usize` multiplication, which immediately trigger panic while initializing the buffer in normal decoding path. Additionally, calling the safe grouped buffer accessors afterward can create invalid oversized slices from a much smaller allocation, causing undefined behavior; however normal decoding path never reaches UB, because these methods are never used within `jxl-oxide`. ### Impact On 32-bit platforms this can cause panic by accessing out-of-range indices, making it a DoS vulnerability.