安全研究

安全漏洞
file工具整数溢出及拒绝服务漏洞

发布日期:2007-05-24
更新日期:2007-06-07

受影响系统:
file file 4.20
不受影响系统:
file file 4.21
描述:
BUGTRAQ  ID: 24146
CVE(CAN) ID: CVE-2007-2026,CVE-2007-2799

File是用于查看文件类型信息的命令行工具。

File工具处理某些畸形文件时存在漏洞,攻击者可能利用这些漏洞通过诱使用户处理恶意文件导致file工具溢出或崩溃。

如果用户使用file在32位系统上查看了很大的文件,则可能触发整数溢出,导致执行任意指令:

+       len = ms->o.size - ms->o.left;
+       /* * 4 is for octal representation, + 1 is for NUL */
+       psize = len * 4 + 1;
+       assert(psize > len);

在32位系统上,如果len为1.35GB的话,len * 4 + 1 = 5.4GB == 1.4GB,因此assert可以通过,触发缓冲区溢出。

file的glib库没有正确地处理识别OS/2 REXX文件的正则表达式,所捆绑的magic文件包含以下两行:

100 regex/c =^\\s*call\\s+rxfuncadd.*sysloadfu OS/2 REXX batch file text
100 regex/c =^\\s*say\ ['"] OS/2 REXX batch file text

如果用户受骗使用file处理了包含有大量换行字符的特制文档的话,就可能会耗尽大量CPU资源。

<*来源:Mark Martinec (Mark.Martinec@ijs.si
        Rainer Link (rainer@openantivirus.org
  
  链接:http://secunia.com/advisories/25578/
        https://bugs.gentoo.org/show_bug.cgi?format=multiple&id=174217
        https://bugzilla.redhat.com/bugzilla/long_list.cgi?buglist=241022
        http://www.amavis.org/security/asa-2007-3.txt
        http://security.gentoo.org/glsa/glsa-200704-13.xml
        http://lwn.net/Alerts/236241/?format=printable
*>

建议:
厂商补丁:

RedHat
------
RedHat已经为此发布了一个安全公告(RHSA-2007:0391-01)以及相应补丁:
RHSA-2007:0391-01:Moderate: file security update
链接:http://lwn.net/Alerts/236241/?format=printable

Gentoo
------
Gentoo已经为此发布了一个安全公告(GLSA-200704-13)以及相应补丁:
GLSA-200704-13:File: Denial of Service
链接:http://security.gentoo.org/glsa/glsa-200704-13.xml

所有file用户都应升级到最新版本:

    # emerge --sync
    # emerge --ask --oneshot --verbose ">=sys-apps/file-4.20-r1"

file
----
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

ftp://ftp.astron.com/pub/file/

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