Questions - réponses : virus et autres codes malicieux
Par le JDNet Solutions (Benchmark Group)
URL : http://solutions.journaldunet.com/0108/010828_faqvirus.shtml
Mardi 28 août 2001

Qu'appelle-t-on exactement un virus ?
Un virus est un programme malicieux capable de se répliquer sur un ordinateur, et c'est tout. Pour ce faire, il peut remplacer, se nicher à l'intérieur ou se greffer à des portions de codes éxécutables. Depuis le premier virus inventé par un étudiant californien pour son compte dans les années 60, suivi du premier lâché dans la nature au milieu des années 70 par deux programmeurs pakistanais, des dizaines de milliers ont fait leur apparition (10 000 selon certains, jusqu'à 50 000 selon d'autres).

Les vers sont-ils des virus ?
A la différence des virus, les vers ne se répliquent pas sur un même ordinateur. Leur caractéristique première vise à se propager à travers un réseau (généralement Internet), d'un ordinateur à l'autre. La catégorie la plus dangereuse de vers reste aujourd'hui les "mass mailers", qui s'auto-envoient au maximum de personnes possibles figurant dans le carnet d'adresse du client de messagerie. Un ver comme SirCam s'avère même capable de se servir des e-mails figurant dans le fichier cache du naivgateur Internet Explorer, qui conserve les informations de navigation de l'internaute sur les sites web qu'il a visités.

Certains vers peuvent aussi être des virus, mais la plupart ne le sont pas même si la tendance est au mélange des genres...

Comment différencier les virus et les vers des chevaux de Troie (ou Trojans) ?
A l'époque de la guerre de Troie pendant l'antiquité, les Achéens tentèrent de conquérir les Troyens en entrant dans l'enceinte de la ville à l'aide d'un cheval en bois offert comme cadeau, creux mais rempli de soldats. Une fois dans la place, ceux-ci avaient franchi les barrières sans difficultés et purent attaquer les habitants de la ville de Troie de l'intérieur. C'est ainsi que procèdent les Trojans, ou chevaux de Troie, qui à l'inverse des virus ne se répliquent pas d'eux-même.

Sous forme de fichiers compilés mais aussi de scripts éxécutables (VBScript, JavaScript...), les chevaux de Troie peuvent avoir plusieurs fonctions plus ou moins destructrices. Celles-ci s'étendent de l'ouverture d'une fenêtre avec un message, jusqu'au formatage du disque dur, en passant par l'ouverture d'une porte de derrière, ou "backdoor", qui donne le contrôle de la machine infectée à un pirate situé n'importe où sur la planète. Des outils de hackers comme BackOrifice et SubSeven sont caractéristiques de cette dernière tendance, et permettent au pirate de télécharger des fichiers sur le disque dur, de déplacer le pointeur de la souris, d'éteindre l'écran ou même d'ouvrir le lecteur de CD à distance. Ces symptômes représentent autant de signes de sa présence, tout comme le fait de constater un flux sortant disproportionné lors d'une connexion Internet en cas de vol de fichiers. Une fois détecté, un cheval de Troie devient le plus souvent inoffensif s'il ne combine pas cette fonction avec celle d'un virus, puisqu'il suffit de supprimer le fichier incriminé et de vider la corbeille. (lire à ce sujet la chronique de Joël Rivière)

Qu'en est-il des macro-virus ?
Ils constituent la plus importante (à 80 %) des quatre grandes catégories de virus, et sont apparus lors de l'introduction des premières "macros-commandes" dans les logiciels de bureautique de Microsoft (Word, Excel, Powerpoint...). Ces macros incluses dans certains fichiers .doc, .xls etc. donnent la possibilité d'éxécuter des traitements spécifiques sur le document qui les contient. Un virus peut donc s'insérer sous forme de macro, et utiliser les capacités du logiciel pour se copier à l'intérieur des autres documents du même type, voire créés par d'autres outils bureautiques avec lequel celui-ci peut communiquer.

Et les trois autres catégories de virus ?
La seconde concerne les virus de "boot", qui s'installent sur le premier bloc d'une disquette ou d'un disque dur, c'est à dire la séquence initiale de démarrage de l'unité en question. La troisième n'infecte que les fichiers éxécutables (extensions .COM, .EXE, .DAT, .LNK, .DRV, .DLL, .BIN, .SYS...). Et la quatrième catégorie, celle des virus multi-formes, combine les différentes méthodes d'infection ci-dessus.

Quelles sont les principales méthodes de propagation employées par les vers ?
Les vers ont donc pour propriété de s'envoyer tout seuls d'un ordinateur à l'autre sur Internet ou sur un réseau local. Pour cela, la méthode la plus usitée reste la messagerie avec l'expédition d'un email, infecté soit dans sa pièce jointe, soit plus rarement, dans le code HTML du message, aux utilisateurs du carnet d'adresse. Plus récemment, nous avons pu constater l'apparition d'un second type de vers relativement préoccupants. Il s'agit de la classe serveur intégrant CodeRed qui utilise les failles de sécurité non éradiquées à l'aide des correctifs en vigueur. D'autres vers, plus anciens mais encore peu répandus, se transmettent à un internaute via une simple connexion à une page web. Enfin, il en existe encore qui empruntent des chemins détournés, comme les réseaux d'imprimantes partagés, certains ports TCP/IP ouverts par exemple pour la messagerie instantanée (ICQ, AOL, Messenger), et les canaux de discussion sur IRC.

Tous ces codes malicieux sont-ils dangereux ?
Non. Certains affichent des messages et ne font que prendre un peu de mémoire pour cela. D'autres, qualifiés de virus antivirus, servent même à éradiquer certains de leurs prédécesseurs jugés dangereux, avant de se suicider en s'auto-effaçant. Enfin, il en existe qui font acte de charité, comme le ver VBS/Noped qui dénonce après examen des fichiers sur le disque dur, les pédophiles aux principales organisations chargées de les débusquer.

Existe-t-il des virus qui entrent dans plusieurs de ces catégories ?
Oui, comme vous l'aurez compris, un ver peut transporter et installer un virus, et peut aussi être un cheval de Troie. Il existe à l'heure actuelle plusieurs dizaines voire centaines de codes malicieux combinés ou enchaînés, et leur nombre croît très rapidement.

Pourquoi certains virus ou vers de conception récente retardent-ils les éditeurs d'antivirus dans la mise en place de correctifs ?
La dernière génération de codes malicieux devient d'une complexité presque machiavélique. En effet, certains spécialistes de la sécurité ont détourné l'acronyme PE (Portable Executable, le mode d'éxécution des applications sous Windows) pour qualifier ces virus et vers mutants. "Polymorphic encrypted" signifie que :
1/ le virus est polymorphe et modifie tout seul certaines de ses portions en vue d'empêcher une reconnaissance par les antivirus classiques.
2/ il chiffre les parties stratégiques de son code source afin de les rendre illisibles par les techniciens des laboratoires de recherche. Parfois, le programme dispose de plusieurs algorithmes et/ou modifie régulièrement les clefs pour rendre encore plus difficile le déchiffrement.
Malgré tout, certains éditeurs ont mis en place des méthodes qui leur permettent d'avancer beaucoup plus rapidement face à ces menaces dont les premiers représentants virtuels datent de 1999. La multiplication des virus polymorphiques réclamant un certain savoir-faire chez leurs auteurs n'empêche pas leur éradication, et ne justifie pas le refus d'installer un antivirus.

Rappelons également qu'un code malicieux peut exister en plusieurs versions différentes, notamment si un second pirate a mis la main sur le code source de la première version et a effectué quelques petites modifications. Mais globalement, une fois que la méthode employée par le ver pour se propager est identifiée et peut être contrée, celui-ci devient beaucoup moins dangereux en présence d'un antivirus mis à jour.

Tous les dégâts causés par un virus peuvent-ils être réparés ? Que se passe-t-il si un virus a "flashé" le BIOS ?
Certains dégâts ne peuvent être réparés, comme la perte de fichiers si le virus a remplacé leurs contenus par son propre code ou des chaînes de caractères. Mais s'ils sont seulement supprimés, il est parfois possible de les récupérer. Le formatage de certaines portions du disque dur peut lui aussi s'avérer fatal.

Mais l'une des pires choses qui puisse arriver suite à une infection est en effet le flashage du BIOS (Basic input/output system), provoqué notamment par les très dangereux CIH/Tchernobyl et Magistr. Le BIOS se trouve dans une puce réinscriptible sur la carte mère du PC et est chargé en mémoire dès l'allumage de l'ordinateur afin d'assurer sa mise en route, qui passe par la reconnaissance des différents périphériques de base comme le lecteur de disquettes et les disques durs. Une fois modifié par un virus de façon pernicieuse à même la puce électronique, il n'est plus possible de redémarrer l'ordinateur, même à l'aide d'une disquette de boot. Seul le fait de changer la carte mère permettra un redémarrage. Et il sera préférable d'isoler le disque dur infecté afin d'éviter cela ne se reproduise.

Que signifie l'appellation "in the wild" ?
Elle qualifie les virus et les codes malicieux qui sont répandus chez des utilisateurs et/ou dans des entreprises. Tous ne se sont pas propagés car certains ne sont jamais sortis des machines de leurs programmeurs qui ne souhaitaient pas les diffuser, voire même des laboratoires des éditeurs d'antivirus qui adoptent souvent une attitude proactive dans la détection des menaces.

Qu'est-ce qu'un "Hoax" ?
Un hoax est une fausse nouvelle, souvent reprise par un ou plusieurs médias. Il y a quelques années, certains éditeurs d'antivirus ont été accusés d'abuser de fausses annonces de nouveaux virus. Aujourd'hui, la plupart d'entre eux sont sérieux, et quelques-uns en dressent même une liste exhaustive (par exemple Symantec et Trend Micro). Il peut aussi arriver qu'un e-mail s'annonce comme un code malicieux, ou qu'un fichier éxécutable (.COM, .EXE, .SYS, .PIF...) ouvre une fenêtre avec marqué dedans "je suis un virus", mais qu'il n'en soit rien.

Pourquoi dans les encyclopédies de virus des éditeurs spécialisés, les codes malicieux portent-ils plusieurs noms ? Existe-t-il des initiatives de normalisation ?
Chaque éditeur travaille de son côté avec ses laboratoires et emploie son propre vocabulaire pour qualifier les codes malicieux qu'il identifie. Par exemple, le triste SirCam est nommé W32.Sircam.Worm@mm, TROJ_SCAM.A, et SCAM.A selon différents éditeurs. Selon ce que rappelle l'organisme américain indépendant WildList Organisation, dont l'un des rôles consiste justement à aboutir à une normalisation de la terminologie, cela peut s'avérer absurde. Car il se peut qu'un jour, un virus dangereux soit pris pour un inoffensif portant un nom identique ou suffisamment proche, et que les démarches pour le contrer ne soient pas mises en oeuvre d'une manière efficace.

Si mon PC est équipé de Linux, ou si je possède un Macintosh, suis-je à l'abri des virus ?
Non. Les systèmes Linux et les Macintosh ne peuvent généralement pas être infectés par des programmes conçus pour fonctionner sur Windows. Mais ces plates-formes ne sont pas hors de portée de développeurs mal intentionnés. Et il existerait à l'heure actuelle quelques milliers de virus au moins spécialement conçus pour infecter les ordinateurs de marque Apple. Sur Linux, moins d'une centaine sont recensés à l'heure actuelle en raison du caractère récent du système d'exploitation. D'autres comme certains Unix et l'ancien OS/2 Warp d'IBM n'en connaîssent que quelques-uns. Enfin, des ancêtres parmi les micro-ordinateurs comme l'Amiga de Commodore et l'Atari ST avaient eux aussi rencontré leur lot de virus au tout début des années 90, et plusieurs milliers voire dizaines de milliers ont été répertoriés rien que sur le premier des deux.

Que dois-je faire pour me protéger efficacement contre les virus et les autres codes malicieux ?
La première des précautions consiste à installer un logiciel antivirus. Au minimum, celui-ci doit passer au crible les fichiers sur le disque dur de façon régulière, et observer en permanence les mouvements de code suspects dans les zones de la mémoire ciblées par les virus. C'est le cas d'Antivirus Toolkit Pro de l'éditeur Kaspersky Labs qui n'est pas très cher. Si vous souhaitez installer plusieurs antivirus, choisissez-les de préférence complémentaires chez le même éditeur, et non concurrents entre deux éditeurs. Car ceux dont les objectifs sont les mêmes partagent certaines ressources système et peuvent ainsi occasionner des plantages parfois sévères (réinstallation de Windows...).

En terme de complémentarité, l'antivirus du poste client peut se coupler avec un autre au niveau de la messagerie, et un troisième pour surveiller les interactions avec les sites web. Dans une entreprise, tous les points d'entrée peuvent être surveillés par la plupart des gammes de produits (Trend Micro, McAfee, Sophos, Symantec). Ou alors, vous pouvez aussi combiner un antivirus fonctionnant par mises à jour d'une base de définitions de virus avec un analyseur de type Orion (déjà combiné dans F-Secure) ou Viguard (Tegam).

Ensuite, une bonne protection logicielle contre la plupart des chevaux de Troie et certains vers consiste à installer un firewall (pare-feu en bon français), qui va bloquer l'arrivage de fichiers intrusifs sur les ports TCP/IP écoutés par des applications. Vous pouvez au minimum installer et configurer ZoneAlarm qui s'avère être gratuit.

Ces outils mis à part, n'existe-t-il pas un comportement éthique qui puisse m'éviter, en tant qu'utilisateur, de devenir un relais de propagation ?
En l'absence d'antivirus installé, vous pouvez toujours utiliser régulièrement les systèmes de vérification en ligne proposés gratuitement par certains éditeurs, comme HouseCall de Trend Micro, ou le système de Symantec qui propose aussi une détection de certaines failles réseaux. Mais cela ne compense évidemment pas l'intallation d'un antivirus permanent sur le poste qui assure une réelle protection efficace. Quant au comportement éthique, en voici un condensé :

- ne pas lancer un fichier éxécutable sans être assuré qu'il ne contienne un virus ou un cheval de Troie. Ceci concerne aussi bien les logiciels téléchargés sur des sites douteux, que les pièces jointes aux emails avec des extensions éxécutables (voir plus haut) ou de langages de scripts (.VBS, .JS, .PHP...). Dans ce dernier cas, si vous attendiez ce type de fichier, passez le tout de même à l'antivirus, car l'on ne sait jamais ce qui peut arriver en cours de route. Si la formulation du message vous paraît inhabituelle, un simple appel téléphonique à l'expéditeur peut vous renseigner. Prévenez également, à chaque fois que vous le pouvez, la personne qui vous a transmis un virus qu'elle est infectée, afin qu'elle prenne les mesures nécessaires le plus rapidement possible.

- Si vous possédez un système antivirus, assurez-vous de le mettre à jour très régulièrement, car les éditeurs publient une ou plusieurs fois par semaine des mises à jour.

- Configurez proprement votre système d'exploitation pour éviter l'infection par des codes malicieux non encore reconnus. 1.Installez les correctifs des éditeurs qui réparent les failles d'applications parfois utilisées par de nouveaux codes malicieux. 2.Paramétrez vos options pour afficher tous les fichiers cachés et toutes les extensions. Vous verrez ainsi les extensions doubles comme ".JPG.EXE". 3.Bloquez dans Explorer ou Netscape l'éxécution des scripts, des contrôles ActiveX et des cookies lorsque vous visitez un site en lequel vous n'avez pas totalement confiance.

- Si vous êtes à peu près certains d'être tombé sur un code malicieux dont les éditeurs ne parlent pas encore dans leurs alertes (après l'avoir passé à l'antivirus, utilisez les moteurs de recherche dans les encyclopédies), transmettez-leur au plus vite le ou les fichiers suspects. Par ailleurs, ne paniquez pas en cas d'infection. Outre le fait que cela ne sert à rien, la période de soulagement qui s'ensuit peut amener à une baisse de la vigilance.

- Enfin, tenez-vous régulièrement informé, par la presse au minimum, mais surtout les alertes antivirus et celles des organismes de sécurité si vous voulez être considéré comme professionnel, des nouvelles failles touchant vos applications. Cet éveil peut vous permettre d'adopter un comportement proactif dans l'installation des correctifs. Car de nombreux codes malicieux qualifiés d'exploits (comme Code Red) emploient les vulnérabilités récemment découvertes pour se propager en s'appuyant sur la non-réactivité des utilisateurs.
[François Morel, JDNet]