安全研究
安全漏洞
ClamAV libclamav库PeSpin堆溢出漏洞
发布日期:2008-04-14
更新日期:2008-04-16
受影响系统:
ClamAV ClamAV 0.92.1不受影响系统:
ClamAV ClamAV 0.93描述:
BUGTRAQ ID: 28784
CVE(CAN) ID: CVE-2008-0314
Clam AntiVirus是Unix的GPL杀毒工具包,很多邮件网关产品都在使用。
ClamAV中负责解压用PeSpin加密所包装的PE库的代码存在堆溢出漏洞,攻击者可能通过诱使用户处理畸形文件控制用户系统。
以下为libclamav/spin.c中的有漏洞代码段:
417 key32 = cli_readint32(ep+0x2fee);
...
427 cli_dbgmsg("spin: Resources (sect%d) appear to be compressed\n\tuncompressed
offset %x, len %x\n\tcompressed offset %x, len %x\n", j, sections[j].rva, key32 -
sections[j].rva, key32, sections[j].vsz - (key32 - sections[j].rva));
428
429 if ( (curr=(char *)cli_malloc(sections[j].vsz)) != NULL ) {
430 memcpy(curr, src + sections[j].raw, key32 - sections[j].rva); /* Uncompressed part */
431 memset(curr + key32 - sections[j].rva, 0, sections[j].vsz - (key32 -
sections[j].rva)); /* bzero */
在417行从文件中读取了32位的值到key32变量中,然后使用429行的sections[j].vsz值分配堆缓冲区,在430行memcpy调用将数据拷贝到了新分配的缓冲区。由于没有对key32、sections[j].raw和sections[j].rva值执行验证便在内存拷贝操作中使用,因此可能导致堆溢出。
<*来源:Damian Put (pucik@cc-team.org)
链接:http://svn.clamav.net/svn/clamav-devel/trunk/ChangeLog
http://labs.idefense.com/intelligence/vulnerabilities/display.php?id=686
http://www.debian.org/security/2008/dsa-1549
*>
建议:
临时解决方法:
* 禁止扫描PE文件:
如果在使用clamscan的话,以--no-pe选项运行clamscan。
如果在使用clamdscan的话,在clamd.conf文件中将ScanPE选项设置为no。
厂商补丁:
Debian
------
Debian已经为此发布了一个安全公告(DSA-1549-1)以及相应补丁:
DSA-1549-1:New clamav packages fix several vulnerabilities
链接:http://www.debian.org/security/2008/dsa-1549
补丁下载:
Source archives:
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg.orig.tar.gz
Size/MD5 checksum: 11610428 6dc18602b0aa653924d47316f9411e49
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11.diff.gz
Size/MD5 checksum: 208888 c0cad053803837532517aee6ecaa4c09
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11.dsc
Size/MD5 checksum: 900 03248d62d3abe0eeb38db9120e0930c5
Architecture independent packages:
http://security.debian.org/pool/updates/main/c/clamav/clamav-testfiles_0.90.1dfsg-3etch11_all.deb
Size/MD5 checksum: 158166 d4a39b4d4759fb639e937f33f109d7a9
http://security.debian.org/pool/updates/main/c/clamav/clamav-base_0.90.1dfsg-3etch11_all.deb
Size/MD5 checksum: 201930 d23f3dafd754eec49e1e4207b47903c0
http://security.debian.org/pool/updates/main/c/clamav/clamav-docs_0.90.1dfsg-3etch11_all.deb
Size/MD5 checksum: 1005212 91688a455e07d61916bf4598176488e9
alpha architecture (DEC Alpha)
http://security.debian.org/pool/updates/main/c/clamav/libclamav2_0.90.1dfsg-3etch11_alpha.deb
Size/MD5 checksum: 372564 3b909af9a8cd3f1e77d4d5d6fbd947e3
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11_alpha.deb
Size/MD5 checksum: 861998 0484d2bbe45b71d63e76b86459b3b17b
http://security.debian.org/pool/updates/main/c/clamav/clamav-freshclam_0.90.1dfsg-3etch11_alpha.deb
Size/MD5 checksum: 9304930 3f34b1990a2899bb55cfa43037d8868a
http://security.debian.org/pool/updates/main/c/clamav/clamav-daemon_0.90.1dfsg-3etch11_alpha.deb
Size/MD5 checksum: 182414 4ac46cfda39f5217b4ccb7c95f5b3524
http://security.debian.org/pool/updates/main/c/clamav/clamav-dbg_0.90.1dfsg-3etch11_alpha.deb
Size/MD5 checksum: 597274 74dd12051e484483bd9630b807a0f5f1
http://security.debian.org/pool/updates/main/c/clamav/libclamav-dev_0.90.1dfsg-3etch11_alpha.deb
Size/MD5 checksum: 464958 cbaa566557a92c3ad85f36f88d4de47d
http://security.debian.org/pool/updates/main/c/clamav/clamav-milter_0.90.1dfsg-3etch11_alpha.deb
Size/MD5 checksum: 180606 16b631abb2dfd7dc72fb97fb86a9d422
amd64 architecture (AMD x86_64 (AMD64))
http://security.debian.org/pool/updates/main/c/clamav/libclamav-dev_0.90.1dfsg-3etch11_amd64.deb
Size/MD5 checksum: 354764 e6eddaf706aa6ca07d8a72cc6989912c
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11_amd64.deb
Size/MD5 checksum: 856390 40166ed480016a45e9be3f0da3395777
http://security.debian.org/pool/updates/main/c/clamav/clamav-freshclam_0.90.1dfsg-3etch11_amd64.deb
Size/MD5 checksum: 9301588 35519473079304e22519e792d82e1289
http://security.debian.org/pool/updates/main/c/clamav/clamav-dbg_0.90.1dfsg-3etch11_amd64.deb
Size/MD5 checksum: 593128 c7c4b03fbfa9175fef55891ab3aa5c19
http://security.debian.org/pool/updates/main/c/clamav/libclamav2_0.90.1dfsg-3etch11_amd64.deb
Size/MD5 checksum: 341302 8b3cae13d252851cfc84a7b6f66204f7
http://security.debian.org/pool/updates/main/c/clamav/clamav-daemon_0.90.1dfsg-3etch11_amd64.deb
Size/MD5 checksum: 177876 e642766375c554919ed456d5e92447cc
http://security.debian.org/pool/updates/main/c/clamav/clamav-milter_0.90.1dfsg-3etch11_amd64.deb
Size/MD5 checksum: 177298 309805507c29b129ec47112e6949b6ab
arm architecture (ARM)
http://security.debian.org/pool/updates/main/c/clamav/libclamav2_0.90.1dfsg-3etch11_arm.deb
Size/MD5 checksum: 335328 b00c561408e748bb2e413f7581089402
http://security.debian.org/pool/updates/main/c/clamav/clamav-dbg_0.90.1dfsg-3etch11_arm.deb
Size/MD5 checksum: 553846 73fdb847d99906445790579d5cc41044
http://security.debian.org/pool/updates/main/c/clamav/clamav-milter_0.90.1dfsg-3etch11_arm.deb
Size/MD5 checksum: 175624 38f7024d6a7d92b3543b7107565aa7b7
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11_arm.deb
Size/MD5 checksum: 853226 47eefd83625a89e7c9dc61c67a6a6968
http://security.debian.org/pool/updates/main/c/clamav/clamav-freshclam_0.90.1dfsg-3etch11_arm.deb
Size/MD5 checksum: 9299460 7437e513d332c575e2312d96ebdb678d
http://security.debian.org/pool/updates/main/c/clamav/libclamav-dev_0.90.1dfsg-3etch11_arm.deb
Size/MD5 checksum: 336044 c45eaaaaf8b9499aeea223c7e7d8b368
http://security.debian.org/pool/updates/main/c/clamav/clamav-daemon_0.90.1dfsg-3etch11_arm.deb
Size/MD5 checksum: 171494 5bdb879ee6e72a97f1487ddd348c97c1
hppa architecture (HP PA RISC)
http://security.debian.org/pool/updates/main/c/clamav/clamav-dbg_0.90.1dfsg-3etch11_hppa.deb
Size/MD5 checksum: 571630 79042504632c5948ccfb18c80d43f50e
http://security.debian.org/pool/updates/main/c/clamav/clamav-milter_0.90.1dfsg-3etch11_hppa.deb
Size/MD5 checksum: 177830 915f8b5e7fed1dbbda519beccd10bf64
http://security.debian.org/pool/updates/main/c/clamav/clamav-daemon_0.90.1dfsg-3etch11_hppa.deb
Size/MD5 checksum: 178106 a9532ce82647be98e6024a34c6df0803
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11_hppa.deb
Size/MD5 checksum: 857312 295885a4f103f01a2ac0e09f907f5b6f
http://security.debian.org/pool/updates/main/c/clamav/clamav-freshclam_0.90.1dfsg-3etch11_hppa.deb
Size/MD5 checksum: 9303710 98814e259935d934e8a7dce7566b150e
http://security.debian.org/pool/updates/main/c/clamav/libclamav2_0.90.1dfsg-3etch11_hppa.deb
Size/MD5 checksum: 372588 12329f5e345b5b75582d226042a43d1e
http://security.debian.org/pool/updates/main/c/clamav/libclamav-dev_0.90.1dfsg-3etch11_hppa.deb
Size/MD5 checksum: 396038 4fd3b922c071a39d3db85d473f16af81
i386 architecture (Intel ia32)
http://security.debian.org/pool/updates/main/c/clamav/libclamav-dev_0.90.1dfsg-3etch11_i386.deb
Size/MD5 checksum: 337948 efa50463560eb0049b0f441b5418b495
http://security.debian.org/pool/updates/main/c/clamav/clamav-milter_0.90.1dfsg-3etch11_i386.deb
Size/MD5 checksum: 175398 792488eca0e549c713804cb576572d50
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11_i386.deb
Size/MD5 checksum: 856050 7f04056d4f2bd8e4f168e227889c7670
http://security.debian.org/pool/updates/main/c/clamav/clamav-dbg_0.90.1dfsg-3etch11_i386.deb
Size/MD5 checksum: 560016 ddd1102826c16551ee7fd17817e2ad31
http://security.debian.org/pool/updates/main/c/clamav/libclamav2_0.90.1dfsg-3etch11_i386.deb
Size/MD5 checksum: 339816 246af997de6f3e609ed36630ef8b6d2b
http://security.debian.org/pool/updates/main/c/clamav/clamav-daemon_0.90.1dfsg-3etch11_i386.deb
Size/MD5 checksum: 172720 573918fb827472d8c748207db0f221fb
http://security.debian.org/pool/updates/main/c/clamav/clamav-freshclam_0.90.1dfsg-3etch11_i386.deb
Size/MD5 checksum: 9301010 dbacd8e9cd5cc573ccfbb86f31ace8ff
ia64 architecture (Intel ia64)
http://security.debian.org/pool/updates/main/c/clamav/clamav-freshclam_0.90.1dfsg-3etch11_ia64.deb
Size/MD5 checksum: 9315620 93fb059b7a677205cb4ffd27572f1a91
http://security.debian.org/pool/updates/main/c/clamav/clamav-milter_0.90.1dfsg-3etch11_ia64.deb
Size/MD5 checksum: 192288 9c9c6ce3a9edcce61b698558e621761b
http://security.debian.org/pool/updates/main/c/clamav/libclamav-dev_0.90.1dfsg-3etch11_ia64.deb
Size/MD5 checksum: 465502 cfb85ebcf8c8b5cfaebed0f2f7b2f14d
http://security.debian.org/pool/updates/main/c/clamav/clamav-dbg_0.90.1dfsg-3etch11_ia64.deb
Size/MD5 checksum: 610398 0f767eec6a3e010a510ced00f2e67e92
http://security.debian.org/pool/updates/main/c/clamav/libclamav2_0.90.1dfsg-3etch11_ia64.deb
Size/MD5 checksum: 427412 5a01303e155f1a8178fc88a35502c70c
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11_ia64.deb
Size/MD5 checksum: 878792 e8c190288fb5bbf987e6550338513bd6
http://security.debian.org/pool/updates/main/c/clamav/clamav-daemon_0.90.1dfsg-3etch11_ia64.deb
Size/MD5 checksum: 202000 a8d5899d680c22e3e7a882761e1d536c
mips architecture (MIPS (Big Endian))
http://security.debian.org/pool/updates/main/c/clamav/clamav-freshclam_0.90.1dfsg-3etch11_mips.deb
Size/MD5 checksum: 9301424 328489f501cdbdfdd81d5546a746d2fa
http://security.debian.org/pool/updates/main/c/clamav/libclamav-dev_0.90.1dfsg-3etch11_mips.deb
Size/MD5 checksum: 398214 42d1b6f6e957b7bd164bcb325345d5f6
http://security.debian.org/pool/updates/main/c/clamav/libclamav2_0.90.1dfsg-3etch11_mips.deb
Size/MD5 checksum: 343136 4fd653b3685939df4cccf23c969c19b8
http://security.debian.org/pool/updates/main/c/clamav/clamav-dbg_0.90.1dfsg-3etch11_mips.deb
Size/MD5 checksum: 599376 b2cac807438dfd6649c87bf14c2e9cfc
http://security.debian.org/pool/updates/main/c/clamav/clamav-milter_0.90.1dfsg-3etch11_mips.deb
Size/MD5 checksum: 175262 354a5c7234ec8dc8484c5297280b5c33
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11_mips.deb
Size/MD5 checksum: 854974 52b9945a3e2f95c700e546a097d88f74
http://security.debian.org/pool/updates/main/c/clamav/clamav-daemon_0.90.1dfsg-3etch11_mips.deb
Size/MD5 checksum: 179436 e922c9ca6fc592c6d00284e61213b265
mipsel architecture (MIPS (Little Endian))
http://security.debian.org/pool/updates/main/c/clamav/clamav-dbg_0.90.1dfsg-3etch11_mipsel.deb
Size/MD5 checksum: 590312 10b44590671900ea7176fc7a478cebd5
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11_mipsel.deb
Size/MD5 checksum: 854942 232dea685bba49dbed7658d49f81fd87
http://security.debian.org/pool/updates/main/c/clamav/clamav-milter_0.90.1dfsg-3etch11_mipsel.deb
Size/MD5 checksum: 176254 12ae19e5aa4d7d53df9942899caa85fb
http://security.debian.org/pool/updates/main/c/clamav/libclamav-dev_0.90.1dfsg-3etch11_mipsel.deb
Size/MD5 checksum: 389390 ab929ceea4b3a5012cca28657f7d23b3
http://security.debian.org/pool/updates/main/c/clamav/clamav-daemon_0.90.1dfsg-3etch11_mipsel.deb
Size/MD5 checksum: 180312 806e72e41e384e4691bd42a1a8103857
http://security.debian.org/pool/updates/main/c/clamav/clamav-freshclam_0.90.1dfsg-3etch11_mipsel.deb
Size/MD5 checksum: 9301922 862f9db8c4943b6a33b58848e266bae3
http://security.debian.org/pool/updates/main/c/clamav/libclamav2_0.90.1dfsg-3etch11_mipsel.deb
Size/MD5 checksum: 336568 82c1a0900df32adc33ce12cd2980219e
powerpc architecture (PowerPC)
http://security.debian.org/pool/updates/main/c/clamav/clamav-dbg_0.90.1dfsg-3etch11_powerpc.deb
Size/MD5 checksum: 590626 a1bae09f39acaa89fb4c7fe17dc8077c
http://security.debian.org/pool/updates/main/c/clamav/libclamav-dev_0.90.1dfsg-3etch11_powerpc.deb
Size/MD5 checksum: 372158 fe6e24505b409621dbf5460104e91e43
http://security.debian.org/pool/updates/main/c/clamav/clamav-daemon_0.90.1dfsg-3etch11_powerpc.deb
Size/MD5 checksum: 182108 eeea82f3f623a3a17588aec22fcd36ad
http://security.debian.org/pool/updates/main/c/clamav/libclamav2_0.90.1dfsg-3etch11_powerpc.deb
Size/MD5 checksum: 350148 d85953a9e22a022dac5e94f3ee6a96fb
http://security.debian.org/pool/updates/main/c/clamav/clamav-freshclam_0.90.1dfsg-3etch11_powerpc.deb
Size/MD5 checksum: 9302668 ef056aee467ecce308dd81b2e24aceb3
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11_powerpc.deb
Size/MD5 checksum: 857610 6be00c12fc6ea2a660ad8d9d635e16ee
http://security.debian.org/pool/updates/main/c/clamav/clamav-milter_0.90.1dfsg-3etch11_powerpc.deb
Size/MD5 checksum: 176702 25d2fb7c7cd628d4174755ac5e628988
s390 architecture (IBM S/390)
http://security.debian.org/pool/updates/main/c/clamav/clamav-freshclam_0.90.1dfsg-3etch11_s390.deb
Size/MD5 checksum: 9301232 303aa89a4d5fd2034ad4a9de6dcc2a34
http://security.debian.org/pool/updates/main/c/clamav/clamav_0.90.1dfsg-3etch11_s390.deb
Size/MD5 checksum: 855574 fefb28aa639208bf876f42aefeade920
http://security.debian.org/pool/updates/main/c/clamav/clamav-dbg_0.90.1dfsg-3etch11_s390.deb
Size/MD5 checksum: 581288 bd0e20c31e961dfe16e5ea47d3129e08
http://security.debian.org/pool/updates/main/c/clamav/libclamav2_0.90.1dfsg-3etch11_s390.deb
Size/MD5 checksum: 361200 620cf22a2fcb1c5500f703b2d0829a24
http://security.debian.org/pool/updates/main/c/clamav/libclamav-dev_0.90.1dfsg-3etch11_s390.deb
Size/MD5 checksum: 369756 82b744abc26a0cfdfa50f3f3b913ddbc
http://security.debian.org/pool/updates/main/c/clamav/clamav-daemon_0.90.1dfsg-3etch11_s390.deb
Size/MD5 checksum: 176692 8a8a318a0b41e5a122ea2ffa4fb6bffd
http://security.debian.org/pool/updates/main/c/clamav/clamav-milter_0.90.1dfsg-3etch11_s390.deb
Size/MD5 checksum: 177486 482e2693e8f2361cb2c47b72d758093e
补丁安装方法:
1. 手工安装补丁包:
首先,使用下面的命令来下载补丁软件:
# wget url (url是补丁下载链接地址)
然后,使用下面的命令来安装补丁:
# dpkg -i file.deb (file是相应的补丁名)
2. 使用apt-get自动安装补丁包:
首先,使用下面的命令更新内部数据库:
# apt-get update
然后,使用下面的命令安装更新软件包:
# apt-get upgrade
ClamAV
------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.clamav.net/
浏览次数:3268
严重程度:0(网友投票)
绿盟科技给您安全的保障
