Un virus est un petit programme situé dans le corps d'un autre, qui, lorsqu'on l'exécute, se
charge en mémoire et exécute les instructions que son auteur a programmé.
La définition d'un virus pourrait être la suivante:
"tout programme d'ordinateur capable d'infecter un autre programme d'ordinateur en le modifiant de façon à ce qu'il puisse à son tour se reproduire."
On distingue ainsi différents types de virus :
Depuis quelques années un autre phénomène est apparu, il s'agit des canulars (en anglais hoax), c'est-à-dire des annonces reçues par mail (par exemple l'annonce de l'apparition d'un nouveau virus destructeur ou bien la possibilité de gagner un téléphone portable gratuitement,...) accompagnées d'une note précisant de faire suivre la nouvelle à tous ses proches. Ce procédé a pour but l'engorgement des réseaux ainsi que la désinformation.
Les antivirus sont des programmes capables de détecter la présence de virus sur un ordinateur, ainsi que de nettoyer celui-ci dans la mesure du possible si jamais un ou des virus sont trouvés. On parle ainsi d'éradication de virus pour désigner la procédure de nettoyage de l'ordinateur.
Les virus se reproduisent en infectant des "applications hôtes", c'est-à-dire en copiant une portion de code exécutable au sein d'un programme existant. Or, afin de ne pas avoir un fonctionnement chaotique, les virus sont programmés pour ne pas infecter plusieurs fois un même fichier. Ils intègrent ainsi dans l'application infectée une suite d'octets leur permettant de vérifier si le programme a préalablement été infecté : il s'agit de la signature virale.
Les antivirus s'appuient ainsi sur cette signature propre à chaque virus pour les
détecter. Il s'agit de la méthode de recherche de signature (scanning), la plus ancienne méthode utilisée par les antivirus.
Cette méthode n'est fiable que si l'antivirus possède une base virale à jour,
c'est-à-dire comportant les signatures de tous les virus connus. Toutefois cette méthode
ne permet pas la détection des virus n'ayant pas encore été répertoriés
par les éditeurs d'antivirus. De plus, les programmeurs de virus les ont désormais doté
de capacité de camouflage, de manière à rendre leur signature indétectable, il
s'agit de "virus polymorphes".
Certains antivirus utilisent un contrôleur d'intégrité pour vérifier si les fichiers ont été modifiés. Ainsi le contrôleur d'intégrité construit une base de données contenant des informations sur les fichiers exécutables du système (date de modification, taille, et éventuellement une somme de contrôle). Ainsi, lorsqu'un fichier exécutable change de caractéristiques, l'antivirus prévient l'utilisateur de la machine.
En réalité, la plupart des virus sont des clones, ou plus exactement des "mutants", c'est-à-dire des virus ayant été réécrits par d'autres utilisateurs afin d'en modifier leur comportement ou bien uniquement leur signature.
Le fait qu'il existe plusieurs versions (on parle de variantes) d'un même virus le rend d'autant plus difficile à repérer dans la mesure où les éditeurs d'antivirus doivent ajouter ces nouvelles signatures à leurs bases de données ...
Etant donné que les antivirus détectent (entre autres) les virus grâce à leur signature (la succession de bits qui les identifie), certains créateurs de virus ont pensé à leur donner la possibilité de modifier automatiquement leur apparence, tel un caméléon, en dotant les virus de fonction de chiffrement et de déchiffrement de leur signature de telle manière à ce que seul le virus soit capable de reconnaître sa propre signature. Ce type de virus est appelé virus polymorphe (ce mot provenant du grec signifie qui peut prendre plusieurs formes).
On appelle "rétrovirus" ou "virus flibustier" (en anglais bounty hunters) un virus ayant la capacité de modifier les signatures des antivirus afin de les rendre inopérants.
On appelle virus de boot, un virus capable d'infecter le secteur de démarrage d'un disque (MBR, soit master boot record), c'est-à-dire un secteur du disque copié dans la mémoire au démarrage de l'ordinateur, puis exécuté afin d'amorcer le démarrage du système d'exploitation.
De plus, le virus peut représenter une faille dans la sécurité d'un réseau en créant des vulnérabilités dissimulées qu'un utilisateur extérieur pourra utiliser pour s'introduire dans le système, ou pour lui fournir des informations. Le but de ces virus est de se propager, vulnérabiliser des systèmes, et "marquer" les systèmes de telle façon à ce qu'ils puissent être repérés par leurs créateurs. De tels virus dévoilent l'ensemble des systèmes d'informations d'une machine et brisent ainsi la confidentialité des documents qu'elle renferme, on appelle ce type de virus un cheval de Troie...
Avec la multiplication des programmes utilisant des macros, Microsoft a mis au point un langage de script commun pouvant être inséré dans la plupart des documents pouvant contenir des macros, il s'agit de VBScript, un sous-ensemble de Visual Basic. Ces virus arrivent actuellement à infecter les macros des documents Microsoft Office, c'est-à-dire qu'un tel virus peut être situé à l'intérieur d'un banal document Word ou Excel, et exécuter une portion de code à l'ouverture de celui-ci lui permettant d'une part de se propager dans les fichiers, mais aussi d'accèder au système d'exploitation (généralement Windows).
Or, de plus en plus d'applications supportent Visual Basic, ces virus peuvent donc être imaginables sur de nombreuses autres applications supportant le
VBScript.
Le début du troisième millénaire a été marqué par l'apparition à grande fréquences de
scripts Visual Basic diffusés par mail en fichier attaché (repérables grâce à leur extension .VBS) avec un titre de mail poussant à ouvrir le cadeau empoisonné.
Celui-ci a la possibilité, lorsqu'il est ouvert sur un client de messagerie Microsoft, d'accèder à l'ensemble du carnet d'adresse et de s'autodiffuser par le réseau. Ce type de virus est appelé ver (ou worm en anglais).