В плагине file-sgi в GIMP обнаружена ошибка. При обработке изображения SGI, сжатого с помощью RLE, плагин выделяет память для таблицы строк. Размеры заголовка изображения (ysize и zsize) читаются как 16-битные целые числа без знака.
Если созданный файл устанавливает для обоих размеров максимальное значение (65535), умножение ysize * zsize выходит за пределы стандартной 32-битной границы int перед передачей в calloc. Эта проблема целочисленного переполнения приводит к неопределенному поведению, прерыванию работы плагина и отказу в обслуживании.
Показать оригинальное описание (EN)
A flaw was found in the file-sgi plugin in GIMP. When processing an RLE-compressed SGI image, the plugin allocates memory for a row table. The image header dimensions (ysize and zsize) are read as 16-bit unsigned integers. If a crafted file sets both dimensions to their maximum value (65535), the multiplication ysize * zsize overflows the standard 32-bit int boundary before being passed to calloc. This integer overflow issue results in undefined behavior, aborting the plugin and causing a denial of service.
Характеристики атаки
Последствия
Строка CVSS v3.1