With a specific configuration (using %f in the VirusEvent parameter), Clam AntiVirus is vulnerable to an attack allowing execution of arbitrary commands.
|Package||app-antivirus/clamav on all architectures|
|Affected versions||< 0.70|
|Unaffected versions||>= 0.70|
From http://www.clamav.net/ :
"Clam AntiVirus is a GPL anti-virus toolkit for UNIX. The main purpose of this software is the integration with mail servers (attachment scanning). The package provides a flexible and scalable multi-threaded daemon, a command line scanner, and a tool for automatic updating via Internet. The programs are based on a shared library distributed with the Clam AntiVirus package, which you can use with your own software. Most importantly, the virus database is kept up to date."
The VirusEvent parameter in the clamav.conf configuration file allows to specify a system command to run whenever a virus is found. This system command can make use of the "%f" parameter which is replaced by the name of the file infected. The name of the file scanned is under control of the attacker and is not sufficiently checked. Version 0.70 of clamav disables the use of the "%f" parameter.
Sending a virus with a malicious file name can result in execution of arbirary system commands with the rights of the antivirus process. Since clamav is often associated to mail servers for email scanning, this attack can be used remotely.
You should not use the "%f" parameter in your VirusEvent configuration.
All users of Clam AntiVirus should upgrade to the latest stable version:
# emerge sync # emerge -pv ">=app-antivirus/clamav-0.70" # emerge ">=app-antivirus/clamav-0.70"
May 11, 2004
May 22, 2006: 02