安全研究

安全漏洞
ClamAV cli_check_jpeg_exploit函数畸形JPEG文件拒绝服务漏洞

发布日期:2008-12-01
更新日期:2008-12-02

受影响系统:
ClamAV ClamAV 0.94
ClamAV ClamAV 0.93.3
不受影响系统:
ClamAV ClamAV 0.94.2
描述:
BUGTRAQ  ID: 32555
CVE(CAN) ID: CVE-2008-5314

Clam AntiVirus是Unix的GPL杀毒工具包,很多邮件网关产品都在使用。

ClamAV的jpeg解析代码中存在递归栈溢出漏洞。如果用户扫描到了恶意的jpeg文件或文件缩略图,就会在没有检查递归限制的情况下调用有漏洞的cli_check_jpeg_exploit函数,触发栈溢出。以下是clamav-0.94\libclamav\special.c文件中的有漏洞代码段:

int cli_check_jpeg_exploit(int fd) <-- fd to jpeg file
{
...
                        if ((retval=jpeg_check_photoshop(fd)) != 0) {
                                return retval;
                        }
...
}
...
static int jpeg_check_photoshop(int fd)
{
...
                retval = jpeg_check_photoshop_8bim(fd);
...
}
...
static int jpeg_check_photoshop_8bim(int fd)
{
...
        retval = cli_check_jpeg_exploit(fd); <-- calls cli_check_jpeg_exploit()
again without any recursive checks !
...
}

<*来源:Ilja van Sprundel (ilja@suresec.org
  
  链接:https://wwws.clamav.net/bugzilla/show_bug.cgi?format=multiple&id=1266
        http://svn.clamav.net/svn/clamav-devel/trunk/ChangeLog
        http://secunia.com/advisories/32926/
        http://security.gentoo.org/glsa/glsa-200812-21.xml
*>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

https://wwws.clamav.net/bugzilla/show_bug.cgi?format=multiple&id=1266

建议:
厂商补丁:

Gentoo
------
Gentoo已经为此发布了一个安全公告(GLSA-200812-21)以及相应补丁:
GLSA-200812-21:ClamAV: Multiple vulnerabilities
链接:http://security.gentoo.org/glsa/glsa-200812-21.xml

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

      # emerge --sync
      # emerge --ask --oneshot --verbose ">=3Dapp-antivirus/clamav-0.94.2="

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

http://www.clamav.net/

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