Fonctionnement des anti-virus

*Ce texte s'adresse aux débutants*

Il a été expliqué que les anti-virus pour smartphones ne fonctionnaient pas pleinement, notamment parce qu'ils ne se basaient que sur la reconnaissance de signature des différentes menaces.  Mais comment fonctionne un anti-virus ?

Sur les machines, donc ni les smartphones ni les tablettes, les anti-virus reposent sur trois méthodes de fonctionnement : la reconnaissance de signature, l'analyse spectrale et l'analyse comportementale.

Pour qu'il y ait reconnaissance de signature, il faut au préalable qu'il y ait une détection de signature. L'action de l'anti-virus dans cette phase consiste à aller taper dans toutes les bases de données qu'il possède pour voir s'il reconnaît la signature du malware.

Cette recherche de signature nécessite que le programme soit régulièrement mis à jour, de préférence de façon automatique. Ceci explique pourquoi certains programmes d'anti-virus, comme Avast par exemple, mettent automatiquement leurs bases VPS à jour. Dans les faits, entre le moment où une nouvelle menace est identifiée et le moment où la nouvelle menace est répertoriée, il se passe généralement moins d'une heure. Ceci vous explique également pourquoi l’anti-virus a besoin d’être connecté à Internet, de façon permanente.

Cette méthode présente un inconvénient majeur : outre le fait que la base doit constamment être mise à jour, il y a un risque de faux-positifs, à savoir la détection d'un programme comme état une menace alors qu'il ne s'agit pas d'une menace. A l'inverse, si un programme qui est malveillant n'est pas répertorié comme tel, il peut infecter la machin et c'est ce qui se passe sur les smartphones.

L'analyse spectrale consiste à faire une liste des instructions et des appels systèmes contenus dans un programme et de comparer ce spectre aux spectres caractéristiques de virus connus.  Elle est à mi-chemin de la reconnaissance de signature et l'analyse comportementale. Comme toutes les méthodes statistiques, Mais cette méthode ne permet pas de savoir si l'on se trouve vraiment en face d'un virus car elle peut générer beaucoup de faux positifs  car cela reste une méthode statistique. Elle permet néanmoins de découvrir de nouvelles menaces.

L'analyse comportementale permet de détecter si un programme est un virus en le laissant s'exécuter tout en contrôlant ce qu'il fait. L'exécution doit être simulée. C'est clairement la partie sandbox des anti-virus qui consiste à exécuter le code malveillant sans pour autant infecter le reste de la machine.

Mais l'analyse comportementale est une simulation et cette simulation pose un souci : la différence de comportement en fonction de la partie du programme malveillant qui est sollicité lors de la simulation.

En effet, lors de la simulation, le malware peut être observé selon certains critères ou avoir des caractéristiques spécifiques faisant que la simulation ne permet pas de détecter les fonctions réellement malveillantes du programmes car celui répond à des hypothèses spécifiques.

Ceci explique pourquoi les anti-virus sur machines combinent les trois méthodes d'analyse : si l'une des méthodes est défaillante, une autre prend le relais.

Ajouter un commentaire