CVE:CVE-2007-5267
CNNVD:CNNVD-200710-124
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图形的话，就可能导致使用该函数库的应用程序崩溃。
solution:Upgrade libpng libpng to a higher version than 1.2.21,and avoid the version (,1.2.21]