‘ClamAV get_unicode_name() Off-By-One Buffer Overflow’
Summary
”Clam AntiVirus is an open source (GPL) anti-virus toolkit for UNIX, designed especially for e-mail scanning on mail gateways. It provides a number of utilities including a flexible and scalable multi-threaded daemon, a command line scanner and advanced tool for automatic database updates. The core of the package is an anti-virus engine available in a form of shared library.’
Credit:
‘The information has been provided by Moritz Jodeit.’
Details
‘Vulnerable Systems:
* ClamAV version 0.94
Immune Systems:
* ClamAV version 0.94.1
The vulnerability occurs inside the get_unicode_name() function in libclamav/vba_extract.c when a specific `name’ buffer is passed to it.
101 static char *
102 get_unicode_name(const char *name, int size, int big_endian)
103 {
104 int i, increment;
105 char *newname, *ret;
106
107 if((name == NULL) || (*name == ‘