Un « exploit » est un programme informatique mettant
en oeuvre l'« exploitation » d'une vulnérabilité publiée ou non.
Chaque exploit est spécifique à une version d'une application car il permet d'en exploiter les failles.
Il existe différents types d'exploits :
- Augmentation des privilèges. Les exploits les plus redoutables permettent
de prendre le contrôle sur les programmes exécutés avec les privilèges
d'administrateur (root sous les systèmes de type UNIX) ;
- Provocation d'une erreur système. Certains exploits ont pour objectif la saturation d'un programme informatique afin de le faire « planter ».
La plupart du temps les exploits sont écrits en langage C ou en Perl.
Ils peuvent toutefois être écrits avec tout langage pour lequel il existe un interpréteur sur la machine cible.
Le pirate utilisant un exploit doit ainsi posséder une connaissance minimale du système
cible et des bases en programmation pour arriver à ses fins.
Afin de pouvoir l'utiliser, le pirate doit la plupart du temps le
compiler sur la machine cible. Si l'éxecution réussit le pirate peut, selon le rôle de l'exploit,
obtenir un accès à l'interpréteur de commandes (shell) de la machine distante.
Afin de ne pas être victime de ce type de programmes, il est nécessaire
pour l'administrateur d'un système de se tenir informé des vulnérabilités
concernant les applications et systèmes d'exploitation qu'il gère en consultant régulièrement les sites
répertoriant les failles et en s'inscrivant à des listes de diffusion spécialisées.
Voici quelques sites répertoriant les failles, leurs exploits et leurs correctifs :
|