Les anti-virus: un mal nécessaire ?

Introduction

Les anti-virus sont-ils une bonne réponse aux problèmes de virus, vers, chevaux de Troie et attaques ? Ou sont-ils surtout une façon de soigner les symptômes d'une informatique malade, plutôt que les causes réelles ? Sont-ils finalement vraiment efficaces contre les attaques dont les entreprises et individus sont de plus en plus l'objet, ou donnent-ils une fausse impression de sécurité ?

Ces questions sont centrales pour le décideur informatique, responsable IT au sein de l'entreprise. Mais pour y répondre, il faut montrer les principales attaques dont sont l'objet les systèmes informatiques aujourd'hui (en particulier ceux tournant sous système d'exploitation propriétaire Microsoft), en particulier voir pourquoi la diffusion de virus/vers/chevaux de Troie est si rapide.

Par choix, nous n'évaluerons cependant pas d'autres aspects fréquemment mentionnés dans le public, comme par exemple la question de savoir si l'industrie des anti-virus crée elle-même des virus ces conjectures sont indémontrables et n'apportent pas grand chose à la démarche de cet article.

Attaques usuelles

En matière de d'attaques générales de sécurité, on retiendra les catégories suivantes.

virus logiciel infectant un autre logiciel et l'utilisant comme vecteur de propagation comme son équivalent biologique
vers de l'anglais worm, logiciel qui se réplique sur les machines d'un réseau
cheval de Troie programme se déguisant en un autre programme, comme p.ex. un programme de jeu, un utilitaire, ou une rustine, un patch de sécurité
buffer overflow vulnérabilité permettant de faire exécuter n'importe quelle séquence de code à un système: dépassement de tampon et autres erreurs de programmation dans un programme ou système d'exploitation
!DoS (Denial of Service) surcharge du système informatique le rendant inopérant, ou toute attaque visant à dénier aux utilisateurs légitimes le droit d'accès
backdoor des virus, chevaux de Troie ou des exploitations d'erreurs de programmation sont souvent utilisés pour créer des portes d'entrées sur les systèmes sans authentification préalable. Ces backdoors rendent possibles la prise de contrôle du système informatique par des tiers

Vulnérabilités

En règle générale, une attaque de sécurité -- par un virus, vers, cheval de Troie ou dépassement de tampon -- est rendue possible par une vulnérabilité et des erreurs initiales (techniques ou sociales). Le but d'un responsable sécurité est de minimiser celles-ci.

En fait, les spécialistes de sécurité s'étonnent souvent de la simplicité des virus et du peu de connaissances de leurs concepteurs: bien souvent, des failles très connues et simplistes sont utilisées: penser à des failles de sécurité non corrigées après une année, par exemple pour le worm/virus Nimda.

Un concept de virus créant un virus mutant qui utilise les failles de plusieurs applications et se camoufle via chiffrement et modification de système d'exploitation, voire de BIOS ou de microcode processeur pourrait passer inaperçu pendant des années, infecter tous les ordinateurs puis ensuite seulement se déclencher simultanément. Fort heureusement, apparemment du moins, les concepteurs de virus n'ont pas encore atteint ce niveau de compétence et font suffisamment de dégâts à l'aide de méthodes plus simples.

Réponse offerte par les anti-virus

La plupart des anti-virus reposent sur le concept de signatures: ils disposent d'une base de données de virus connus, remise à jour par l'éditeur du logiciel régulièrement. Très rarement ils utilisent des méthodes de détection novatrices: détection d'utilisation d'appels systèmes ou d'accès matériel.

Lorsqu'un mail ou une requête de fichier traverse un pare-feu équipé d'anti-virus, il y a une détection de virus (précédée d'un décompactage des archives si nécessaires) -- pour autant que ce virus soit déjà connu.

On se rend bien compte que lorsque les virus sont nouveaux ou si les données ne sont pas dans un format supporté par l'anti-virus (archives à format spécial, fichiers chiffrés, ou astuces comme violations légères de standard d'empaquetage comme MIME), les anti-virus ne broncheront pas.

Tout cela contribue à créer une fausse sensation de sécurité: à quand le premier procès attaquant une entreprise d'anti-virus ajoutant un message message filtré par XXX -- certifié sans virus aux mails sortants ?

La réponse correcte serait de supprimer tout fichier dont le format ne figure pas sur une liste blanche (liste des formats connus comme non infectables: texte pur, certains formats d'image). Des outils libres et gratuits comme MIMEdefang ou despam-check utilisent cette méthode.

Mais cela ne résout pas les problèmes de sécurité dus au social engineering (la mise en danger de systèmes par des astuces ciblant le personnel) ou l'absence de mises à jour de sécurité.

Rappelons qu'un système compromis par une attaque peut avoir été pris en main, par la suite, par un ou des pirates (humains et/ou automatisés), même sans que l'entreprise ou l'individu concerné ne soit vraiment une cible importante (bien des attaques aujourd'hui sont automatisées et aveugles). Un anti-virus ne pourra alors que supprimer le virus initial et non toutes les modifications apportées, en particulier par un pirate humain ou automatisé récent pour se réserver un accès privilégié à la machine. Le temps où les pirates ne s'attaquaient pas au quidam est bien dépassé: celui-ci est un moyen de paralyser, par effet d'échelle, un réseau entier.

En plus, effectuer la détection de virus sur une machine elle-même vulnérable est très certainement une mauvaise idée: le risque existe qu'une faille de l'anti-virus ou du logiciel de décompactage provoque l'infection. Une solution pourrait être par exemple de tourner de tels anti-virus sous un système non Microsoft: UNIX/Linux semble un excellent candidat (en particulier vu qu'on a la possibilité d'utiliser des processeurs incompatibles avec la série ix86 d'Intel/AMD: citons notamment les processeurs PowerPC, ARM ou SPARC).

Conclusion

La complexité des systèmes informatiques modernes, en particulier des applications multimédia liées à Internet, dites grand public où la sécurité est souvent vue comme un handicap (bouton: Cancel ou Mémorisation des mots de passe dans Microsoft Windows) et les conceptions déficientes des systèmes d'exploitation les plus populaires associées à une monoculture informatique (la compatibilité Wintel) rendant la propagation des virus et attaques facile, ainsi que la mauvaise formation des utilisateurs créent des potentialités d'attaques.

A cela s'ajoutent la faible qualité des programmes, créés souvent pour avoir un look ravageur mais développés à la va-vite et sans concept sécurité.

Les anti-virus s'occupent surtout des symptômes, voire des conséquences des attaques, mais bien rarement des causes réelles. Un anti-virus n'est pas une garantie d'absence de virus et encore moins d'absence d'attaques.

Quels sont les dangers ?

  • la monoculture informatique Wintel, dont la base installée ne dispose d'aucun mécanisme de sécurité et dont les nouvelles versions voient chaque jour des vulnérabilités plus complexes être utilisées
  • l'utilisation de formats de données complexes et propriétaires
  • la formation au cas par cas uniquement dans des domaines restreints/propriétaires plutôt qu'une vision de sécurité globale
  • les logiciels de qualité marketing: gonflés, mal conçus et mal testés, liés entre eux d'une manière très forte

Quelles sont les solutions ?

  • une véritable formation des utilisateurs (pour éviter les attaques sociales)
  • l'utilisation stricte de formats de données ouverts et les plus simples possibles (un mémo peut être envoyé en texte sans utiliser un traitement de texte, une image en JPEG ou PNG, tous ces formats n'offrent pas de macro-virus!)
  • la mise à jour permanente des ordinateurs en limitant les services au strict minimum (des logiciels serveurs ne devraient pas être installés, en particulier par défaut, sur un poste client)
  • l'adoption par l'industrie de stricts principes de sécurité, comme par exemple une définition de formats de données stricts aussi pour les applications desktop, la limitation très stricte des fonctionnalités des applications et un design ouvert de celles-ci.

Si des mesures ne sont pas prises, le jour où des systèmes vraiment importants seront rendus compatibles avec la plate-forme propriétaire dominante (systèmes de contrôle aérien, de centrales nucléaires, de trafic ferroviaire ou de systèmes embarqués (ascenseurs, etc)), on peut supposer que des catastrophes d'une étendue inimaginable se produise, en particulier dans un monde inter-connecté. Réagissons avant qu'il ne soit trop tard.

Marc SCHAEFER

Historique

Cet article est paru dans la revue IBcom (attention: ce serveur WWW abuse du Flash!) de septembre 2002, avec quelques corrections minimes depuis.

 
info@cril.ch - Copyright © 2002-2009 - CRIL / Marc SCHAEFER