В плагине подгонки файлов в GIMP была обнаружена ошибка. При обработке файла изображения FITS плагин вычисляет размеры выделения памяти, используя 32-битные целые числа со знаком для ширины и высоты. Если созданный файл устанавливает для обоих значений большие значения, их произведение превышает 2^31 и переполняется, что приводит к недостаточному выделению буфера на основе кучи.
Эта проблема целочисленного переполнения приводит к переполнению буфера на основе кучи, когда cfitsio впоследствии записывает полную строку пикселей в буфер, вызывая повреждение памяти, что потенциально может привести к выполнению произвольного кода или отказу в обслуживании.
Показать оригинальное описание (EN)
A flaw was found in the file-fits plugin in GIMP. When processing a FITS image file, the plugin calculates memory allocation sizes using signed 32-bit integers for width and height. If a crafted file sets both values to large values, their product exceeds 2^31 and overflows, resulting in an undersized heap-based buffer allocation. This integer overflow issue results in a heap-based buffer overflow when cfitsio subsequently writes a full row of pixels in the buffer, causing memory corruption, potentially leading to arbitrary code execution or a denial of service.
Характеристики атаки
Последствия
Строка CVSS v3.1