ClamAV libclamav库PeSpin堆溢出漏洞

QQ空间 新浪微博 微信 QQ facebook twitter
漏洞ID 1187028 漏洞类型 资源管理错误
发布时间 2008-04-16 更新时间 2008-11-15
CVE编号 CVE-2008-1837 CNNVD-ID CNNVD-200804-243
漏洞平台 N/A CVSS评分 5.0
|漏洞来源
http://www.cnnvd.org.cn/web/xxk/ldxqById.tag?CNNVD=CNNVD-200804-243
|漏洞详情
ClamAntiVirus是Unix的GPL杀毒工具包,很多邮件网关产品都在使用。ClamAV中负责解压用PeSpin加密所包装的PE库的代码存在堆溢出漏洞,攻击者可能通过诱使用户处理畸形文件控制用户系统。以下为libclamav/spin.c中的有漏洞代码段:417key32=cli_readint32(ep+0x2fee);...427cli_dbgmsg("spin:Resources(sect%d)appeartobecompressed\n\tuncompressedoffset%x,len%x\n\tcompressedoffset%x,len%x\n",j,sections[j].rva,key32-sections[j].rva,key32,sections[j].vsz-(key32-sections[j].rva));428429if((curr=(char*)cli_malloc(sections[j].vsz))!=NULL){430memcpy(curr,src+sections[j].raw,key32-sections[j].rva);/*Uncompressedpart*/431memset(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值执行验证便在内存拷贝操作中使用,因此可能导致堆溢出。
|参考资料

来源:US-CERT
名称:TA08-260A
链接:http://www.us-cert.gov/cas/techalerts/TA08-260A.html
来源:wwws.clamav.net
链接:https://wwws.clamav.net/bugzilla/show_bug.cgi?id=898
来源:VUPEN
名称:ADV-2008-2584
链接:http://www.frsirt.com/english/advisories/2008/2584
来源:up2date.astaro.com
链接:http://up2date.astaro.com/2008/08/up2date_asg_v7300_ga_released.html
来源:GENTOO
名称:GLSA-200805-19
链接:http://security.gentoo.org/glsa/glsa-200805-19.xml
来源:SECUNIA
名称:31882
链接:http://secunia.com/advisories/31882
来源:SECUNIA
名称:31576
链接:http://secunia.com/advisories/31576
来源:APPLE
名称:APPLE-SA-2008-09-15
链接:http://lists.apple.com/archives/security-announce//2008/Sep/msg00005.html
来源:XF
名称:clamav-libclamunrar-dos(41870)
链接:http://xforce.iss.net/xforce/xfdb/41870
来源:BID
名称:28784
链接:http://www.securityfocus.com/bid/28784
来源:MANDRIVA
名称:MDVSA-2008:088
链接:http://www.mandriva.com/security/advisories?name=MDVSA-2008:088
来源:VUPEN
名称:ADV-2008-1227
链接:http://www.frsirt.com/english/advisories/2008/1227/references
来源:SECUNIA
名称:30328
链接:http://se