9 rue du petit Chatelier, 44300 Nantes - 8h30 à 12h30 - 14h à 18h (17h le vendredi) - Contactez-nous : 02 85 52 13 95

securite

Anti-virus

La société d'informatique et de téléphonie ASTORYA fourni pour ses entreprises clientes des solutions en matière d'anti-virus.

Fonctionnement

Un logiciel antivirus vérifie les fichiers et courriers électroniques, les secteurs de démarrage (afin de détecter les virus de boot), mais aussi la mémoire vive de l'ordinateur, les médias amovibles (clefs USB, CD, DVD, etc.), les données qui transitent sur les éventuels réseaux (dont internet), etc.

  Différentes méthodes sont possibles :

  • Les principaux antivirus du marché se concentrent sur des fichiers et comparent alors la signature virale du virus aux codes à vérifier ;
  • La méthode heuristique est la méthode la plus puissante, tendant à découvrir un code malveillant par son comportement. Elle essaie de le détecter en analysant le code d'un programme inconnu. Parfois de fausses alertes peuvent être provoquées ;
  •  L’analyse de forme repose sur du filtrage basé entre des règles regexp ou autres, mises dans un fichier junk. Cette dernière méthode peut être très efficace pour les serveurs de messagerie électronique supportant les regexp type postfix puisqu'elle ne repose pas sur un fichier de signatures.

Les antivirus peuvent balayer le contenu d'un disque dur, mais également la mémoire vive de l'ordinateur. Pour les antivirus les plus modernes, ils agissent en amont de la machine en scrutant les échanges de fichiers avec l'extérieur, aussi bien en flux descendant (téléchargement) que montant (téléversement ou upload). Ainsi, les courriels sont examinés, mais aussi les fichiers copiés sur ou à partir de supports amovibles tels que cédéroms, disquettes, connexions réseau, clefs USB…

 

Approches

On distingue plusieurs types de logiciels antivirus selon leur fonctionnement. La première méthode est celle du dictionnaire.

 Dictionnaire

Les créateurs de logiciels antivirus ayant préalablement identifié et enregistré des informations sur des virus, comme le ferait un dictionnaire, le logiciel antivirus peut ainsi détecter et localiser la présence d’un virus.

 On appelle ce dictionnaire la base de définition virale qui contient les signatures de virus.

 Lorsque cela se produit, l'antivirus dispose de trois options, il peut :

  • Effectuer la suppression du fichier contaminé.
  • Tenter de réparer le fichier endommagé en éliminant le virus ;
  • Déplacer le fichier dans une zone de quarantaine afin qu’il ne puisse être accessible aux autres utilisateurs et logiciels. Ceci permet d'éviter que le virus se répande (par autoréplication), et permet éventuellement de  réparer le fichier ultérieurement ;

Afin de maximiser le rendement de l'antivirus, il est essentiel d’effectuer de fréquentes mises à jour en téléchargeant des versions plus récentes. Des internautes consciencieux et possédant de bonnes connaissances en informatique peuvent identifier eux-mêmes des virus et envoyer leurs informations aux créateurs de logiciels antivirus afin que leur base de données soit mise à jour.

Généralement, les antivirus examinent chaque fichier lorsqu'il est créé, ouvert, fermé ou lu. De cette manière, les virus peuvent être identifiés immédiatement. Il est possible de programmer le système d’administration pour qu’il effectue régulièrement un examen de l'ensemble des fichiers sur l'espace de stockage (disque dur, etc).

Même si les logiciels antivirus sont très performants et régulièrement mis à jour, les créateurs de virus font tout aussi souvent preuve d'inventivité. Une autre technique pour contourner ces définitions virales consiste à utiliser des packers/crypters, le fichier malicieux est chiffré et compressé et déchiffré et décompressé lors de son exécution, un peu à la manière des fichiers zip auto-extractible. Le fait que le fichier est chiffré empêche une détection par signature et permet de démultiplier les fichiers malicieux à partir d'une base unique en changeant de packers/crypters.

 

Liste blanche

La « liste blanche » est une technique de plus en plus utilisée pour lutter contre les logiciels malveillants. Au lieu de rechercher les logiciels connus comme malveillants, on empêche l'exécution de tout logiciel à l'exception de ceux qui sont considérés comme fiables par l'administrateur système. En adoptant cette méthode de blocage par défaut, on évite les problèmes inhérents à la mise à jour du fichier de signatures virales. De plus, elle permet d'empêcher l'exécution de logiciels indésirables.

Étant donné que les entreprises modernes possèdent de nombreuses applications considérées comme fiables, l'efficacité de cette technique dépend de la capacité de l'administrateur à établir et mettre à jour la liste blanche. Cette tâche peut être facilitée par l'utilisation d'outils d'automatisation des processus d'inventaire et de maintenance.

 

Comportements suspects

Une autre approche pour localiser les virus consiste à détecter les comportements suspects des programmes. Par exemple, si un programme tente d’écrire des données sur un programme exécuté, modifier/supprimer des fichiers système l’antivirus détectera ce comportement suspect et en avisera l’utilisateur qui choisira les mesures à suivre.

Contrairement à l’approche précédente, la méthode du comportement suspect permet d’identifier des virus très récents qui ne seraient pas encore connus dans le dictionnaire de l'antivirus. Toutefois, le fait que les utilisateurs soient constamment avertis de fausses alertes peuvent les rendre insensibles aux véritables menaces. Si les utilisateurs répondent « Accepter » à toutes ces alertes, l’antivirus ne leur procurera aucune protection supplémentaire. Ce problème s’est aggravé depuis 1997, puisque plusieurs programmes inoffensifs ont modifié certains fichiers exécutables sans observer ces fausses alertes. C’est pourquoi, les antivirus les plus modernes utilisent de moins en moins cette méthode. L'intelligence artificielle des nouveaux antivirus leur permet de choisir la décision à prendre sans en avertir l'utilisateur, ce qui permet d'utiliser à nouveau cette méthode. De plus les filtres se sont considérablement améliorés et les faux positif sont moins nombreux.

 

Autres approches

L’analyse heuristique est utilisée par quelques antivirus. Par exemple, l’antivirus peut analyser le début de chaque code de toutes les nouvelles applications avant de transférer le contrôle à l’usager. Si le programme semble être un virus, alors l’usager en sera averti. Toutefois, cette méthode peut également mener à de fausses alertes. La méthode heuristique permet de détecter des variantes de virus et, en communiquant automatiquement les résultats de l'analyse à l'éditeur, celui-ci peut en vérifier la justesse et mettre à jour sa base de définitions virales.

La méthode du bac à sable (sandbox en anglais) consiste à émuler le système d’exploitation et à exécuter le fichier lors de cette simulation. Une fois que le programme prend fin, les logiciels analysent le résultat du bac à sable afin de détecter les changements qui pourraient contenir des virus. En raison des problèmes de performance, ce type de détection a lieu habituellement pendant le balayage sur demande. Cette méthode peut échouer puisque les virus peuvent s’avérer non déterministes et résulter de différentes actions ou même peut-être d’aucune action lorsque exécuté. Il est impossible de le détecter à partir d’une seule exécution.

Les packers posent des problèmes d'efficacité aux détections par signature. Une autre limite était le temps assez long entre le moment où l'éditeur mettait à jour ses définitions virales, la disponibilité en ligne et la mise à jour des clients antivirus. Temps pendant lequel les utilisateurs pouvaient être vulnérables.

Pour pallier cela, les éditeurs utilisent des "Antivirus Cloud", où des bases de données gigantesques sont disponibles en ligne, permettant de recouper certaines données. En outre, ces bases de données sont utilisées en temps réel par les antivirus et permettent donc de supprimer le laps de temps entre la mise en ligne et le téléchargement des définitions virales.

Enfin, cela permet aussi d'alléger les clients antivirus où les bases locales étaient de plus en plus volumineuses face à la multiplication des menaces et l'utilisation des packers/crypters.