libvips 8.19.0 contains a memory access vulnerability when processing little-endian PFM images. If the PFM text header length is not a multiple of four bytes, the mmap-based loader can expose pixel data at an address that is not properly aligned for float access. vips_avg_scan() subsequently dereferences the buffer through a float pointer, resulting in undefined behavior and process termination on strict-alignment architectures or UBSan-instrumented builds, leading to denial of service.
{
"binaries": [
{
"binary_name": "gir1.2-vips-8.0",
"binary_version": "8.2.2-1ubuntu0.1~esm1"
},
{
"binary_name": "libvips-tools",
"binary_version": "8.2.2-1ubuntu0.1~esm1"
},
{
"binary_name": "libvips42",
"binary_version": "8.2.2-1ubuntu0.1~esm1"
},
{
"binary_name": "python-vipscc",
"binary_version": "8.2.2-1ubuntu0.1~esm1"
}
]
}{
"binaries": [
{
"binary_name": "gir1.2-vips-8.0",
"binary_version": "8.4.5-1ubuntu0.1~esm1"
},
{
"binary_name": "libvips-tools",
"binary_version": "8.4.5-1ubuntu0.1~esm1"
},
{
"binary_name": "libvips42",
"binary_version": "8.4.5-1ubuntu0.1~esm1"
},
{
"binary_name": "python-vipscc",
"binary_version": "8.4.5-1ubuntu0.1~esm1"
}
]
}