A flaw was found in GIMP’s X cursor (XMC) thumbnail loader. When GIMP generates a thumbnail for a crafted XMC file, it allocates a pixel buffer using a width * height size computed in 32-bit signed arithmetic. If that product overflows, the allocation is smaller than the true image extent. A subsequent GEGL buffer read uses the unwrapped dimensions and performs an out-of-bounds read on the heap, after integer overflow in the size calculation. This can crash GIMP or corrupt process memory.
{
"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"
}
]
}{
"binaries": [
{
"binary_name": "gimp",
"binary_version": "3.2.6-1"
},
{
"binary_name": "gimp-data",
"binary_version": "3.2.6-1"
},
{
"binary_name": "gir1.2-gimp-3.0",
"binary_version": "3.2.6-1"
},
{
"binary_name": "libgimp-3.0-0",
"binary_version": "3.2.6-1"
},
{
"binary_name": "libgimp-3.0-bin",
"binary_version": "3.2.6-1"
}
]
}