Для некоторых допустимых изображений JPEG XL, размер которых немного больше, чем целое число групп (256x256 пикселей), при обработке групп …
Для некоторых допустимых изображений JPEG XL, размер которых немного больше, чем целое число групп (256x256 пикселей), при обработке групп не по порядку декодер может выполнить выход за границы при копировании пикселей изображения из одного буфера изображения в куче в другой. Это копирование может произойти при обработке правого или нижнего краев изображения, но только когда группы обрабатываются в определенном порядке. Группы могут обрабатываться не по порядку в многопоточных средах декодирования с большой нагрузкой на потоки, а также с изображениями, которые содержат группы в произвольном порядке в файле. Рекомендуется обновиться после 0.6.0 или исправить с помощью https://github.com/libjxl/libjxl/pull/775.
Переполнение кучи — это условие переполнения буфера, при котором перезаписываемый буфер выделен в области кучи памяти, что, как правило, означает выделение буфера с помощью функции наподобие malloc().
https://cwe.mitre.org/data/definitions/122.html →Открыть в коллекции CWE →Данная атака приводит к выходу целочисленной переменной за допустимый диапазон значений. Целочисленная переменная нередко используется в качестве смещения, например при выделении памяти и т. п. Злоумышленник, как правило, контролирует значение такой переменной и стремится вывести его за допустимые границы. Например, если рассматриваемое целое число инкрементируется сверх максимально допустимого значения, оно может обернуться в очень маленькое или отрицательное число, что повлечёт некорректное поведение. В худшем случае злоумышленник может выполнить произвольный код.
https://capec.mitre.org/data/definitions/92.html →Открыть в коллекции CAPEC →| Продукт | Вендор | Статус |
|---|---|---|
| jpeg-xl | Отслеживается | |
| libjxl | * | Отслеживается |