Entre un défi CTF qui vous prend deux heures et un autre réglé en cinq minutes, la différence tient souvent à un seul outil
que vous ne connaissiez pas : zsteg sur un PNG suspect, l'opération Magic de CyberChef sur une chaîne incompréhensible,
strings sur un binaire avant même d'ouvrir Ghidra. Cette liste d'outils CTF est classée par catégorie
de défi, avec la première commande que vous taperez vraiment pour chacun.
Tout est gratuit et presque tout est livré avec Kali Linux. Vous débutez en CTF ? Lisez d'abord notre guide CTF pour débutants. Et quand vous voudrez tester ces outils, chaque défi de la bibliothèque de défis HackerDNA tourne dans le navigateur, sans VPN à configurer.
TL;DR : Les outils CTF qui comptent le plus sont gratuits : DevTools du navigateur, Burp Suite Community et CyberChef pour le web et les encodages, file, strings, binwalk et steghide pour la forensique, Ghidra pour le reverse et pwntools pour l'exploitation. Kali Linux les fournit presque tous. Maîtrisez un outil par catégorie avant d'en ajouter d'autres.
Que sont les outils CTF ?
Les outils CTF sont des applications logicielles et des utilitaires conçus pour aider à résoudre les défis Capture The Flag. Ceux-ci vont de simples convertisseurs d'encodage à des suites sophistiquées de rétro-ingénierie. Le bon outil peut transformer un défi de plusieurs heures en une résolution de cinq minutes.
Les compétitions CTF testent les compétences dans plusieurs domaines : sécurité web, cryptographie, forensics, rétro-ingénierie, exploitation binaire et OSINT. Chaque catégorie nécessite des outils spécialisés. Un défi d'exploitation web peut nécessiter un proxy HTTP, tandis qu'un défi de forensics requiert des utilitaires d'analyse de fichiers.
La bonne nouvelle : la plupart des outils CTF essentiels sont gratuits et open source. Beaucoup sont préinstallés sur des distributions Linux axées sur la sécurité comme Kali Linux. Vous n'avez pas besoin de logiciels coûteux pour concourir efficacement.
Configuration de votre environnement CTF
Avant d'installer des outils individuels, configurez un environnement CTF approprié. La fondation est aussi importante que les outils eux-mêmes.
Option 1 : Kali Linux (Recommandé)
Kali Linux est une distribution basée sur Debian conçue pour les tests d'intrusion et la recherche en sécurité. Elle est livrée avec des centaines d'outils préinstallés, ce qui en fait le choix le plus populaire pour les compétiteurs CTF.
- VirtualBox/VMware : Exécutez Kali comme machine virtuelle sur votre OS principal. Allouez au moins 4 Go de RAM et 50 Go de disque.
- WSL2 : Les utilisateurs Windows peuvent exécuter Kali dans Windows Subsystem for Linux pour un accès léger.
- Bare metal : Installez directement sur du matériel dédié pour les meilleures performances.
Option 2 : ParrotOS Security
ParrotOS est une alternative plus légère à Kali avec des outils similaires. Il utilise moins de ressources, ce qui le rend meilleur pour le matériel plus ancien ou les petites machines virtuelles.
Option 3 : Configuration personnalisée
Vous pouvez construire un environnement CTF sur n'importe quelle distribution Linux en installant les outils manuellement. Cela vous donne plus de contrôle mais nécessite plus de temps de configuration. Ubuntu ou Debian fonctionnent bien comme systèmes de base.
Premières étapes essentielles après la configuration :
- Exécutez
sudo apt update && sudo apt upgradepour obtenir les derniers paquets - Installez Python 3 pip :
sudo apt install python3-pip - Décompressez la wordlist RockYou, que Kali fournit compressée :
sudo gunzip /usr/share/wordlists/rockyou.txt.gz - Créez un répertoire
~/ctfpour organiser les fichiers de défis - Configurez un système de prise de notes (Obsidian, Notion ou de simples fichiers markdown)
Outils d'exploitation web
Les défis web sont la catégorie CTF la plus courante et souvent la plus accessible pour les débutants. Ces outils vous aident à trouver et exploiter les vulnérabilités dans les applications web.
Burp Suite
Burp Suite est la plateforme de test de sécurité des applications web de référence dans l'industrie. L'édition Community gratuite gère parfaitement la plupart des défis CTF. Utilisez-le pour intercepter, modifier et rejouer des requêtes HTTP.
- Proxy : Interceptez le trafic du navigateur pour voir exactement ce qui est envoyé
- Repeater : Modifiez et renvoyez des requêtes pour tester différents payloads
- Intruder : Automatisez les attaques comme le brute forcing de paramètres (bridé en vitesse dans la Community Edition gratuite)
- Decoder : Encodez et décodez des données dans divers formats
Installation : Préinstallé sur Kali. Sinon, téléchargez depuis PortSwigger.
Outils de développement du navigateur
Chaque navigateur dispose d'outils de développement intégrés essentiels pour les défis CTF web. Apprenez les raccourcis clavier pour Chrome (F12) ou Firefox (F12).
- Éléments : Inspectez et modifiez HTML/CSS en temps réel
- Console : Exécutez JavaScript et voyez les erreurs
- Réseau : Surveillez toutes les requêtes et réponses HTTP
- Stockage : Affichez et modifiez les cookies, localStorage, sessionStorage
SQLMap
SQLMap automatise la détection et l'exploitation des injections SQL. Pointez-le sur un paramètre vulnérable, et il s'occupe du reste, y compris l'énumération de la base de données et l'extraction de données.
# Test basique d'injection SQL
sqlmap -u "http://target.example/page?id=1" --dbs
# Requête POST avec données de formulaire
sqlmap -u "http://target.example/login" --data="user=admin&pass=test" --dbs
Outils web supplémentaires
Nikto
Scanner de serveur web qui vérifie les fichiers dangereux, les logiciels obsolètes et les mauvaises configurations.
nikto -h http://target.example
Gobuster / Dirbuster
Outils de brute-forcing de répertoires et fichiers pour trouver du contenu caché sur les serveurs web.
gobuster dir -u http://target.example -w /usr/share/wordlists/dirb/common.txt
curl / wget
Clients HTTP en ligne de commande pour des requêtes et téléchargements rapides. Essentiels pour le scripting.
curl -X POST http://target.example/api -d '{"key":"value"}'
Postman
Outil GUI pour les tests d'API. Plus facile que curl pour les interactions d'API complexes.
Maîtrisez ces techniques avec une pratique concrète dans le cours de sécurité des applications web, qui couvre l'injection SQL, XSS, CSRF et plus avec des exercices pratiques.
Outils de cryptographie
Les défis crypto vont de simples puzzles d'encodage à des attaques mathématiques complexes. Ces outils vous aident à identifier, analyser et casser divers schémas de chiffrement.
CyberChef
CyberChef est le "couteau suisse" pour la manipulation de données. Cet outil web permet de chaîner des opérations d'encodage, décodage, chiffrement, compression et analyse de données. Ajoutez gchq.github.io/CyberChef immédiatement à vos favoris.
CyberChef excelle à identifier les encodages inconnus. Si vous voyez du texte étrange, glissez-le dans CyberChef et essayez l'opération "Magic", qui détecte et décode automatiquement les formats courants. Notre guide complet sur comment utiliser CyberChef couvre l'interface, les recettes en couches et les opérations Flow control que la plupart des débutants ne trouvent jamais.
- Encodage/décodage Base64, hex, URL
- ROT13 et autres variantes de chiffrement de César
- Opérations XOR avec devinette de clé
- Hachage (MD5, SHA1, SHA256)
- Compression et décompression
Pour un décodage ponctuel, pas besoin de recette : notre décodeur Base64 gratuit s'occupe de la couche la plus courante des défis crypto pour débutants.
Hashcat et John the Ripper
Lorsque vous rencontrez des hachages de mots de passe, ces outils les cassent en utilisant des listes de mots, des règles et des attaques par force brute. Hashcat exploite l'accélération GPU pour un cassage plus rapide.
# John the Ripper - casser un fichier shadow
john --wordlist=/usr/share/wordlists/rockyou.txt shadow.txt
# Hashcat - casser des hachages MD5
hashcat -m 0 -a 0 hashes.txt /usr/share/wordlists/rockyou.txt
Apprenez les techniques avancées de cassage dans notre cours de cassage de mots de passe.
dCode.fr
dCode.fr est une plateforme en ligne avec des solveurs pour des dizaines de chiffrements classiques : Vigenere, Playfair, Enigma, chiffrements par substitution, et plus. Lorsque vous identifiez un type de chiffrement, dCode a souvent un solveur automatique.
Bibliothèques de cryptographie Python
Pour les défis crypto personnalisés, Python avec les bonnes bibliothèques est essentiel :
- pycryptodome : Bibliothèque cryptographique complète
- gmpy2 : Arithmétique rapide de précision arbitraire pour les attaques RSA
- sympy : Mathématiques symboliques pour la théorie des nombres
- z3-solver : Solveur SMT pour les défis crypto basés sur les contraintes
# Installer les bibliothèques crypto
pip3 install pycryptodome gmpy2 sympy z3-solver
Astuce pro : Face à un chiffrement inconnu, vérifiez d'abord s'il s'agit d'un simple encodage (Base64, hex). Utilisez l'opération Magic de CyberChef. Si cela échoue, analysez la fréquence des lettres pour les chiffrements par substitution.
Outils de forensics et stéganographie
Les défis de forensics impliquent l'analyse de fichiers, d'images disque, de dumps mémoire et de captures réseau pour trouver des données cachées. La stéganographie traite spécifiquement des données cachées dans des images, de l'audio ou d'autres fichiers.
Bases de l'analyse de fichiers
file
Identifie les types de fichiers en analysant les octets magiques, pas les extensions.
file mystery_file
strings
Extrait le texte imprimable des fichiers binaires. Moyen rapide de trouver des messages cachés.
strings -n 8 file | grep -i flag
xxd / hexdump
Affichez le contenu brut des fichiers en hexadécimal. Essentiel pour comprendre les structures de fichiers.
xxd file | head -50
binwalk
Analyse et extrait les fichiers intégrés des binaires, firmware et images.
binwalk -e suspicious_image.png
Outils de stéganographie
La stéganographie cache des données dans des fichiers d'apparence innocente. Ces outils révèlent le contenu caché, et notre guide de la stéganographie détaille l'enchaînement de détection auquel ils appartiennent :
-
Steghide : extrait les données cachées dans les fichiers JPEG, BMP, WAV et AU. Essayez d'abord une passphrase vide (appuyez simplement sur Entrée), puis laissez stegseek la casser avec une wordlist en quelques secondes :
steghide extract -sf image.jpgpuisstegseek image.jpg rockyou.txt -
zsteg : Détecte les données cachées dans les fichiers PNG et BMP en utilisant diverses méthodes d'extraction de bits :
zsteg image.png - StegSolve : Analyseur d'images basé sur Java qui applique divers filtres et analyses de plan de bits. Essentiel pour la stéganographie visuelle.
- Audacity : Éditeur audio pour analyser les spectrogrammes. Les messages cachés apparaissent souvent visuellement dans la vue spectrogramme.
-
exiftool : Extrait les métadonnées des images, PDF et documents. Les flags se cachent parfois dans les données EXIF :
exiftool image.jpg
Forensics réseau
Wireshark est l'outil standard pour analyser les captures de paquets réseau (fichiers PCAP). Il affiche le trafic capturé dans un format lisible et vous permet de filtrer, rechercher et suivre les flux TCP.
# Filtres Wireshark utiles
http.request.method == "POST"
tcp contains "flag"
ip.addr == 192.168.1.1
Forensics mémoire
Volatility 3 (la commande vol) analyse les dumps mémoire des systèmes Windows, Linux et macOS. Il
peut extraire les processus en cours, les connexions réseau, l'historique des commandes et les fichiers présents en mémoire.
Volatility 2 et sa syntaxe --profile ne sont plus maintenus : ignorez les vieux writeups qui les utilisent.
# Identifier l'OS et sa version
vol -f memory.dmp windows.info
# Lister les processus en cours
vol -f memory.dmp windows.pslist
# Extraire les fichiers qu'un processus garde en mémoire
vol -f memory.dmp -o output/ windows.dumpfiles --pid 1234
Pratiquez ces techniques sur de vrais défis de forensique. Les défis de forensique et de stéganographie de HackerDNA mettent ces outils à l'épreuve sur de vrais fichiers.
Outils de rétro-ingénierie
Les défis de rétro-ingénierie fournissent des binaires compilés et vous demandent de comprendre leur logique pour trouver les flags. Cela nécessite d'analyser le code assembleur et le comportement du programme.
Ghidra
Ghidra est une suite de rétro-ingénierie gratuite et open source développée par la NSA. Elle comprend un puissant désassembleur et décompilateur qui convertit l'assembleur en pseudocode C lisible.
- Supporte les architectures x86, x64, ARM, MIPS et plus
- Le décompilateur produit du code lisible à partir de l'assembleur
- Support de scripting en Java et Python
- Alternative gratuite aux outils coûteux comme IDA Pro
Installation : Téléchargez depuis ghidra-sre.org. Nécessite un JDK 64 bits en version 21 ou supérieure.
radare2 et Cutter
radare2 (r2) est un puissant framework de rétro-ingénierie en ligne de commande. Cutter fournit une interface GUI qui rend r2 plus accessible aux débutants.
# Ouvrir un binaire dans radare2
r2 ./binary
# Commandes courantes
aaa # Analyser tout
pdf @ main # Afficher le désassemblage de la fonction main
s main # Aller à main
VV # Mode visuel graphique
Désassembleurs et décompilateurs
objdump
Désassembleur basique inclus dans la plupart des systèmes Linux.
objdump -d binary | less
gdb
Débogueur GNU pour l'analyse dynamique. Exécutez les binaires pas à pas.
gdb ./binary
ltrace / strace
Tracez les appels de bibliothèque et système. Moyen rapide de voir ce que fait un programme.
ltrace ./binary
jadx
Décompile les fichiers APK Android en code source Java.
Conseil débutant : Commencez par strings et ltrace
avant d'ouvrir des outils lourds comme Ghidra. De nombreux binaires CTF ont de simples
comparaisons de chaînes qui révèlent le flag sans analyse approfondie.
Outils d'exploitation binaire
Les défis d'exploitation binaire (pwn) impliquent de trouver et d'exploiter des vulnérabilités de corruption de mémoire comme les débordements de buffer et les bugs de chaînes de format. C'est une catégorie avancée nécessitant de solides connaissances en C et assembleur.
pwntools
pwntools est une bibliothèque Python conçue spécifiquement pour l'exploitation CTF. Elle simplifie la création de payloads, l'interaction avec les processus et la construction d'exploits.
from pwn import *
# Se connecter au défi distant
p = remote('challenge.ctf.example', 1337)
# Envoyer le payload avec padding
payload = b'A' * 64 + p64(0xdeadbeef)
p.sendline(payload)
# Recevoir le flag
print(p.recvall())
Installation : pip3 install pwntools
GDB avec pwndbg/GEF
GDB de base est difficile à utiliser pour l'exploitation. Installez pwndbg ou GEF (GDB Enhanced Features) pour les affichages de contexte, l'analyse du tas et les aides au développement d'exploits.
- pwndbg : github.com/pwndbg/pwndbg
- GEF : github.com/hugsy/gef
ROPgadget et ropper
Les exploits Return-Oriented Programming (ROP) nécessitent de trouver des gadgets dans les binaires. Ces outils découvrent automatiquement les gadgets ROP utilisables.
# Trouver tous les gadgets
ROPgadget --binary ./vuln
# Rechercher un gadget spécifique
ROPgadget --binary ./vuln --search "pop rdi"
checksec
Avant d'exploiter un binaire, vérifiez quelles protections sont activées. checksec (fourni avec pwntools sous la forme
pwn checksec) affiche RELRO, les canaris de pile, NX, PIE et les autres protections.
pwn checksec ./binary
# La sortie liste : Arch, RELRO, Stack, NX, PIE
Outils OSINT et de reconnaissance
Les défis Open Source Intelligence (OSINT) nécessitent de trouver des informations à partir de sources publiques. Les outils de reconnaissance aident également dans les défis impliquant la découverte de services ou de contenu cachés.
Recherche et découverte
-
Google Dorks : Opérateurs de recherche avancés pour trouver du contenu spécifique. Apprenez les opérateurs comme
site:,filetype:,intitle:,inurl:. - Shodan : Moteur de recherche pour les appareils connectés à Internet. Trouve des serveurs, webcams et appareils IoT.
- Wayback Machine : archive.org stocke des instantanés historiques de sites web. Trouvez du contenu supprimé.
- Recherche d'image inversée : Google Images, TinEye et Yandex aident à identifier les emplacements et les origines des images.
Reconnaissance réseau
Nmap
Le scanner réseau essentiel. Découvrez les hôtes, les ports ouverts et les services en cours d'exécution.
nmap -sC -sV -T4 target.example
dig / nslookup
Outils de recherche DNS pour découvrir les sous-domaines et les serveurs de messagerie.
dig target.example MX
whois
Informations d'enregistrement de domaine incluant les détails du propriétaire et les serveurs de noms.
whois target.example
subfinder / amass
Outils d'énumération de sous-domaines qui découvrent les sous-domaines cachés à partir de diverses sources.
subfinder -d target.example
La reconnaissance réseau est souvent la première étape dans les défis CTF qui impliquent de vraies machines plutôt que de simples applications web ou puzzles.
Python : Votre outil CTF le plus polyvalent
Python est sans doute l'outil le plus important dans l'arsenal de tout compétiteur CTF. Lorsque les outils existants ne résolvent pas votre problème, Python vous permet de construire des solutions personnalisées rapidement.
Bibliothèques essentielles
# Installer les bibliothèques CTF courantes
pip3 install requests beautifulsoup4 pwntools pycryptodome pillow
| Bibliothèque | Cas d'utilisation |
|---|---|
requests |
Requêtes HTTP et automatisation web |
pwntools |
Développement d'exploits et interaction binaire |
pycryptodome |
Opérations cryptographiques |
beautifulsoup4 |
Analyse HTML et web scraping |
Pillow |
Manipulation d'images pour les défis stégo |
z3-solver |
Résolution de contraintes pour la rétro-ingénierie |
angr |
Exécution symbolique pour l'analyse binaire |
Patterns Python courants
# Requête web rapide avec session
import requests
s = requests.Session()
r = s.post('http://target.example/login', data={'user': 'admin', 'pass': 'test'})
print(r.text)
# Brute force d'un paramètre
for i in range(1000):
r = requests.get(f'http://target.example/page?id={i}')
if 'flag' in r.text:
print(f'Trouvé à id={i}: {r.text}')
break
# Décodage XOR
def xor_bytes(data, key):
return bytes([b ^ key[i % len(key)] for i, b in enumerate(data)])
Construire votre boîte à outils CTF
N'installez pas tout d'un coup. Construisez votre boîte à outils CTF progressivement en fonction des défis que vous rencontrez. Les meilleurs outils pour CTF sont ceux que vous savez réellement utiliser. Voici une progression recommandée :
- Semaine 1 : Fondation Configurez une VM Kali Linux. Apprenez les DevTools du navigateur et CyberChef. Complétez quelques défis web débutants.
- Semaine 2 : Exploitation web Installez Burp Suite. Pratiquez l'interception de requêtes. Apprenez les bases de SQLMap.
- Semaine 3 : Forensics Maîtrisez file, strings, binwalk, exiftool. Installez steghide et zsteg pour la stéganographie d'images.
- Semaine 4 : Bases de la crypto Apprenez CyberChef en profondeur. Installez hashcat et pratiquez le cassage de hachages avec la liste RockYou.
- Mois 2 : Rétro-ingénierie Installez Ghidra. Commencez par de simples défis crackme. Apprenez l'assembleur x86 de base.
- Mois 3 : Exploitation binaire Installez pwntools et pwndbg. Étudiez les débordements de buffer. Pratiquez sur de simples défis pwn.
La surcharge d'outils est réelle. Avoir 50 outils que vous ne savez pas utiliser est pire que d'avoir 10 outils que vous avez maîtrisés. Concentrez-vous sur l'apprentissage approfondi de chaque outil avant d'en ajouter d'autres à votre arsenal.
Référence rapide : Boîte à outils CTF par catégorie
Utilisez ce tableau comme référence rapide pour votre boîte à outils CTF. Les outils essentiels vous aident à démarrer, tandis que les outils avancés vous aident à relever des défis plus difficiles.
| Catégorie | Outils essentiels | Outils avancés |
|---|---|---|
| Web | Burp Suite, DevTools, curl | SQLMap, Nikto, ffuf |
| Crypto | CyberChef, dCode.fr, hashcat | SageMath, z3-solver, gmpy2 |
| Forensics | file, strings, binwalk, exiftool | Volatility, Autopsy, FTK |
| Stégo | steghide, zsteg, StegSolve | Audacity, OpenStego, stegseek |
| Reversing | Ghidra, strings, ltrace | radare2, IDA Pro, angr |
| Pwn | pwntools, gdb+pwndbg, checksec | ROPgadget, one_gadget, libc-database |
| OSINT | Google, Wayback, whois | Shodan, Maltego, theHarvester |
Considérations légales et éthiques
Les outils CTF sont conçus pour la recherche en sécurité et les tests autorisés. Les utiliser de manière irresponsable ou illégale peut entraîner de graves conséquences.
Rappel critique : Utilisez ces outils uniquement sur des systèmes que vous possédez ou pour lesquels vous avez une autorisation écrite explicite de tester. Les plateformes CTF offrent des environnements légaux pour pratiquer. Ne scannez ou n'attaquez jamais de vrais systèmes sans autorisation.
- Les compétitions CTF offrent des environnements légaux et sûrs pour pratiquer les compétences de hacking
- L'utilisation d'outils d'exploitation contre des cibles non autorisées est illégale dans la plupart des pays
- De nombreux outils peuvent causer des dommages ou des perturbations s'ils sont utilisés avec négligence
- Respectez les règles de chaque plateforme CTF à laquelle vous participez
- Partagez les connaissances de manière responsable via des writeups après la fin des compétitions
Pratiquez en toute sécurité sur des plateformes autorisées comme HackerDNA, où vous pouvez utiliser tous ces outils légalement sur des machines intentionnellement vulnérables.
Questions fréquemment posées
Quel est le meilleur outil pour les débutants CTF ?
CyberChef est l'outil débutant le plus polyvalent. Il gère l'encodage, le décodage et la manipulation de données sans aucune installation. Associez-le aux DevTools du navigateur pour les défis web, et vous pouvez résoudre de nombreux problèmes CTF débutants.
Ai-je besoin de Kali Linux pour le CTF ?
Kali Linux n'est pas requis mais fortement recommandé. Il est livré avec la plupart des outils CTF préinstallés, économisant des heures de temps de configuration. Vous pouvez l'exécuter comme machine virtuelle aux côtés de votre OS habituel.
Les outils CTF sont-ils gratuits ?
La plupart des outils CTF essentiels sont gratuits et open source. Ghidra, Burp Suite Community, Wireshark et toute la boîte à outils Kali Linux sont gratuits. Des outils professionnels comme IDA Pro et Burp Suite Professional existent mais ne sont pas nécessaires pour les compétitions CTF.
Comment puis-je apprendre à utiliser ces outils ?
La meilleure façon d'apprendre les outils CTF est de résoudre des défis. Commencez par des plateformes adaptées aux débutants, lisez des writeups lorsque vous êtes bloqué et pratiquez de manière cohérente. Chaque outil devient intuitif après que vous l'ayez utilisé pour résoudre de vrais problèmes.
Quels outils utilisent les pentesters professionnels ?
Les testeurs d'intrusion professionnels utilisent bon nombre des mêmes outils couverts ici : Burp Suite, Nmap, Metasploit, Ghidra et scripts Python. La pratique CTF se traduit directement en compétences professionnelles. La principale différence réside dans la portée et la méthodologie, pas dans les outils.
Commencez à construire votre boîte à outils aujourd'hui
Les outils CTF ci-dessus couvrent toutes les catégories que vous rencontrerez, mais trois suffisent pour démarrer : les DevTools, CyberChef et un shell Linux. Ajoutez les autres la première fois qu'un défi en a vraiment besoin, et vous retiendrez comment ils fonctionnent.
Aujourd'hui : ajoutez CyberChef à vos favoris et résolvez un défi avec votre seul navigateur.
Cette semaine : résolvez cinq défis débutants avec uniquement les DevTools, Burp Suite et CyberChef.
Ce mois-ci : ajoutez les outils de forensique et de crypto au fil des défis qui les demandent.
Mettez votre boîte à outils à l'épreuve dans la bibliothèque de défis HackerDNA : commencez par le lab Capture the Flag 101 pour découvrir la plateforme, puis enchaînez les défis web, crypto et forensique dans votre navigateur. Commencez avec l'offre gratuite de HackerDNA, sans carte bancaire.
Plus de guides CTF :