ClamAV VirusEvent parameter vulnerability — GLSA 200405-03

With a specific configuration (using %f in the VirusEvent parameter), Clam AntiVirus is vulnerable to an attack allowing execution of arbitrary commands.

Affected packages

app-antivirus/clamav on all architectures
Affected versions < 0.70
Unaffected versions >= 0.70


From :

"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"


Release date
May 11, 2004

Latest revision
May 22, 2006: 02



Bugzilla entries