Libpng 库ICC配置文件块单字节错误漏洞
人气:0
受影响系统:
libpng libpng 1.2.21
不受影响系统:
libpng libpng 1.2.22 rc1
描述:
--------------------------------------------------------------------------------
BUGTRAQ ID: 25957
libpng是多种应用程序使用的解析PNG图象格式的库。
libpng库在处理ICC配置文件块时存在缓冲区长度计算错误,远程攻击者可能利用此漏洞导致使用了此程序库的应用程序崩溃。
在pngset.c文件的687-693行png_set_iCCP()函数中:
688 new_iccp_name =3D (png_charp)png_malloc_warn(png_ptr,
png_strlen(name) 1);
...
694 png_strncpy(new_iccp_name, name, png_sizeof(new_iccp_name));
由于new_iccp_name为指针而不是数组,sizeof()会返回4或8,具体取决于指针大小。由于笔误或复制粘贴错误,这里的sizeof(...)实际应为png_strlen(name) 1。 如果用户受骗打开了恶意的PNG图形的话,就可能导致使用该函数库的应用程序崩溃。 <*来源:bnanson 链接:http://sourceforge.net/mailarchive/forum.php?thread_name=47067C84.7010205@playstation.sony.com&for http://secunia.com/advisories/27130/ *> 建议: -------------------------------------------------------------------------------- 厂商补丁: libpng ------ 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载: http://downloads.sourceforge.net/libpng/libpng-1.2.22rc1.tar.gz
688 new_iccp_name =3D (png_charp)png_malloc_warn(png_ptr,
png_strlen(name) 1);
...
694 png_strncpy(new_iccp_name, name, png_sizeof(new_iccp_name));
由于new_iccp_name为指针而不是数组,sizeof()会返回4或8,具体取决于指针大小。由于笔误或复制粘贴错误,这里的sizeof(...)实际应为png_strlen(name) 1。 如果用户受骗打开了恶意的PNG图形的话,就可能导致使用该函数库的应用程序崩溃。 <*来源:bnanson 链接:http://sourceforge.net/mailarchive/forum.php?thread_name=47067C84.7010205@playstation.sony.com&for http://secunia.com/advisories/27130/ *> 建议: -------------------------------------------------------------------------------- 厂商补丁: libpng ------ 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载: http://downloads.sourceforge.net/libpng/libpng-1.2.22rc1.tar.gz
加载全部内容