ðòïåëôù 


  áòèé÷ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  óôáôøé 


  ðåòóïîáìøîïå 


  ðòïçòáííù 



ðéûéôå
ðéóøíá














     áòèé÷ :: Security-alerts
Security-Alerts mailing list archive (security-alerts@yandex-team.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[security-alerts] FW: iDEFENSE Security Advisory 11.04.05: Clam AntiVirus Cabinet-filehandling Denial of Service Vulnerability



>  
> Clam AntiVirus Cabinet-file handling Denial of Service Vulnerability
> 
> iDEFENSE Security Advisory 11.04.05
> http://www.idefense.com/application/poi/display?type=vulnerabilities
> November 4, 2005
> 
> I. BACKGROUND
> 
> Clam AntiVirus is a GPL anti-virus toolkit for Unix.
> 
> II. DESCRIPTION
> 
> Remote exploitation of a design error in Clam AntiVirus ClamAV allows
> attackers to cause a denial of service (DoS) condition.
> 
> The vulnerability specifically exists with the libmspack 
> library, which
> is included in ClamAV. The vulnerability can be found in the cabd_find
> function within mspack/cabd.c:
> 
> for (offset = 0; offset < flen; offset += length) {
>     length = flen - offset;
> 
>     [... read length from file ...]
> 
>     for (p = &buf[0], pend = &buf[length]; p < pend; ) {
>       switch (state) {
>         [ ... ]
>         case 19:
> => header has been completely read, cablen has been read from 
> bytes 8-11
> 
>           [...]
> 
>           /* likely cabinet found -- try reading it */
>           cab = sys->alloc(sys, sizeof(struct mscabd_cabinet_p); => an
> mscabd_cabinet_p entry will be allocated each time
> 
>           /* cabinet read correctly! */
>           offset = caboff + cablen;
> => if cablen (and caboff) == 0, offset will be equal to 0
> 
>           [...]
> 
>           /* restart search */
>           [...]
>           length = 0;
>           p = pend;
>           state = 0;
> => if offset == 0, we will restart at the beginning of the file =>
> (because length == 0, so offset will still be zero in the next
>   iteration)
>           break;
>       }
>     }
>   }
> 
> 
> 
> If this function is called with a length value of zero, an 
> infinite loop
> occurs. The comments above explain the scenario.
> 
> III. ANALYSIS
> 
> Successful exploitation requires an attacker to send a specially
> constructed CAB file through a mail gateway or personal anti-virus
> client utilizing the ClamAV scanning engine. 
> 
> The infinite loop will cause the ClamAV software to use all available
> processor resources, resulting in a denial of service or severe
> degradation of system performance. Ultimately, the OOM handler will
> terminate a task in order to alleviate the stress on the system. 
> 
> IV. DETECTION
> 
> iDEFENSE has confirmed this vulnerability on ClamAV 0.86.1. 
> All previous
> versions are suspected vulnerable to this issue. 
> 
> V. WORKAROUND
> 
> Archive file analysis can be disabled (--no-archive) but this can have
> severe impacts on the virus detection functionality.
> 
> VI. VENDOR RESPONSE
> 
> The vendor has released clamav 0.87.1 to address this 
> vulnerability. It
> is available for download at:
> 
>  
> http://prdownloads.sourceforge.net/clamav/clamav-0.87.1.tar.gz
> ?download
> 
> VII. CVE INFORMATION
> 
> A Mitre Corp. Common Vulnerabilities and Exposures (CVE) 
> number has not
> been assigned yet.
> 
> VIII. DISCLOSURE TIMELINE
> 
> 10/07/2005  Initial vendor notification
> 10/12/2005  Initial vendor response
> 11/04/2005  Coordinated public disclosure
> 
> IX. CREDIT
> 
> The discoverer of this vulnerability wishes to remain anonymous.
> 
> Get paid for vulnerability research
> http://www.idefense.com/poi/teams/vcp.jsp
> 
> Free tools, research and upcoming events http://labs.idefense.com
> 
> X. LEGAL NOTICES
> 
> Copyright (c) 2005 iDEFENSE, Inc.
> 
> Permission is granted for the redistribution of this alert
> electronically. It may not be edited in any way without the express
> written consent of iDEFENSE. If you wish to reprint the whole or any
> part of this alert in any other medium other than 
> electronically, please
> email customerservice@xxxxxxxxxxxx for permission.
> 
> Disclaimer: The information in the advisory is believed to be accurate
> at the time of publishing based on currently available 
> information. Use
> of the information constitutes acceptance for use in an AS IS 
> condition.
> There are no warranties with regard to this information. Neither the
> author nor the publisher accepts any liability for any 
> direct, indirect,
> or consequential loss or damage arising from use of, or reliance on,
> this information. 
> 




 




Copyright © Lexa Software, 1996-2009.