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.
{
"binaries": [
{
"binary_name": "gimp",
"binary_version": "3.2.2-1ubuntu0.26.04.1"
},
{
"binary_name": "gimp-data",
"binary_version": "3.2.2-1ubuntu0.26.04.1"
},
{
"binary_name": "gir1.2-gimp-3.0",
"binary_version": "3.2.2-1ubuntu0.26.04.1"
},
{
"binary_name": "libgimp-3.0-0",
"binary_version": "3.2.2-1ubuntu0.26.04.1"
},
{
"binary_name": "libgimp-3.0-bin",
"binary_version": "3.2.2-1ubuntu0.26.04.1"
}
]
}