GTK+ (GIMP Toolkit +) is a toolkit for creating graphical user interfaces. The GdkPixbuf library provides facilities for image handling. It is available as a standalone library as well as shipped with GTK+ 2.
A vulnerability has been discovered in the BMP image preprocessor (CAN-2004-0753). Furthermore, Chris Evans found a possible integer overflow in the pixbuf_create_from_xpm() function, resulting in a heap overflow (CAN-2004-0782). He also found a potential stack-based buffer overflow in the xpm_extract_color() function (CAN-2004-0783). A possible integer overflow has also been found in the ICO decoder.
With a specially crafted BMP image an attacker could cause an affected application to enter an infinite loop when that image is being processed. Also, by making use of specially crafted XPM or ICO images an attacker could trigger the overflows, which potentially allows the execution of arbitrary code.
There is no known workaround at this time.
All GTK+ 2 users should upgrade to the latest version:
# emerge sync
# emerge -pv ">=x11-libs/gtk+-2.4.9-r1"
# emerge ">=x11-libs/gtk+-2.4.9-r1"
All GdkPixbuf users should upgrade to the latest version:
# emerge sync
# emerge -pv ">=media-libs/gdk-pixbuf-0.22.0-r3"
# emerge ">=media-libs/gdk-pixbuf-0.22.0-r3"