"GIMP(GNU Image Manipulation Program,GNU图像处理程序)是GIMP团队开发的一套跨平台的开源图像处理软件。该软件能够实现多种图像处理,包括照片润饰、图像合成和图像创建等。 GIMP所捆绑的多个图形加载器插件中存在整数溢出漏洞,允许攻击者导致GIMP崩溃或以用户权限执行任意指令。 以下行显示的是负责加载DICOM、PNM、PSD、PSP、Sun RAS、XBM和XWD文件格式的代码中漏洞的位置,所有文件都位于plug-ins/common目录中: dicom.c:391: value = g_new0 (guint8, element_length + 4); pnm.c:566: data = g_new (guchar, gimp_tile_height () * info->xres * np); pnm.c:628: data = g_new (guchar, gimp_tile_height () * info->xres * info->np); pnm.c:681: data = g_new (guchar, gimp_tile_height () * info->xres); psd.c:2969: PSDheader.rowlength = g_malloc (PSDheader.rows * psp.c:1225: pixel = g_malloc0 (height * width * bytespp); sunras.c:955: data = g_malloc (tile_height * width); sunras.c:1076: data = g_malloc (tile_height * width); sunras.c:1146: data = g_malloc (tile_height * width * 3); sunras.c:1231: data = g_malloc (tile_height * width * 3); xbm.c:879: data = (guchar *) g_malloc (width * tileheight); xwd.c:1193: data = g_malloc (tile_height * width); xwd.c:1195: scanline...
"GIMP(GNU Image Manipulation Program,GNU图像处理程序)是GIMP团队开发的一套跨平台的开源图像处理软件。该软件能够实现多种图像处理,包括照片润饰、图像合成和图像创建等。 GIMP所捆绑的多个图形加载器插件中存在整数溢出漏洞,允许攻击者导致GIMP崩溃或以用户权限执行任意指令。 以下行显示的是负责加载DICOM、PNM、PSD、PSP、Sun RAS、XBM和XWD文件格式的代码中漏洞的位置,所有文件都位于plug-ins/common目录中: dicom.c:391: value = g_new0 (guint8, element_length + 4); pnm.c:566: data = g_new (guchar, gimp_tile_height () * info->xres * np); pnm.c:628: data = g_new (guchar, gimp_tile_height () * info->xres * info->np); pnm.c:681: data = g_new (guchar, gimp_tile_height () * info->xres); psd.c:2969: PSDheader.rowlength = g_malloc (PSDheader.rows * psp.c:1225: pixel = g_malloc0 (height * width * bytespp); sunras.c:955: data = g_malloc (tile_height * width); sunras.c:1076: data = g_malloc (tile_height * width); sunras.c:1146: data = g_malloc (tile_height * width * 3); sunras.c:1231: data = g_malloc (tile_height * width * 3); xbm.c:879: data = (guchar *) g_malloc (width * tileheight); xwd.c:1193: data = g_malloc (tile_height * width); xwd.c:1195: scanline = g_new (guchar, xwdhdr->l_bytes_per_line + 8); xwd.c:1352: data = g_malloc (tile_height * width); xwd.c:1441: data = g_malloc (tile_height * width * 3); xwd.c:1601: data = g_malloc (tile_height * width * 3); xwd.c:1812: data = g_malloc (tile_height * width * bytes_per_pixel); 在上面的例子中,不可信任来源的整数值用作计算所要分配的长度,由于没有执行整数溢出检查,因此如果用户加载了恶意图形文件的话就可能触发堆溢出。"