Exploit
Qu'est-ce que Exploit ?
ExploitCode, données ou technique exploitant une vulnérabilité pour provoquer un comportement non prévu : exécution de code, élévation de privilèges, fuite d'informations.
Un exploit est la mise en pratique d'une vulnérabilité : la recette qui transforme un bug théorique en attaque fonctionnelle. Cela peut être un court script, un document piégé, un paquet réseau forgé ou une chaîne complexe multi-étapes.
Anatomie et classification
Les exploits se classent par objectif (exécution de code à distance, élévation locale de privilèges, déni de service, fuite d'information), par cible (noyau, navigateur, firmware IoT, application web) et par maturité (preuve de concept, fonctionnel, militarisé, in-the-wild). Un exploit de corruption mémoire associe généralement une primitive qui détourne le flux de contrôle à une charge — souvent du shellcode ou une chaîne ROP (Return-Oriented Programming) assemblée à partir de code existant. Comme l'exploitation fiable d'un seul bug est désormais rare sur des cibles durcies, les attaquants bâtissent des chaînes d'exploits : par exemple un bug du moteur de rendu du navigateur qui fuit de la mémoire pour vaincre l'ASLR, suivi d'une évasion de bac à sable et d'une élévation de privilèges dans le noyau.
Exemples réels
EternalBlue (CVE-2017-0144) exploitait une faille SMBv1 et a alimenté les épidémies WannaCry et NotPetya de 2017. Log4Shell (CVE-2021-44228, CVSS 10.0), divulgué en décembre 2021, permettait à un attaquant non authentifié de déclencher une exécution de code à distance simplement en amenant une instance Log4j vulnérable à journaliser une chaîne ${jndi:...} contrôlée par l'attaquant — l'un des bugs les plus exploités de l'histoire.
Mitigations et usage défensif
Les mitigations — DEP/NX, ASLR, canaris de pile, CFG/CET et authentification de pointeurs — augmentent le coût de la transformation d'un bug en exécution de code. Les défenseurs étudient les exploits publics et des bases comme Exploit-DB et Metasploit pour valider les correctifs, simuler des attaques en pentest, écrire des signatures de détection et prioriser la remédiation (le catalogue KEV de la CISA signale ce qui est exploité activement).
flowchart LR A[Vulnérabilité<br/>ex. buffer overflow] --> B[Déclencheur<br/>entrée forgée] B --> C[Primitive de contrôle<br/>écraser adresse retour / pointeur] C --> D[Vaincre les mitigations<br/>une fuite bat l'ASLR] D --> E[Exécuter la charge<br/>shellcode / chaîne ROP] E --> F[Objectif<br/>RCE · élévation · vol de données] D -.->|étape suivante| G[Évasion de sandbox /<br/>exploit noyau] G --> F
● Exemples
- 01
Module Metasploit exploitant EternalBlue (CVE-2017-0144).
- 02
PDF piégé exploitant un bug du moteur JavaScript pour exécuter du shellcode.
● Questions fréquentes
Qu'est-ce que Exploit ?
Code, données ou technique exploitant une vulnérabilité pour provoquer un comportement non prévu : exécution de code, élévation de privilèges, fuite d'informations. Cette notion relève de la catégorie Vulnérabilités en cybersécurité.
Que signifie Exploit ?
Code, données ou technique exploitant une vulnérabilité pour provoquer un comportement non prévu : exécution de code, élévation de privilèges, fuite d'informations.
Comment se défendre contre Exploit ?
Les défenses contre Exploit combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.
Quels sont les autres noms de Exploit ?
Noms alternatifs courants : Code d'exploitation.