Améliorer les performances de scan de clamav

 

Clamav est un antivirus open source performant qui permet de détecter les virus, les trojans, les malware, etc.

On va voir dans cet article comment augmenter la pertinence des résultats de clamav.

Clamav est utilisable sur les plateformes de messagerie pour traiter les fichiers attachés aux mails, sur les plateformes FTP pour éviter les virus dans les fichiers, sur les serveurs de partage de fichiers, etc ...

Je l'utilise aussi pour faire de la recherche de malware dans le code de sites Internet (voir A la recherche de code malwaillant avec LMD et Clamav)

 

Cependant comme beaucoup d'antivirus clamav se base sur des bases de données de signatures pour analyser la présence ou non de code malveillant. De base clamav fourni un ensemble de signatures mais pour augmenter la pertinence des résultats il faut rajouter des sources de signatures.

Dans le précédent article je proposais d'installer en plus de clamav un paquet supplémentaire : clamav-unofficial-sigs qui permet de rajouter des signatures à clamav, cependant en analysant les logs on se rend compte qu'il y a pas mal d'erreurs et de fichiers non téléchargés.

On retrouve des erreurs comme celles-ci :

Clamscan reports SecuriteInfo securiteinfooffice.hdb database integrity tested BAD - SKIPPING
rsync: link_stat "/var/cache/clamav-unofficial-sigs/si-dbs/securiteinfooffice.hdb" failed: No such file or directory (2)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1183) [sender=3.1.1]
Failed to successfully update SecuriteInfo production database file: securiteinfooffice.hdb - SKIPPING

 

Malgré cela on passe quand même de 3 974 312 virus connus avec les signatures "officielles" à 4 661 338 virus connus (chiffre en date du 01/09/2015).

 

J'ai donc cherché à améliorer encore le nombre de virus connus et donc la pertinence des analyses.

Je suis tombé sur ce fork du clamav-unoffical-sigs. J'ai donc désinstallé la version packagée et suivi les conseils d'installation. Je ne vais pas recopier ce qui ait déjà fait, la procédure fonctionne très bien avec un clamav packagé Debian 8 et même avec un clamav compilé.

Pour info j'ai essayé de compilé la version beta 0.99.b1 pour tester l'intégration de Yara mais sans succès, à revoir plus tard.

 

Donc en ayant mis en place mes clés pour MalwarePatrol et SucuriteInfo et configuré correctement le fichier de conf je me retrouve avec 5 237 535 virus connus et plus d'erreurs lors des mises à jour des bases de données de signatures.

 

Ma commande de scan est la suivante :

# clamscan -r -i repertoire_a_scanner --move=fichiers_infectes

-r pour le mode récursif

-i pour n'afficher que les fichiers identifiés comme contenant des virus

--move répertoire de destination pour les fichiers infectés, sans cette option les fichiers infectés restent dans le répertoire scanné.

N'hésitez pas à me faire un retour si vous avez de l'expérience sur d'autres bases de données de signatures intégrables avec Clamav.