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-0-dbgsym", "binary_version": "2.40.0+dfsg-3ubuntu0.1" }, { "binary_name": "libgdk-pixbuf2.0-0-udeb", "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-bin-dbgsym", "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" }, { "binary_name": "libgdk-pixbuf2.0-doc", "binary_version": "2.40.0+dfsg-3ubuntu0.1" } ], "ubuntu_priority": "medium", "availability": "No subscription required" }