Related Vulnerabilities: CVE-2021-22564  

In libxjl before version 0.6.1, for certain valid JPEG XL images with a size slightly larger than an integer number of groups (256x256 pixels) when processing the groups out of order, the decoder can perform an out of bounds copy of image pixels from an image buffer in the heap to another. This copy can occur when processing the right or bottom edges of the image, but only when groups are processed in certain order. Groups can be processed out of order in multi-threaded decoding environments with heavy thread load but also with images that contain the groups in an arbitrary order in the file.

Severity Medium

Remote Yes

Type Arbitrary code execution

Description

In libxjl before version 0.6.1, for certain valid JPEG XL images with a size slightly larger than an integer number of groups (256x256 pixels) when processing the groups out of order, the decoder can perform an out of bounds copy of image pixels from an image buffer in the heap to another. This copy can occur when processing the right or bottom edges of the image, but only when groups are processed in certain order. Groups can be processed out of order in multi-threaded decoding environments with heavy thread load but also with images that contain the groups in an arbitrary order in the file.

AVG-2508 libjxl 0.6-1 0.6.1-1 Medium Fixed

https://github.com/libjxl/libjxl/issues/708
https://github.com/libjxl/libjxl/pull/775
https://github.com/libjxl/libjxl/commit/9d4a2de2f7a853f072c2a1bd6719e815a09075e9