Une commande, un mot de passe (bandit0), et vous voilà connecté à un vrai serveur Linux qui n'existe que pour être décortiqué. C'est ça, OverTheWire : une série de wargames gratuits où chaque niveau cache le mot de passe du suivant, et où la seule façon d'avancer est d'apprendre vraiment la ligne de commande.
Ce guide explique ce que sont les wargames OverTheWire, comment se connecter au niveau 0 de Bandit, ce qu'enseigne chaque étape de Bandit, dans quel ordre enchaîner les autres jeux et comment se débloquer sans lire de spoiler. Si le terminal est tout nouveau pour vous, le cours de bases du terminal Linux de HackerDNA couvre les commandes que Bandit attend, un chapitre pratique à la fois.
En bref : OverTheWire est une collection gratuite de wargames de sécurité, animée par des bénévoles. Commencez par Bandit en lançant ssh [email protected] -p 2220 avec le mot de passe bandit0. Les 34 niveaux de Bandit (bandit0 à bandit33) enseignent les bases de Linux, puis vous choisissez une voie : Natas pour la sécurité web, Krypton pour la cryptographie, ou Leviathan et Narnia en route vers l'exploitation de binaires. Notez chaque mot de passe trouvé : la progression n'est pas sauvegardée.
Qu'est-ce qu'OverTheWire ?
OverTheWire est un site gratuit, géré par une communauté, qui héberge des wargames de sécurité. Chaque jeu est une chaîne de niveaux sur un serveur partagé : vous vous connectez en SSH (ou, pour le jeu web Natas, vous ouvrez un site), vous trouvez le mot de passe du niveau suivant et vous vous reconnectez avec l'utilisateur suivant. Pas de compte, pas d'inscription, rien à installer.
Pas de classement, et personne pour vous tenir la main. Chaque page de niveau donne un objectif et suggère quelques commandes à étudier ; le reste se joue entre vous, les pages de manuel et le terminal. C'est précisément pour ça qu'OverTheWire figure en haut de notre liste de jeux de hacking qui enseignent de vraies compétences.
Pourquoi les wargames fonctionnent pour apprendre
Les wargames donnent un retour immédiat et honnête. Si le mot de passe fonctionne, vous avez compris le niveau. Sinon, vous expérimentez jusqu'à ce qu'il fonctionne, sur une machine que vous avez explicitement le droit de malmener. Cette boucle construit l'habitude dont tout métier de la sécurité a besoin : lire une sortie inconnue et comprendre ce qu'elle signifie.
Comment se connecter à OverTheWire Bandit (niveau 0)
Bandit tourne sur bandit.labs.overthewire.org, port SSH 2220 (et non le 22 par défaut). Le nom d'utilisateur et le mot de passe du niveau 0 sont tous deux bandit0 :
ssh [email protected] -p 2220
- Ouvrez un terminal. Linux et macOS intègrent un client SSH. Sous Windows 10 et 11, le client OpenSSH est inclus dans PowerShell et Windows Terminal ; PuTTY fonctionne aussi.
- Lancez la commande ci-dessus et tapez
bandit0à l'invite du mot de passe (rien ne s'affiche pendant la saisie, c'est normal). - Lisez la bannière, puis l'objectif du niveau suivant sur la page officielle de Bandit. Le passage du niveau 0 au niveau 1 vous demande de lire un fichier nommé
readmedans votre répertoire personnel. - Déconnectez-vous et reconnectez-vous avec l'utilisateur suivant via
exit(ou Ctrl+D), puisssh [email protected] -p 2220avec le mot de passe que vous venez de trouver. - Notez le mot de passe. OverTheWire ne sauvegarde pas la progression : si vous perdez un mot de passe, vous repartez de bandit0.
En pratique, le premier obstacle est rarement l'énigme. C'est le port : oubliez -p 2220 et la connexion expire tout simplement. Si vous jouez depuis une machine virtuelle et obtenez une erreur « broken pipe », la solution donnée par la page Bandit elle-même consiste à ajouter IPQoS throughput dans /etc/ssh/ssh_config, ou à passer la carte réseau de la VM en mode pont.
ls -la, find et grep pour retrouver le secret qu'il a caché, exactement les gestes que les premiers niveaux de Bandit font répéter.
Les niveaux de Bandit : ce qu'enseigne chaque étape
Bandit compte 34 niveaux jouables, de bandit0 à bandit33. Atteindre bandit33 termine le jeu (la page du niveau 34 indique simplement qu'il n'existe pas encore). Les niveaux se regroupent par compétence, et connaître le groupe vous dit quelles pages de manuel ouvrir :
| Niveaux | Ce que vous apprenez | Commandes à étudier |
|---|---|---|
| 0 | Se connecter en SSH sur un port non standard | ssh -p |
| 0 à 4 | Lire des fichiers récalcitrants : un fichier nommé -, des espaces dans les noms, des fichiers cachés | ls -a, cat, guillemets |
| 4 à 7 | Trouver un fichier précis par ses propriétés : lisible par un humain, taille, propriétaire, groupe | file, find, 2>/dev/null |
| 7 à 13 | Traitement de texte et encodages : lignes uniques, chaînes dans des données binaires, Base64, ROT13, le hexdump d'un fichier compressé de multiples fois | grep, sort, uniq, strings, base64, tr, xxd, gzip, bzip2, tar |
| 13 à 17 | Clés SSH et réseau : connexion avec une clé privée, dialogue avec des ports locaux, TLS, trouver le bon port dans une plage | ssh -i, nc, openssl s_client, nmap |
| 17 à 21 | Comparer des fichiers, une connexion qui vous éjecte, des binaires setuid, lancer un listener | diff, ssh avec une commande, nc -l |
| 21 à 25 | Tâches cron, lire et écrire de petits scripts shell, boucler sur un code PIN à 4 chiffres | /etc/cron.d, bash |
| 25 à 27 | S'échapper d'un shell de connexion restreint | man more, man vi |
| 27 à 32 | Git : clone, historique, branches, tags, push | git |
| 32 à 33 | Une dernière évasion de shell | sh, man |
Vous cherchez les mots de passe de Bandit ? Vous ne les trouverez pas ici. Les règles d'OverTheWire demandent aux auteurs de guides de ne pas publier d'identifiants, et les mots de passe changent de temps en temps, donc les listes qui circulent sont souvent périmées. Les objectifs ci-dessus et les pages de manuel suffisent pour résoudre chaque étape.
Tous les wargames OverTheWire dans l'ordre recommandé
L'ordre suggéré par OverTheWire est Bandit d'abord, puis au choix Natas, Krypton, Leviathan ou Narnia, puis Behemoth, Utumno et Maze. Chaque jeu SSH utilise son propre port sur <jeu>.labs.overthewire.org :
| Wargame | Thème | Connexion | Niveaux |
|---|---|---|---|
| Bandit | Linux et bases de la ligne de commande | SSH, port 2220 | 0-33 |
| Natas | Sécurité web côté serveur | Navigateur : natas0.natas.labs.overthewire.org | 0-34 |
| Krypton | Cryptographie classique | SSH, port 2231 | 0-6 |
| Leviathan | Explorer des binaires setuid, sans programmation | SSH, port 2223 | 0-7 |
| Narnia | Initiation à l'exploitation de binaires, code source fourni | SSH, port 2226 | 0-9 |
| Behemoth | Dépassements de tampon, conditions de course, élévation de privilèges | SSH, port 2221 | 0-8 |
| Utumno | Exploitation de binaires plus difficile | SSH, port 2227 | 0-8 |
| Maze | Exploitation et rétro-ingénierie dans gdb | SSH, port 2225 | 0-9 |
| Vortex | Long parcours mixte, de la programmation de sockets à l'exploitation | SSH, port 2228 | 0-26 |
| Manpage, Drifter, FormulaOne | Jeux spécialisés, pour après le parcours principal | SSH, ports 2224, 2230, 2232 | variable |
Natas : sécurité web
Natas n'utilise pas du tout SSH. Chaque niveau est un site à l'adresse http://natasX.natas.labs.overthewire.org, et vous commencez avec le nom d'utilisateur et le mot de passe natas0. Les premiers niveaux se résument à lire le code source de la page ; les suivants abordent robots.txt, les en-têtes HTTP et les cookies, l'inclusion de fichiers, l'injection de commandes, l'injection SQL à l'aveugle, les identifiants de session prévisibles, les failles d'upload de fichiers et la désérialisation PHP. Associez-le au cours sur les attaques web de HackerDNA pour la théorie derrière chaque classe de faille.
Krypton : cryptographie classique
Krypton va des encodages simples à la vraie cryptanalyse : Base64 et ROT13, puis César, les chiffrements par substitution cassés par analyse de fréquence, Vigenère et, pour finir, un chiffrement faible à clé répétée. Des chiffrements anciens, mais le réflexe d'attaquer la clé plutôt que les maths est exactement ce que testent les challenges de crypto modernes.
Leviathan : une transition en douceur
Noté 1/10 par ses auteurs, Leviathan et ses huit niveaux ne demandent « qu'un peu de bon sens et quelques connaissances des commandes *nix de base ». Vous examinez des programmes setuid avec des outils comme ltrace et strings, ce qui en fait la porte d'entrée la plus douce vers la rétro-ingénierie.
Narnia, Behemoth, Utumno et Maze : exploitation de binaires
C'est l'échelle de l'exploitation, notée de 2/10 (Narnia) à 5/10 (Maze). Narnia vous fournit le code source C de chaque niveau pour que vous repériez le bug et vous concentriez sur les dépassements de tampon et les chaînes de format. Behemoth ajoute les conditions de course et l'élévation de privilèges, Utumno est décrit comme « bien plus difficile que Leviathan et un peu plus difficile que Behemoth », et Maze suppose que vous viviez dans gdb.
Vortex et les jeux spécialisés
Vortex est un parcours de 27 niveaux qui s'ouvre sur la programmation réseau et monte jusqu'à l'exploitation. Manpage porte sur les pièges de la programmation C que l'on peut trouver dans les pages de manuel, Drifter marche dans les pas de Vortex, et FormulaOne vous demande de deviner quel autre jeu héberge le code source de son premier niveau. Gardez-les pour après le parcours principal.
Comment se débloquer sans spoiler
- Lisez d'abord le manuel.
man findrépond à l'essentiel des niveaux 4 à 7. Si une commande n'a pas de page de manuel, c'est sans doute une commande interne du shell : essayezhelp cd. - Pensez en pipes. Beaucoup de niveaux tombent avec une seule ligne enchaînée comme
sort data.txt | uniq -c | sort -n. Construisez-la une commande à la fois et vérifiez la sortie à chaque étape. - Travaillez dans un répertoire temporaire privé. Les serveurs sont partagés : créez-en un avec
mktemp -dplutôt qu'avec un nom devinable, et supprimez-le à la fin, comme le demandent les règles. - Bataillez 30 minutes, puis prenez un indice, pas une solution complète. Relisez les commandes suggérées pour le niveau, ou demandez sur le chat OverTheWire en précisant le jeu et le niveau. Une solution toute faite saute précisément la partie qui vous apprend quelque chose.
- Prenez des notes, pas seulement des mots de passe. Une ligne par niveau sur la façon dont vous l'avez résolu devient votre antisèche personnelle pour tous les CTF qui suivront.
En pratique, les niveaux qui arrêtent le plus de débutants sont la chaîne de décompression du hexdump vers le niveau 12 (lancez file après chaque étape et renommez en conséquence) et le niveau de la plage de ports vers le 16, où vous avez besoin d'un scanner pour la première fois. Les deux valent le temps passé : vous utiliserez exactement ces compétences dans de vrais CTF.
OverTheWire vs PicoCTF, TryHackMe et Hack The Box
PicoCTF est le tableau de challenges gratuit de Carnegie Mellon : des énigmes courtes et autonomes dans de nombreuses catégories, plus une compétition annuelle. OverTheWire est plus étroit et plus profond, une progression continue sur de vrais shells. Les deux se complètent très bien, et notre guide PicoCTF explique par où commencer.
TryHackMe guide beaucoup plus, avec des salles qui expliquent chaque notion avant de poser des questions. Hack The Box est plus proche du vrai test d'intrusion : des machines entières à énumérer et compromettre, avec bien moins d'aide. Notre comparatif TryHackMe vs Hack The Box détaille ce choix.
Un ordre raisonnable pour la plupart des débutants : Bandit pour l'aisance en ligne de commande, PicoCTF pour l'étendue, puis des labs guidés, puis des machines complètes.
Où aller après Bandit
- Sécurité web : Natas, puis des applications web vulnérables réalistes.
- Exploitation de binaires : Leviathan, Narnia, Behemoth, Utumno, dans cet ordre. C'est lent, mais cela construit des compétences rares et bien payées en recherche de vulnérabilités.
- Cryptographie : Krypton, puis les challenges de crypto moderne des CTF.
- Compétition : dès que vous résolvez un niveau sans indice, tentez un événement chronométré. Notre guide pour participer à sa première compétition CTF couvre CTFtime, les formats et les équipes. Les enseignants et les élèves qui utilisaient CyberStart avant sa fermeture trouveront une version de ce parcours pensée pour l'école dans notre guide des alternatives à CyberStart.
Questions fréquentes
OverTheWire est-il sûr ?
Oui. Vous vous connectez aux serveurs d'OverTheWire avec un client SSH standard, et rien n'est installé sur votre machine. Considérez ces serveurs comme partagés et publics : n'y réutilisez jamais un vrai mot de passe ni une vraie clé, gardez vos fichiers dans un répertoire créé avec mktemp -d et n'exécutez rien que vous ne comprenez pas. Jouer est légal, puisque les serveurs existent pour être attaqués.
OverTheWire est-il gratuit ?
Oui, entièrement. Il n'y a ni compte ni offre payante. OverTheWire est géré par une communauté de bénévoles et vit des dons pour maintenir ses serveurs en ligne.
Combien de niveaux compte Bandit ?
34 niveaux jouables, de bandit0 à bandit33. La page du niveau 34 existe mais indique que le niveau n'existe pas encore : se connecter en tant que bandit33 signifie donc que vous avez terminé le jeu.
Peut-on jouer à OverTheWire sous Windows ?
Oui. Windows 10 et 11 incluent un client OpenSSH, donc la même commande ssh [email protected] -p 2220 fonctionne dans PowerShell ou Windows Terminal. WSL vous donne un vrai shell Linux si vous voulez aussi des outils en local.
Où trouver les mots de passe de Bandit ?
OverTheWire demande aux créateurs de contenu de ne pas les publier, et ils changent de temps en temps. L'objectif et les commandes suggérées sur chaque page de niveau suffisent pour trouver chaque mot de passe vous-même, et c'est tout l'intérêt du jeu.
Considérations éthiques et juridiques
OverTheWire vous autorise à attaquer ses serveurs. Cette autorisation s'arrête à ses serveurs. Les techniques que vous pratiquez, de la recherche de fichiers cachés à l'exploitation de dépassements de tampon, fonctionnent aussi sur de vrais systèmes, et les utiliser sans autorisation est un délit dans pratiquement tous les pays.
Rappel essentiel : obtenez toujours une autorisation écrite explicite avant de tester un système. Si vous tombez sur une vraie vulnérabilité, signalez-la via le programme de divulgation ou de bug bounty de l'organisation au lieu de pousser plus loin.
Vos prochaines étapes
Les wargames OverTheWire restent l'un des meilleurs moyens gratuits d'apprendre la ligne de commande telle que l'utilisent vraiment attaquants et défenseurs. Connectez-vous au niveau 0 de Bandit dès aujourd'hui, tenez un fichier de notes et visez quelques niveaux par session plutôt qu'un marathon.
Quand vous voudrez des leçons structurées en parallèle, le cours Hacking 101 de HackerDNA explique les notions derrière les niveaux, et les challenges HackerDNA les mettent en pratique sur des cibles réalistes, dans votre navigateur, sans VPN. Commencez avec l'offre gratuite de HackerDNA, sans carte bancaire.