Toutes les Menaces

Virus

Hackers

Spams

Whole site    Viruses
  
Encyclopédie Virus
Alertes
Analyses
News
Glossaire



 
Recherche Description Malware

 

  Home / Virus / Encyclopédie Virus / Descriptions du Malware / Virus Classiques

Virus Classiques

Les virus informatiques sont classés en fonction de leur environnement et de leurs méthodes d'infection. Par environnement, il faut entendre le logiciel ou le système d'exploitation dans lequel le virus peut évoluer pour infecter les fichiers au sein de ces systèmes. Quant aux méthodes d'infection, il s'agit des différentes techniques utilisées pour insérer le code d'un virus au sein d'un objet.

Environnement

Généralement, on trouve la majorité des virus dans l'un des environnements suivants :

  • Système de fichiers
  • Secteurs d'amorçage
  • Macros
  • Scripts

Les virus de fichier exploitent le système de fichiers d'un système d'exploitation particulier (ou de plusieurs) afin de se propager. Les virus de fichier sont répartis selon les catégories suivantes :

  • Ceux qui infectent les fichiers exécutables (la majorité des virus de fichier)
  • Ceux qui créent ou dupliquent des fichiers (virus compagnon)
  • Ceux qui créent leur propre copie dans divers répertoires
  • Ceux qui utilisent les caractéristiques des systèmes de fichiers (virus de fichiers système)

Les virus de secteur d'amorçage se copient soit dans le secteur d'amorçage, soit dans le secteur d'amorçage principal ou bien, ils déplacent le secteur d'amorçage actif. Ces virus étaient fort répandus dans les années 1990, mais ils ont presque disparu depuis l'introduction des processeurs 32 bit et la disparition progressive des disquettes. D'un point de vue technique, il est possible de programmer de tels virus pour les CD et les mémoires USB flash, mais aucun n'a été recensé à ce jour.

De nombreux logiciels de traitement de texte, de comptabilité, d'édition et autres possèdent des macros qui servent à automatiser les tâches les plus fréquentes. Ces macros sont complexes et contiennent un vaste éventail de commandes. Les virus de macro sont programmés en langage macro et infectent les logiciels qui possèdent des macros intégrées. Les virus de macro se propagent en exploitant les caractéristiques du langage de programmation des macros afin de se transférer d'un fichier infecté à un autre.

Méthodes d'infection

Les groupes de virus repris ci-dessus peuvent encore être répartis en sous-groupes en fonction des techniques qu'ils emploient pour infecter les objets.

Les virus de fichier

Les virus de fichier utilisent les techniques d'infection suivantes :

  • Ecrasement
  • Parasite
  • Compagnon
  • Fichiers de système
  • Modules objet (OBJ)
  • Compilation de bibliothèques (LIB)
  • Code source de l'application

Ecrasement

Il s'agit de la méthode d'infection la plus élémentaire : le virus remplace le code du fichier infecté par son propre code et efface le code original. Le fichier devient inutile et il ne peut être réparé. Ces virus sont faciles à repérer car le système d'exploitation et les applications concernées cesseront de fonctionner peu de temps après l'infection.

Parasite

Les virus de type parasite modifient le code du fichier infecté. Le fichier infecté demeure complètement ou partiellement opérationnel.

Ce type de virus est réparti en trois catégories en fonction de la section du fichier où le code est écrit :

  • Ajout initial : le code malveillant est écrit au début du fichier
  • Ajout final : le code malveillant est écrit à la fin du fichier
  • Insertion : le code malveillant est inséré au milieu du fichier

Les virus qui insèrent leur code au milieu d'un fichier utilisent différentes techniques : soit ils déplacent des parties du fichier original à la fin du fichier, soit ils copient leur propre code pour vider des sections du fichier cible. On les appelle parfois virus-cavité.

Virus par ajout initial

Les virus par ajout initial écrivent leur code dans le fichier cible de deux manières. Dans le premier cas, le virus déplace le code du début du fichier cible vers la fin et écrit son propre code dans l'espace ainsi dégagé. Dans le deuxième cas, le virus ajoute le code du fichier cible à son propre code.

Dans les deux cas, à chaque lancement du fichier infecté, c'est le code du virus qui est exécuté en premier. Afin de préserver l'intégrité de l'application, il se peut que le virus nettoie le fichier infecté, le relance, attende qu'il soit exécuté et dès que cette procédure est terminée, le virus se copiera à nouveau au début du fichier. Certains virus ont recours à des fichiers temporaires pour stocker les versions saines des fichiers infectés. D'autres virus restaureront le code de l'application dans la mémoire et rétabliront les adresses nécessaires dans le corps, ce qui duplique le travail du système d'exploitation.

Virus par ajout final

La majorité des virus appartiennent à cette catégorie. Les virus par ajout final s'inscrivent à la fin des fichiers infectés. Toutefois, ces virus ont tendance à modifier les fichiers (modifier l'adresse d'entrée dans l'en-tête du fichier) pour être certains que les commandes du code du virus soient exécutées avant les commandes de l'objet infecté.

Virus par insertion

Les auteurs de virus ont recours à diverses méthodes pour introduire le virus au milieu d'un fichier. Les méthodes les plus simples consistent à déplacer des blocs de codes du fichier à la fin de ce dernier ou à pousser le code original sur le côté afin de faire de la place pour le virus.

Les virus-cavité appartiennent à cette catégorie : ils écrivent leur code dans des secteurs de fichiers qui sont vides. Ainsi, un virus-cavité peut se copier dans la partie non utilisée d'une en-tête d'un fichier exécutable, dans les écarts entre les blocs du fichier exe ou dans les zones de textes des compilateurs les plus populaires. Certains virus-cavité infecteront uniquement les fichiers dont un certain bloc contient un certain octet. Le bloc sélectionné sera écrasé par le code du virus.

Enfin, certains virus par insertion sont mal programmés et se contentent d'écraser des blocs de code essentiels au bon fonctionnement du fichier infecté. Dans ce cas, le fichier infecté ne peut être réparé.

Virus dissimulateurs d'adresse d'entrée (EPO)

Il existe un petit groupe de virus parasites qui reprend des virus par ajout final et des virus d'insertion de l'objet sans modifier l'adresse du point d'entrée dans l'entête des fichiers exe. Les virus EPO écrivent la routine qui renvoie vers le corps du virus dans le milieu du fichier infecté. Le code du virus est exécuté alors uniquement si la routine qui contient la partie exécutable du virus est appelée. Si c'est routine n'est que rarement utilisée (ex. : notification d'une erreur rare), un virus EPO peut rester très longtemps inactif.

Les auteurs de virus doivent faire très attention lorsqu'ils choisissent l'adresse d'entrée : une adresse d'entrée mal choisie peut soit corrompre le fichier hôte, soit rendre le virus tellement inactif que le fichier infecté pourrait être effacé bien avant que le virus ne se réveille.

Les auteurs de virus ont recours à différentes méthodes pour trouver des adresses d'entrée utiles :

  • Recherche de cadres qu'ils écraseront avec les points d'entrée infectés
  • Détricotage du code du fichier hôte
  • Modification des adresses des fonctions d'importation

Virus compagnon

Les virus compagnon ne modifient pas le fichier hôte. Ils créent une copie du fichier avec le virus. Lorsque le fichier infecté est lancé, c'est la copie contenant le virus qui sera exécutée en premier lieu.

Cette catégorie reprend les virus qui renomment le fichier hôte, ceux qui enregistrent un nouveau nom pour une référence ultérieure puis qui écrasent le fichier original. Par exemple, un virus peut changer notepad.exe en notepad.exd et écrire son propre code dans le fichier sous le nom original. Chaque fois que l'utilisateur de l'ordinateur infecté exécutera notepad.exe, c'est le code du virus qui sera exécuté tandis que le fichier Notepad original (notepad.exd) sera lancé par la suite.

Il existe d'autres types de virus compagnon qui utilisent des techniques d'infection originales ou qui exploitent les vulnérabilité de systèmes d'exploitation particuliers. Ainsi, les virus compagnon de type chemin d'accès placent leur copie dans le répertoire système de Windows. Ils profitent du fait que ce répertoire est le premier dans la liste des CHEMINS D'ACCES; le système démarre depuis ce répertoire lors du lancement de Windows. Nombreux sont les vers et les chevaux de Troie modernes qui exploitent ces techniques d'exécution automatique.

Autres techniques d'infection

Certains virus n'infectent pas les ordinateurs via les fichiers exécutables mais se copient simplement dans divers répertoires en espérant que tôt ou tard l'utilisateur les ouvrira. Certains auteurs de virus donnent à leur programme des noms comme install.exe ou winstart.bat afin de persuader l'utilisateur à exécuter le fichier qui contient le virus.

Certains virus se copient dans des fichiers comprimés aux formats ARJ, ZIP et RAR tandis que d'autres écrivent la commande de lancement d'un fichier infecté dans un fichier BAT.

Les virus de fichiers système sont d'autres virus qui ne modifient pas le fichier hôte. Toutefois, ils obligent le système d'exploitation à exécuter le code du virus en modifiant les champs appropriés dans le système de fichiers.

Les virus de secteur d'amorçage

Les virus de secteur d'amorçage connus à l'heure actuelle infectent les secteurs d'amorçage des disquettes et le secteur d'amorçage ou le secteur d'amorçage principal (MBR) du disque dur. Ces virus fonctionnent selon un algorithme utilisé pour lancer le système d'exploitation lorsque l'ordinateur est allumé ou redémarré. Une fois que les vérifications de la mémoire, du disque, etc. ont été réalisées, le programme de démarrage du système lit/atteint le premier secteur physique du disque d'amorçage (A:, C: ou le CD-ROM en fonction des paramètres configurés/installés dans la configuration du BIOS) et lui passe les commandes.

Lorsqu'il infecte un disque, un virus de secteur d'amorçage remplacera son code par celui d'un programme qui reçoit les commandes lorsque le système démarre. Afin de pouvoir infecter le système, le virus forcera celui-ci à lire la mémoire et à transmettre les commandes non pas au programme de démarrage mais bien au code du virus.

Les disquettes ne peuvent être infectées que d'une seule façon. Le virus écrit son code à la place du code original du secteur d'amorçage de la disquette. Les disques durs peuvent être infectés de trois façons : soit le virus écrit son code à la place du code du secteur d'amorçage principal (MBR) ou à la place du code du disque d'amorçage, soit il modifie les adresses des secteurs d'amorçage actifs de la table des partitions du disque dans le MBR du disque dur.

Dans la plus grande majorité des cas, une fois qu'il infecte un disque, le virus déplace le secteur d'amorçage principal d'origine (ou MBR) vers un autre secteur, le premier secteur vide bien souvent. Si le virus est plus long que le secteur, le secteur infecté contiendra la première partie du code du virus et le reste du code sera quant à lui placé dans d'autres secteurs (en général, les premiers secteurs libres).

Les virus de macro

Les virus de macro les plus répandus touchent les applications MS Office (Word, Excel et PowerPoint) qui enregistrent les données au format OLE2 (Object Linking and Embedding). Les virus pour d'autres applications sont assez rares.

L'emplacement du virus au sein d'un fichier MS Office dépend du format du fichier, très complexe dans les logiciels Microsoft. Chaque document WORD, Office 97 ou Excel est constitué d'une séquence de bloc de données (ayant chacun son propre format) qui sont joints/reliés/unis par les données de service. Etant donné la complexité du format des fichiers Word, Excel et Office 97, il est plus facile d'indiquer l'emplacement d'un virus de macro dans ces fichiers à l'aide d'un schéma:

Document ou tableau sain   Document ou tableau infecté
Entête du fichier
Données de service (répertoires, FAT)
Texte
Polices
Macros (le cas échéant)
Autres données
 
Entête du fichier
Données de service (répertoires, FAT)
Texte
Polices
Macros (le cas échéant)
Virus de macros
Autres données

Lorsqu'il travaille avec des documents et des tableurs, MS Office réalise différentes actions : l'application ouvre le document, l'enregistre, l'imprime, le ferme, etc. MS Word recherchera les macros intégrées et les exécutera. Par exemple, la commande Fichier/Enregistrer fera appel à la macro FileSave, la commande Fichier/Enregistrer sous fera appel à la macro FileSaveAs et ainsi de suite. On suppose tout le temps que ces macros sont définies/configurées.

Il existe également des macros automatiques qui seront appelées automatiquement dans certaines situations. Par exemple, à l'ouverture d'un document, MS Word vérifiera s'il contient la macro AutoOpen. Si la macro est présente, elle sera exécutée par Word. Lorsqu'un document est fermé, Word exécutera la macro AutoClose. Lorsque Word est lancé, l'application exécutera la macro AutoExec, etc. Ces macros sont exécutées automatiquement sans intervention de l'utilisateur, tout comme les macros/fonctions qui sont associées à une touche particulière ou à un jour ou une heure précise.

En règle générale, les virus de macro qui infectent les fichiers MS Office utiliseront une des techniques décrites ci-dessus. Le virus contiendra soit une macro automatique (fonction automatique), soit l'une des macros standard du système (associée à un élément du menu) sera redéfinie, soit le virus sera appelé automatiquement par une certaine touche ou combinaison de touche. Une fois que le virus de macro aura pris les commandes, il transmettra son code à d'autres fichiers, en général ceux qui sont modifiés à ce moment. Dans des cas plus rares, les virus chercheront d'autres fichiers sur les disques.

Les virus de script

Les virus de script forment un sous groupe des virus de fichier. Ils sont programmés dans une grande variété de langages (VBS, JavaScript, BAT, PHP, etc.). Soit ils infectent d'autres scripts (ex. : les fichiers de commande et de service Windows ou Linux), soit ils font partie d'un virus à plusieurs composants. Les virus de script peuvent infecter d'autres formats tels que HTML si ce format permet l'exécution de scripts.

 

Copyright © 1996 - 2009
Kaspersky Lab
Industry-leading Antivirus Software
All rights reserved
 

Email: webmaster@viruslist.com