A flaw was found in the file-pcx plugin in GIMP, affecting 32-bit builds only. When processing a PCX image file, the plugin calculates memory allocation sizes based on the image dimensions and the number of color planes. If a crafted file sets the number of planes to 4 alongside sufficiently large dimensions, the calculation exceeds the 32-bit integer limit and overflows, resulting in an undersized heap-based buffer allocation. This integer overflow issue results in a heap-based buffer overflow when the plugin subsequently writes image data into the undersized buffer, causing memory corruption, potentially leading to arbitrary code execution or 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"
}
]
}