Chaque compétition Capture The Flag organise ses défis en catégories CTF comme l'exploitation web, la cryptographie et la forensique. Chaque catégorie teste des compétences de sécurité différentes, et savoir à quoi s'attendre vous aide à vous préparer plus rapidement et à résoudre les défis plus efficacement.
Ce guide détaille chaque grande catégorie CTF avec des exemples concrets, les prérequis nécessaires et les outils recommandés. Que vous choisissiez votre premier défi ou décidiez quelle compétence développer ensuite, vous saurez exactement où concentrer vos efforts.
Qu'est-ce que les catégories CTF ?
Les catégories CTF sont les regroupements par compétences utilisés pour organiser les défis dans les compétitions CTF de type Jeopardy. La plupart des compétitions utilisent les mêmes catégories principales : exploitation web, cryptographie, forensique, rétro-ingénierie, exploitation binaire et OSINT/divers. Chaque catégorie correspond directement à des compétences recherchées en cybersécurité.
Dans un CTF Jeopardy classique, vous voyez un tableau de défis classés par catégorie et par difficulté. Vous choisissez un défi, le résolvez pour extraire un "flag" caché (une chaîne de texte comme flag{y0u_f0und_1t}), et le soumettez pour obtenir des points. Les défis plus difficiles rapportent davantage, et vous pouvez les aborder dans n'importe quel ordre.
Si vous débutez complètement dans les CTF, commencez par notre guide complet pour débutants pour comprendre le fonctionnement des compétitions. Cet article se concentre spécifiquement sur le contenu de chaque catégorie et comment développer vos compétences dans chacune d'elles.
Pourquoi les catégories comptent : La plupart des débutants perdent du temps en passant aléatoirement d'un défi à l'autre. Comprendre les catégories CTF vous permet de vous concentrer sur un domaine, de prendre de l'élan et de développer une véritable expertise plutôt qu'une connaissance superficielle de tout.
Comparaison de toutes les catégories CTF
Utilisez ce tableau de référence rapide pour comparer chaque catégorie CTF avant de plonger dans les descriptions détaillées ci-dessous.
| Catégorie | Difficulté | Compétences clés | Outils principaux | Carrière associée |
|---|---|---|---|---|
| Exploitation web | Débutant | HTML, HTTP, JavaScript | Burp Suite, DevTools du navigateur | Pentesteur, Ingénieur AppSec |
| Cryptographie | Débutant à intermédiaire | Mathématiques, Python, reconnaissance de patterns | CyberChef, Python (pycryptodome) | Cryptanalyste, Ingénieur sécurité |
| Forensique & stéganographie | Débutant à intermédiaire | Ligne de commande Linux, réseau, systèmes de fichiers | Wireshark, Volatility, binwalk | Analyste DFIR, Répondant aux incidents |
| Rétro-ingénierie | Intermédiaire à avancé | Programmation C, bases de l'assembleur | Ghidra, GDB + pwndbg | Analyste malware, Chercheur en vulnérabilités |
| Exploitation binaire (Pwn) | Avancé | C, organisation de la mémoire, assembleur | pwntools, GDB + pwndbg | Développeur d'exploits, Chercheur en sécurité |
| OSINT & divers | Débutant | Méthodes de recherche, esprit critique | Moteurs de recherche, exiftool, Python | Analyste en renseignement sur les menaces |
Exploitation web : la catégorie CTF la plus accessible aux débutants
L'exploitation web est la catégorie CTF la plus populaire et le meilleur point de départ pour les débutants. Les défis consistent à trouver et exploiter des vulnérabilités dans des applications web : SQL injection, cross-site scripting (XSS), contournement d'authentification et références directes non sécurisées (IDOR).
Pourquoi est-elle accessible aux débutants ? Parce que vous utilisez déjà des applications web tous les jours. Vous comprenez les navigateurs, les formulaires et les URL. Les défis web s'appuient sur cette familiarité et vous apprennent à voir ces technologies du point de vue d'un attaquant.
Ce que vous rencontrerez
- SQL injection : Manipulation de requêtes de base de données via les champs de saisie pour extraire des données ou contourner l'authentification
- Cross-site scripting (XSS) : Injection de JavaScript dans des pages web pour voler des cookies ou rediriger les utilisateurs
- Contournement d'authentification : Découverte de failles dans les systèmes de connexion, la gestion des sessions ou les contrôles d'accès
- Server-side request forgery (SSRF) : Inciter les serveurs à effectuer des requêtes vers des ressources internes
- Directory traversal : Accès à des fichiers en dehors du répertoire prévu par manipulation de chemin
Exemple : résoudre un défi web basique
Imaginez qu'un défi présente une page de connexion. Votre raisonnement pourrait être le suivant : inspecter le code source HTML pour trouver des commentaires ou des champs cachés, vérifier les identifiants par défaut, tester une injection SQL basique dans le champ nom d'utilisateur (' OR 1=1 --), et examiner les cookies pour une manipulation de session. Les défis web récompensent les tests systématiques plutôt que les devinettes.
Prérequis et outils
Vous avez besoin d'une compréhension basique du HTML, des cycles requête/réponse HTTP, et de la communication entre navigateurs et serveurs. Pour les outils, commencez par les DevTools du navigateur (intégrés à Chrome et Firefox) pour inspecter les requêtes et modifier les éléments de la page, et Burp Suite Community Edition pour intercepter et modifier le trafic HTTP. Le OWASP Top Ten est votre référence essentielle pour comprendre les vulnérabilités web les plus courantes.
Le cours Web Attacks de HackerDNA couvre ces techniques étape par étape avec des labs pratiques, ce qui en fait l'un des moyens les plus rapides pour se familiariser avec les défis d'exploitation web.
Cryptographie : décoder et casser les chiffrements
Les défis de cryptographie testent votre capacité à casser ou analyser des schémas de chiffrement, d'encodage et de hachage. Ils vont de simples puzzles d'encodage qui prennent quelques minutes à des attaques mathématiques complexes nécessitant une compréhension approfondie des algorithmes cryptographiques modernes.
Les défis crypto pour débutants impliquent généralement la reconnaissance et le décodage d'encodages courants comme Base64, hexadécimal ou ROT13. À mesure que la difficulté augmente, vous rencontrerez des chiffrements classiques (César, Vigenère, substitution), puis des attaques modernes sur RSA, AES ou les fonctions de hachage.
Ce que vous rencontrerez
- Reconnaissance d'encodage : Identification de Base64, hexadécimal, binaire, encodage URL ou chaînes d'encodage multi-couches
- Chiffrements classiques : Chiffrement de César, chiffrement de Vigenère, chiffrements par substitution et par transposition
- Attaques crypto modernes : RSA avec des paramètres faibles, AES en mode ECB, collisions de hachage et attaques par oracle de remplissage
- Cassage de hachage : Identification des types de hachage et cassage avec des wordlists ou par force brute
Exemple : résoudre une chaîne d'encodage
Un défi vous donne une chaîne : NTI2Zjc1NzQ3YjY2NmM2MTY3N2I=. Vous reconnaissez le = final comme un padding Base64, vous décodez pour obtenir 526f75746b666c61677b, vous reconnaissez cela comme de l'hexadécimal, vous décodez à nouveau et trouvez le flag. Cette approche en couches est courante dans les défis crypto pour débutants. La compétence clé est de reconnaître les patterns d'encodage à chaque étape.
Prérequis et outils
Commencez par des concepts mathématiques de base et la capacité à reconnaître les formats d'encodage courants. CyberChef est votre meilleur allié : il vous permet d'enchaîner visuellement les opérations de décodage et d'expérimenter rapidement. Python est indispensable pour écrire des scripts de déchiffrement personnalisés, notamment la bibliothèque pycryptodome pour les attaques crypto modernes.
Forensique et stéganographie : trouver les preuves cachées
Les défis de forensique vous placent dans le rôle d'un enquêteur numérique. Vous analysez des fichiers, des images disque, des dumps mémoire ou des captures réseau pour découvrir des informations cachées. La stéganographie, la pratique consistant à dissimuler des données dans d'autres fichiers comme des images ou de l'audio, est souvent regroupée dans cette catégorie.
Ces défis enseignent des compétences directement transposables aux carrières en réponse aux incidents et en forensique numérique. Vous apprenez à examiner les preuves méthodiquement et à extraire des données que quelqu'un a tenté de dissimuler.
Ce que vous rencontrerez
- Analyse de fichiers : Identification des types de fichiers, examen des métadonnées avec
exiftool, et recherche de chaînes cachées avec la commandestrings - Stéganographie : Extraction de données cachées dans les pixels d'images, les fréquences audio ou l'espace résiduel des fichiers à l'aide d'outils comme
steghide,zstegetbinwalk - Forensique réseau : Analyse de captures de paquets (fichiers .pcap) dans Wireshark pour reconstituer des conversations, trouver des fichiers transférés ou identifier du trafic suspect
- Forensique mémoire : Examen de dumps RAM avec Volatility pour trouver des processus en cours, des connexions réseau et des artefacts de malware
- Forensique disque : Récupération de fichiers supprimés, analyse des structures de systèmes de fichiers et examen d'images disque
Exemple : analyser une image suspecte
Un défi vous fournit un fichier JPEG. Vos premières étapes : exécuter file image.jpg pour vérifier que le type de fichier correspond à son extension. Utiliser exiftool image.jpg pour vérifier les métadonnées à la recherche de commentaires cachés. Essayer strings image.jpg pour trouver du texte lisible intégré dans les données binaires. Exécuter binwalk image.jpg pour vérifier la présence de fichiers cachés à l'intérieur. Chaque outil révèle une couche différente, et le flag peut se trouver n'importe où.
Prérequis et outils
Une aisance avec la ligne de commande Linux est essentielle car la plupart des outils de forensique fonctionnent en ligne de commande. Les outils clés incluent Wireshark pour l'analyse réseau, Volatility pour la forensique mémoire, binwalk pour l'extraction de fichiers intégrés, et exiftool pour l'analyse des métadonnées. Vous n'avez pas besoin de tout installer d'avance : commencez par les commandes basiques d'analyse de fichiers et ajoutez des outils spécialisés au fur et à mesure que vous rencontrez des défis qui en nécessitent.
Rétro-ingénierie : comprendre le fonctionnement des programmes
Les défis de rétro-ingénierie (reverse engineering) vous donnent un programme compilé et vous demandent de comprendre ce qu'il fait sans avoir le code source. Vous devrez peut-être trouver un mot de passe vérifié par le programme, comprendre un algorithme qu'il implémente, ou contourner une vérification de licence. Cette catégorie vous apprend à raisonner au niveau machine et à comprendre comment les logiciels fonctionnent réellement en profondeur.
Ce que vous rencontrerez
- Analyse statique : Lecture du code désassemblé ou décompilé sans exécuter le programme. Des outils comme Ghidra convertissent le code machine en pseudocode lisible de type C.
- Analyse dynamique : Exécution du programme dans un débogueur (GDB, x64dbg) pour observer son comportement, poser des points d'arrêt et inspecter les valeurs en mémoire à l'exécution
- Reconstruction d'algorithme : Compréhension des routines de chiffrement, d'obfuscation ou de validation personnalisées en traçant les instructions assembleur
- Techniques anti-débogage : Contournement des vérifications que les programmes utilisent pour détecter et résister à l'analyse
Prérequis et outils
Une compréhension basique de la programmation C et de la compilation du code source en binaire est très utile. Vous n'avez pas besoin de maîtriser le langage assembleur avant de commencer, mais une familiarité avec des concepts comme les registres, la pile et les appels de fonctions rend les défis beaucoup plus abordables. Ghidra (gratuit, développé par la NSA) est l'outil de référence pour décompiler les binaires, et GDB avec l'extension pwndbg gère l'analyse dynamique. Consultez notre guide des outils CTF essentiels pour les instructions d'installation.
Évaluation honnête : La rétro-ingénierie a une courbe d'apprentissage plus raide que les défis web ou crypto. La plupart des débutants trouvent cela frustrant au début. Commencez par des programmes "crackme" simples sur des plateformes comme les défis HackerDNA avant de tenter la rétro-ingénierie en CTF compétitif.
Exploitation binaire (Pwn) : les défis CTF avancés
L'exploitation binaire, souvent appelée "pwn" dans les communautés CTF, est largement considérée comme la catégorie la plus difficile. Ces défis vous demandent de trouver et d'exploiter des vulnérabilités de corruption de mémoire dans des programmes compilés afin de prendre le contrôle de l'exécution. La récompense pour maîtriser cette catégorie est significative : les compétences en exploitation binaire sont parmi les plus valorisées en recherche de sécurité professionnelle et en tests d'intrusion.
Ce que vous rencontrerez
- Buffer overflows : Écriture au-delà des limites d'un tampon pour écraser les adresses de retour et rediriger l'exécution
- Vulnérabilités de format string : Exploitation de l'utilisation incorrecte des fonctions de type
printf()pour lire ou écrire en mémoire de manière arbitraire - Return-oriented programming (ROP) : Chaînage de petits fragments de code déjà présents en mémoire pour construire des exploits complexes sans injecter de nouveau code
- Exploitation du heap : Manipulation de l'allocation dynamique de mémoire pour obtenir l'exécution de code
Prérequis et outils
Vous avez besoin de solides connaissances en programmation C, d'une compréhension de l'organisation de la mémoire (pile, heap, segments de code), et d'une familiarité avec le fonctionnement des appels et retours de fonctions au niveau assembleur. La bibliothèque Python pwntools est indispensable pour écrire des exploits, et GDB avec pwndbg est votre environnement de débogage principal.
Gardez cela pour plus tard. L'exploitation binaire s'appuie sur les compétences en rétro-ingénierie. Maîtrisez d'abord les fondamentaux de la rétro-ingénierie, puis apprenez la gestion de la mémoire en C, puis attaquez votre premier buffer overflow. Se précipiter dans le pwn sans les prérequis mène à de la frustration et du temps perdu.
OSINT et défis divers
L'OSINT (Open Source Intelligence) et les défis divers forment une catégorie fourre-tout qui teste la créativité, les compétences de recherche et la résolution de problèmes en dehors des domaines de sécurité traditionnels. Les défis OSINT vous demandent de trouver des informations à l'aide de sources publiques, tandis que les défis divers incluent tout, des puzzles de scripting aux problèmes de logique et de culture générale.
Ce que vous rencontrerez
- Enquêtes OSINT : Recherche d'informations sur une personne, un lieu ou une organisation à l'aide de moteurs de recherche, réseaux sociaux et registres publics
- Google dorking : Utilisation d'opérateurs de recherche avancés (
site:,filetype:,inurl:) pour trouver des informations spécifiques indexées par les moteurs de recherche - Analyse de métadonnées : Extraction de coordonnées GPS, noms d'auteurs ou horodatages à partir d'images et de documents
- Défis de scripting : Écriture de code pour résoudre des problèmes mathématiques, interagir avec des API ou automatiser des tâches répétitives dans des délais impartis
- Puzzles de logique : Défis qui testent la pensée latérale plutôt que les connaissances techniques en sécurité
Exemple : enquête OSINT
Un défi vous donne une photo et vous demande d'identifier le lieu. Vous examinez les métadonnées de l'image à la recherche de coordonnées GPS. Si elles ont été supprimées, vous cherchez des indices visuels : panneaux de signalisation, architecture des bâtiments, langue sur les devantures de magasins, types de végétation. Vous utilisez la recherche d'image inversée et des outils comme Google Maps Street View pour localiser l'endroit. Les défis OSINT récompensent l'attention aux détails et les méthodes de recherche créatives.
Prérequis et outils
L'OSINT ne nécessite aucune configuration technique particulière, juste de la curiosité et une réflexion systématique. Des extensions de navigateur pour la recherche d'image inversée, exiftool pour les métadonnées, et des scripts Python basiques pour l'automatisation sont tout ce dont vous avez besoin. Cette catégorie est un excellent moyen de gagner en confiance car les compétences semblent intuitives et les défis sont souvent satisfaisants à résoudre.
Par quelle catégorie CTF devriez-vous commencer ?
La meilleure catégorie de départ dépend de votre parcours. Voici un cadre de décision pour vous aider à choisir :
| Votre parcours | Commencez par | Pourquoi |
|---|---|---|
| Développeur web | Exploitation web | Vos connaissances en HTML/JS/HTTP vous donnent un avantage immédiat |
| IT ou administrateur système | Forensique | Vous connaissez déjà les réseaux et les systèmes de fichiers |
| Étudiant en maths ou informatique | Cryptographie | La pensée mathématique se transpose directement aux défis crypto |
| Programmeur (C/C++) | Rétro-ingénierie | Comprendre le code compilé vous donne une longueur d'avance |
| Débutant complet | Exploitation web | Barrière d'entrée la plus basse, le plus de ressources disponibles |
Parcours de progression recommandé
Quel que soit votre parcours, cette progression fonctionne bien pour développer un ensemble complet de compétences CTF :
- Exploitation web + OSINT Commencez ici. Les défis web développent la pensée sécurité fondamentale, et l'OSINT renforce la confiance avec des victoires rapides. Visez plus de 20 défis résolus avant de passer à la suite.
- Cryptographie + Forensique Ajoutez ces catégories une fois à l'aise avec le web. La crypto affine la pensée analytique, et la forensique enseigne la méthodologie d'investigation. Ces catégories se complètent bien.
- Rétro-ingénierie Abordez la rétro-ingénierie après avoir construit des bases dans les domaines précédents. Commencez par des défis crackme simples et progressez vers l'analyse de binaires plus complexes.
- Exploitation binaire Seulement une fois à l'aise avec la rétro-ingénierie. Le pwn s'appuie directement sur les compétences en reverse engineering et nécessite une compréhension approfondie de la mémoire et de l'assembleur.
PicoCTF est une excellente plateforme pour cette progression car elle propose des défis dans chaque catégorie classés par difficulté. Commencez par les défis les plus faciles dans votre catégorie choisie et progressez graduellement.
Questions fréquentes sur les catégories CTF
Quelles sont les principales catégories CTF ?
Les six principales catégories CTF sont l'exploitation web, la cryptographie, la forensique, la rétro-ingénierie, l'exploitation binaire (pwn) et l'OSINT/divers. La plupart des compétitions CTF de type Jeopardy utilisent ces mêmes catégories, bien que certains événements ajoutent des catégories spécialisées comme le hacking matériel, la sécurité blockchain ou le machine learning.
Quelle catégorie CTF est la meilleure pour les débutants ?
L'exploitation web est la meilleure catégorie CTF pour les débutants car vous utilisez déjà des navigateurs web et comprenez les formulaires, les URL et le HTML basique. L'OSINT est un autre excellent point de départ car elle repose sur les compétences de recherche et la pensée créative plutôt que sur des connaissances techniques approfondies. Ces deux catégories vous permettent de marquer des points rapidement tout en développant une intuition de sécurité fondamentale.
Quelle est la catégorie CTF la plus difficile ?
L'exploitation binaire (pwn) est largement considérée comme la catégorie CTF la plus difficile. Elle nécessite de solides connaissances en programmation C, gestion de la mémoire, langage assembleur et mitigations d'exploits modernes comme ASLR et les stack canaries. La plupart des joueurs CTF expérimentés recommandent de maîtriser les fondamentaux de la rétro-ingénierie avant de tenter les défis pwn.
Quelle est la différence entre pwn et rétro-ingénierie en CTF ?
La rétro-ingénierie se concentre sur la compréhension de ce que fait un programme en analysant son code compilé sans accès au code source. L'exploitation binaire (pwn) va plus loin : après avoir compris le programme, vous trouvez des vulnérabilités de corruption de mémoire et écrivez des exploits pour détourner l'exécution. Le pwn s'appuie directement sur les compétences en rétro-ingénierie, c'est pourquoi l'ordre d'apprentissage recommandé est d'abord la rétro-ingénierie, puis l'exploitation binaire.
De quels outils ai-je besoin pour commencer les défis CTF ?
Les outils nécessaires dépendent de la catégorie. Pour l'exploitation web, commencez par les DevTools du navigateur et Burp Suite Community Edition. Pour la cryptographie, utilisez CyberChef et Python. Les défis de forensique nécessitent Wireshark, exiftool et binwalk. La rétro-ingénierie demande Ghidra et GDB. Vous n'avez pas besoin de tous les outils d'un coup : installez-les au fur et à mesure que vous rencontrez des défis dans chaque catégorie.
Pratiquez de manière éthique et légale
- Pratiquez uniquement sur des systèmes autorisés. Les plateformes CTF, les labs personnels et les environnements explicitement autorisés sont les seules cibles acceptables. Ne testez jamais des techniques sur des systèmes que vous ne possédez pas ou pour lesquels vous n'avez pas d'autorisation écrite.
- Les compétences CTF servent la défense. Les techniques apprises en CTF vous aident à comprendre la façon de penser des attaquants afin de construire de meilleures défenses et de mener des évaluations de sécurité autorisées.
- Respectez les règles de la compétition. Ne partagez pas les flags, n'attaquez pas l'infrastructure de la compétition et n'interférez pas avec les autres participants. Ces règles existent pour que les CTF restent équitables et éducatifs.
- Signalez les vulnérabilités de manière responsable. Si vous découvrez une vraie vulnérabilité en dehors d'un CTF, suivez les pratiques de divulgation responsable. N'exploitez jamais de vulnérabilités pour un gain personnel.
Commencez à pratiquer les catégories CTF dès aujourd'hui
Chaque catégorie CTF enseigne des compétences qui comptent dans les carrières réelles en cybersécurité. L'exploitation web vous apprend à trouver des vulnérabilités qui protègent des millions d'utilisateurs. La forensique enseigne les méthodes d'investigation utilisées en réponse aux incidents. Même la cryptographie et la rétro-ingénierie, les catégories les plus exigeantes, développent la compréhension technique approfondie qui distingue les analystes juniors des ingénieurs sécurité seniors.
L'essentiel est de commencer par une catégorie, de gagner en confiance en résolvant 15 à 20 défis, puis de vous étendre à la suivante. N'essayez pas de tout apprendre en même temps. Choisissez la catégorie CTF qui correspond à votre parcours, trouvez une plateforme d'entraînement, et résolvez votre premier défi dès aujourd'hui.
Vos prochaines étapes :
- Choisissez votre catégorie de départ en utilisant le tableau de décision ci-dessus
- Commencez à vous entraîner sur la bibliothèque de défis HackerDNA avec des défis dans toutes les catégories CTF
- Suivez votre progression et visez 3 à 5 défis par semaine dans différentes catégories
- Participez à une compétition sur CTFtime une fois que vous êtes à l'aise avec au moins deux catégories
Chaque expert a commencé comme un débutant qui a résolu un seul défi. Lancez-vous dans le hacking éthique et découvrez quelle catégorie CTF deviendra votre spécialité.