安全研究

安全漏洞
多家厂商GTK+ gdk-pixbuf XPM加载器堆溢出漏洞

发布日期:2005-11-15
更新日期:2005-11-15

受影响系统:
Debian Linux 3.1
Debian Linux 3.0
GTK GTK+ 2.4.0
S.u.S.E. Linux 9.2
S.u.S.E. Linux 9.1
S.u.S.E. Linux 9.0
S.u.S.E. Linux 8.2
RedHat Enterprise Linux WS 4
RedHat Enterprise Linux WS 3
RedHat Enterprise Linux WS 2.1 IA64
RedHat Enterprise Linux WS 2.1
RedHat Enterprise Linux ES 4
RedHat Enterprise Linux ES 3
RedHat Enterprise Linux ES 2.1 IA64
RedHat Enterprise Linux ES 2.1
RedHat Enterprise Linux AS 4
RedHat Enterprise Linux AS 3
RedHat Enterprise Linux AS 2.1 IA64
RedHat Enterprise Linux AS 2.1
RedHat Fedora Core 4
RedHat Fedora Core 3
描述:
BUGTRAQ  ID: 15435
CVE(CAN) ID: CVE-2005-3186

GTK+是用于创建图形用户界面的多平台工具包。

多家厂商的GTK+ gdk-pixbuf XPM图形渲染库实现中存在远程堆溢出漏洞,成功利用这个漏洞的攻击者可以在用户系统上执行任意代码。

函数库在处理XPM文件时存在整数溢出:

if (n_col <= 0 || n_col >= G_MAXINT / (cpp + 1)) {
                g_set_error (error,
                             GDK_PIXBUF_ERROR,
                             GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
                             _("XPM file has invalid number of colors"));
        return NULL;
    }
[...]
colors = (XPMColor *) g_try_malloc ((sizeof (XPMColor) * n_col));
[...]

n_col有效性检查可以防范第一个g_try_malloc中的整数溢出,但没有正确的检查第二个g_try_malloc,这可能导致分配不充分的堆缓冲区,然后在拷贝循环中将n_col用作上边界覆盖缓冲区。

<*来源:infamous41md (infamous41md@hotpop.com
  
  链接:https://www.redhat.com/support/errata/RHSA-2005-811.html
        http://lwn.net/Alerts/160133/?format=printable
        http://www.idefense.com/application/poi/display?id=339&type=vulnerabilities
*>

建议:
临时解决方法:

* 不要打开不可信任来源的媒体文件。

厂商补丁:

RedHat
------
RedHat已经为此发布了安全公告以及相应补丁:
RHSA-2005:811-01:Important: gtk2 security update
链接:https://www.redhat.com/support/errata/RHSA-2005-811.html

RHSA-2005:810-01:Important: gdk-pixbuf security update
链接:http://lwn.net/Alerts/160133/?format=printable

浏览次数:3655
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障