GNOME gdk-pixbuf (aka GdkPixbuf) before 2.42.2 allows a denial of service (infinite loop) in lzw.c in the function writeindexes. if c->selfcode equals 10, self->codetable[10].extends will assign the value 11 to c. The next execution in the loop will assign self->codetable[11].extends to c, which will give the value of 10. This will make the loop run infinitely. This bug can, for example, be triggered by calling this function with a GIF image with LZW compression that is crafted in a special way.
{
"binaries": [
{
"binary_name": "gir1.2-gdkpixbuf-2.0",
"binary_version": "2.40.0+dfsg-3ubuntu0.1"
},
{
"binary_name": "libgdk-pixbuf2.0-0",
"binary_version": "2.40.0+dfsg-3ubuntu0.1"
},
{
"binary_name": "libgdk-pixbuf2.0-bin",
"binary_version": "2.40.0+dfsg-3ubuntu0.1"
},
{
"binary_name": "libgdk-pixbuf2.0-common",
"binary_version": "2.40.0+dfsg-3ubuntu0.1"
},
{
"binary_name": "libgdk-pixbuf2.0-dev",
"binary_version": "2.40.0+dfsg-3ubuntu0.1"
}
],
"availability": "No subscription required"
}