Chaque mois, nous recevons des questions concernant les antivirus : quel est le meilleur ? sont-ils nécessaires ? quelles sont les différences entre les antivirus gratuits et les payants ?
Nous allons donc, dans cet article, vous expliquer comment les antivirus fonctionnent, quelle est leur utilité et comment les comparer.Par soucis d’exactitude, nous tenons à souligner un problème de terminologie : de nos jours un (bon) antivirus ne protège pas uniquement contre les virus, mais aussi contre les malwares en général.
Il y a une constante course à l’armement entre les hackeurs qui tentent de créer des malwares indétectables et les créateurs de solutions de protection qui essayent de bloquer ces malwares. En vue de l’évolution extrêmement rapide dans ce milieu, il se peut que certaines informations dans cet article ne soient plus valables d’ici quelques mois.
L’outil principal d’un antivirus traditionnel est la recherche par signature. L’antivirus télécharge quotidiennement une base de données (appelée définition) de programmes (ou segments de code de programmes) connus pour être malveillants. Ensuite, il scanne tous les fichiers sur l’ordinateur pour vérifier qu’aucun parmi eux ne contienne une de ces signatures. Le cas échéant, l’antivirus désigne le fichier atteint comme dangereux et applique une procédure de nettoyage, élimination ou mise en quarantaine.
Cette technique comporte deux principaux désavantages et limites :
- Plus de 30’000 nouveaux malwares sont découverts chaque jour, soit plus de 20 nouveaux virus par minute ; ainsi, la définition doit être mise à jour très régulièrement afin de pouvoir détecter les dernières menaces. Ceci implique aussi que ces fichiers de définition sont très grands et souvent compliqués à télécharger.
- Les malwares « polymorphiques» sont une famille de malwares qui changent leur code à chacune de leurs réplications pour éviter d’avoir leurs signatures dans les définitions. Une définition efficace peut identifier des segments de code inchangés spécifiques au virus, même après modification polymorphe, et ainsi découvrir les malwares.
Certains développeurs ont donc choisi de rajouter des fonctionnalités aux antivirus telles que:
- L’envoi, en cas de doute, des fichiers suspects dans le cloud pour une analyse plus approfondie, avec l’inconvénient de la latence pour certains résultats (tel que F-Secure).
- La « détection a postériori » accompagnée d’une alerte si, longtemps après un scan négatif (pas un malware), il s’avère que le programme est infecté (tel que AMP de Cisco).
- La détection de comportement avec une liste (comme des définitions classiques) qui décrit des comportements anormaux, suspects ou dangereux qui pourraient indiquer la présence d’un malware. Par exemple, un document PDF qui télécharge puis exécute un code binaire.
La grande différence entre les antivirus gratuits et payants se situe avec ces types de fonctionnalités « avancés » et plus complexes qu’une simple base de définition.
Comment tester les différences entre les antivirus ?
Il existe quatre tests principaux pour comparer les antivirus :
- La capacité de reconnaissance consiste à tester les antivirus avec des malwares connus, par exemple en vérifiant si des virus parus une semaine avant le test son détectés.
- La capacité de détection non connue consiste à prendre une ancienne version de l’antivirus (avec une ancienne version de signature) et tester quel est son taux de réussite face à des nouveaux virus. Ceci permet de valider sa capacité de détection de malwares inconnus.
- Le nombre de faux positif est essentiel car on ne veut pas bloquer ou empêcher des applications légitimes de fonctionner. Il faut donc s’assurer qu’il n’y a qu’un minimum d’applications non-malveillantes bloquées par l’antivirus.
- Les performances et les ressources consommées par l’antivirus permettent d’indiquer l’impact sur la productivité des utilisateurs. Si des messages interrompent souvent le travail, ou si le fonctionnement de l’ordinateur devient trop lent, l’antivirus ne remplit pas correctement son rôle.
Les antivirus du futur
De nouvelles compagnies se profilent maintenant avec des “antivirus prochaine génération” qui ne fonctionnent plus à base de définitions et qui peuvent détecter plus que des fichiers malveillants (du code exécuté en mémoire par exemple).
Invincea fait par exemple partie de cette catégorie. Avec un soutien de DARPA (Defense Advanced Research Projects Agency) chiffré à plus de 20 millions de dollars, ils ont développé une solution de sécurité et de protection des stations de travail sans définition.
Afin de remplacer les définitions de virus qui deviennent de plus en plus obsolètes, Invincea a développé des algorithmes de « machine Learning » pour éduquer un réseau neuronal à reconnaitre un malware, en comparant les fonctionnalités, similarités et capacités des fichiers à analyser avec le réseau neuronal. Cette approche permet d’automatiquement détecter très rapidement des malwares encore inconnus en consommant très peu de ressources.
Invincea a aussi mis en place un système de micro-virtualisation qui permet d’isoler complètement les applications à risque (navigateur web, suite MS Office, Java, Adobe Reader etc.) du reste du système afin qu’un exploit reste contenu et ne puisse pas se propager.
Le niveau de protection obtenu par cette approche a permis à Invincea d’être choisi par la Défense Nationale Américaine comme la meilleure solution de protection des stations de travail, et de recevoir le meilleur résultat en matière de protection par Forrester Wave 2016
ZENData représente la compagnie Invincea et leur solution de sécurité en Suisse et dans l’Europe Francophone.
Nous pouvons organiser pour vous des démonstrations de ses capacités de protection et d’analyse d’incidents, ainsi que la mise en place de PoC dans votre établissement.
N’hésitez pas à nous contacter pour fixer un RDV.