L'exploitation est le moment où l'attaquant transforme une vulnérabilité en exécution de code sur votre système. C'est le point de bascule de la kill chain : la tentative devient une intrusion réelle. Cette page explique comment fonctionne cette phase, la différence entre failles connues et zero-day, ce qu'est la fenêtre d'exposition, et quels indicateurs trahissent une compromission. Elle s'adresse aux personnes qui découvrent la sécurité offensive et défensive, sans prérequis autre que la notion de vulnérabilité.
L'exploitation marque la transition entre la préparation et l'action concrète. Les phases précédentes de la kill chain peuvent rester invisibles ; l'exploitation, elle, laisse souvent des traces, à condition de savoir où regarder.
Ce que vous allez apprendre
Section intitulée « Ce que vous allez apprendre »L'exploitation est l'étape la plus technique de la chaîne d'attaque, mais ses mécanismes se comprennent sans être développeur. Concrètement, vous saurez :
- Distinguer une vulnérabilité connue non corrigée d'une zero-day, et pourquoi les deux menacent différemment.
- Reconnaître les grandes familles d'exploitation applicative : injections, désérialisation, débordement mémoire.
- Comprendre la notion de fenêtre d'exposition, ce délai critique entre la publication d'une faille et son correctif.
- Repérer les indicateurs de compromission (IoC) qui trahissent une exploitation réussie.
- Rattacher cette phase à la tactique ATT&CK « Exécution » (Execution, TA0002), dont la technique
T1203(Exploitation for Client Execution) est l'un des visages. Le référentiel MITRE ATT&CK et le modèle de menaces applicatif du SOCLE prolongent cette lecture.
Qu'est-ce que la phase d'exploitation
Section intitulée « Qu'est-ce que la phase d'exploitation »L'exploitation est le moment où l'attaquant utilise une vulnérabilité pour faire tourner du code non autorisé sur le système cible. Une vulnérabilité est un défaut qui permet de sortir du comportement prévu par le concepteur. Elle peut être de trois natures.
Une faille technique vit dans le logiciel : un bug dans un service réseau, une bibliothèque ou le système d'exploitation. Une faille logique tient à la conception de l'application : un contrôle d'accès qui se contourne, une entrée mal filtrée. Une faille humaine repose sur une action de l'utilisateur, comme l'ouverture d'un document piégé qui déclenche l'exploit.
Le but reste identique : obtenir une exécution de code sur la machine. Cette exécution est la clé qui ouvre tout le reste, installer des outils, voler des données, progresser dans le réseau. C'est pourquoi cette étape correspond, dans le langage ATT&CK, à la tactique Exécution (TA0002) : l'objectif de l'attaquant à cet instant précis est de faire tourner sa charge.
Failles connues non corrigées ou zero-day
Section intitulée « Failles connues non corrigées ou zero-day »Toutes les vulnérabilités ne se valent pas du point de vue défensif. La distinction majeure oppose les failles publiquement connues aux failles inconnues du vendeur.
Les vulnérabilités connues, la menace la plus courante
Section intitulée « Les vulnérabilités connues, la menace la plus courante »Une vulnérabilité publiée reçoit un identifiant CVE (Common Vulnerabilities and Exposures), le catalogue mondial des failles connues. Une fois publiée, la faille est documentée et souvent accompagnée d'un exploit public, un programme prêt à l'emploi qui la déclenche. Les attaquants automatisent alors le scan d'Internet pour trouver les systèmes non corrigés.
Quelques cas ont marqué l'histoire récente et illustrent l'ampleur du risque.
| CVE | Nom | Impact |
|---|---|---|
| CVE-2021-44228 | Log4Shell | Exécution de code à distance via la bibliothèque Log4j |
| CVE-2017-0144 | EternalBlue | Propagation du ver WannaCry via le protocole SMB |
| CVE-2021-34527 | PrintNightmare | Élévation de privilèges sur Windows |
| CVE-2023-44487 | HTTP/2 Rapid Reset | Déni de service à grande échelle |
Retenez le contre-intuitif : la majorité des intrusions n'exploitent pas des failles exotiques, mais des vulnérabilités connues et corrigées depuis des mois, sur des systèmes que personne n'a mis à jour. Le patch existait, il n'a pas été appliqué.
Les zero-day, rares mais redoutables
Section intitulée « Les zero-day, rares mais redoutables »Une zero-day est une vulnérabilité inconnue du public et de l'éditeur. Le terme signifie que le vendeur a eu zéro jour pour corriger la faille avant qu'elle ne soit exploitée. Aucun correctif n'existe au moment de l'attaque, ce qui la rend particulièrement difficile à bloquer.
Ces failles se négocient cher et intéressent un profil d'attaquant précis. Les groupes APT (Advanced Persistent Threat) soutenus par des États les emploient pour des cibles de haute valeur. Des courtiers en vulnérabilités les achètent et les revendent. La cybercriminalité organisée s'en sert quand le gain le justifie. Pour comprendre qui manie quel type de faille, la page sur les profils d'attaquants éclaire ces motivations.
L'exploitation applicative en pratique
Section intitulée « L'exploitation applicative en pratique »Les applications exposées sur Internet concentrent une large part des exploitations. Les catégories qui reviennent le plus figurent dans le Top 10 OWASP, la liste de référence des risques applicatifs. Trois familles méritent d'être comprises.
Les injections consistent à glisser des instructions malveillantes dans une donnée que l'application traite sans la neutraliser. L'injection SQL insère des fragments de requête dans un formulaire pour lire ou modifier la base. L'injection de commande fait exécuter des commandes système au serveur. Le XSS (Cross-Site Scripting) fait tourner du script dans le navigateur d'une victime.
La désérialisation non sécurisée est plus discrète. Sérialiser, c'est transformer un objet en flux de données pour le stocker ou le transmettre ; désérialiser fait l'inverse. Si l'application reconstruit un objet à partir de données contrôlées par l'attaquant sans vérification, celui-ci peut fabriquer un objet piégé qui exécute du code au moment de la reconstruction.
L'exploitation mémoire vise la gestion de la mémoire par les programmes en langage bas niveau. Un débordement de tampon (buffer overflow) écrit au-delà de la zone prévue pour écraser des adresses et détourner l'exécution. Des protections modernes comme ASLR et DEP compliquent ces attaques sans les éliminer.
# Injection SQL classique dans un champ de formulaire' OR '1'='1' --
# Injection de commande sur un paramètre mal filtré; cat /etc/passwd
# Traversée de répertoire pour lire un fichier hors du dossier prévu../../../etc/passwdCes charges paraissent triviales, et c'est le problème : une seule entrée non filtrée suffit. La page GTFOBins montre comment un attaquant enchaîne ensuite ces accès avec des binaires légitimes du système. Pour cadrer l'ensemble des points d'entrée à protéger, la surface d'attaque est le bon angle.
La fenêtre d'exposition
Section intitulée « La fenêtre d'exposition »La fenêtre d'exposition est le délai pendant lequel un système reste vulnérable à une faille connue : le temps qui sépare la publication de la CVE et l'application du correctif chez vous. C'est la variable que l'attaquant exploite et que le défenseur doit réduire.
Ce délai se joue en heures ou en jours, pas en semaines. Dès qu'un exploit public circule pour une faille critique, les scans automatisés balaient Internet en continu. Plus votre fenêtre est large, plus la probabilité qu'un scan tombe sur votre système avant vous augmente. Réduire cette fenêtre est le levier défensif le plus rentable contre les failles connues.
Les indicateurs de compromission
Section intitulée « Les indicateurs de compromission »Un indicateur de compromission (IoC) est un signe observable qui trahit une intrusion en cours ou passée. Aucun IoC ne prouve seul une compromission, mais leur accumulation doit alerter. Les surveiller permet de détecter une exploitation même sans signature connue, ce qui couvre en partie le risque zero-day.
Les IoC les plus révélateurs après une exploitation sont les suivants.
- Processus inhabituels ou consommation anormale de CPU, de mémoire ou de bande passante.
- Connexions réseau vers des destinations inconnues, souvent le signe d'un canal de commande.
- Fichiers créés dans des répertoires temporaires ou à des emplacements inattendus.
- Modifications de fichiers système ou de configuration hors de tout changement planifié.
- Séquence d'authentification suspecte : une rafale d'échecs suivie d'un succès.
Ces indicateurs se collectent et se corrèlent dans un SIEM (Security Information and Event Management), l'outil qui centralise et croise les événements de sécurité. Les analyser tôt raccourcit le temps de détection, qui reste le meilleur amortisseur d'une intrusion.
Comment se protéger
Section intitulée « Comment se protéger »Aucune parade unique ne couvre l'exploitation. La défense en profondeur empile plusieurs couches pour qu'une faille dans l'une soit rattrapée par une autre.
Le patch management, la gestion des correctifs, est la première ligne. Inventoriez vos composants logiciels, idéalement via un SBOM (Software Bill of Materials, la liste de tous les composants d'un logiciel), priorisez les correctifs selon le score CVSS et l'exploitabilité réelle, puis automatisez leur déploiement. C'est l'action qui ferme la fenêtre d'exposition.
Le contrôle d'exécution limite ce qui peut tourner sur une machine. Un EDR (Endpoint Detection and Response) surveille le comportement des postes et bloque les charges suspectes. Des mécanismes comme la liste blanche d'applications empêchent l'exécution de binaires non autorisés, même en cas de faille exploitée.
Le durcissement réduit les possibilités d'exploitation avant même qu'une faille soit trouvée. Désactivez les services inutiles, appliquez le moindre privilège, activez les protections système (SELinux ou AppArmor, ASLR, DEP) et segmentez le réseau pour contenir une intrusion.
Les tests de sécurité valident le code que vous produisez. Le SAST (Static Application Security Testing) analyse le code source à la recherche de failles ; le DAST (Dynamic Application Security Testing) attaque l'application en fonctionnement. Ajoutez des tests d'intrusion réguliers pour confronter vos défenses à un attaquant réel.
Enfin, la réduction de la surface d'attaque diminue mécaniquement le nombre de cibles exploitables. Moins d'endpoints exposés, moins de dépendances, moins de ports ouverts : chaque composant retiré est une faille potentielle en moins. Le modèle de menaces sur les dépendances du SOCLE détaille ce volet côté chaîne logicielle.
À retenir
Section intitulée « À retenir »-
L'exploitation est le point de bascule où l'attaquant obtient une exécution de code réelle sur le système.
-
Les vulnérabilités connues non corrigées sont la première cause d'intrusion, loin devant les zero-day : le patching rapide prime.
-
La zero-day est rare et coûteuse, réservée aux profils avancés ; ne pas en faire une obsession qui masque les failles évidentes.
-
La fenêtre d'exposition est le levier défensif le plus rentable : plus elle est courte, moins l'attaquant a de chances.
-
Les indicateurs de compromission permettent de détecter une exploitation même sans signature, notamment face aux failles inconnues.
-
La défense en profondeur combine patching, contrôle d'exécution, durcissement, tests et réduction de surface : aucune couche ne suffit seule.
-
Cette phase alimente le socle applicatif : le modèle de menaces applicatif du SOCLE traduit ces risques en exigences concrètes à prouver.