Qui insiste ?
Il Forno Veloce vend du pain en ligne et son serveur web est assiégé : cette nuit, le journal d'accès s'est rempli de mots de passe erronés. Savoir que quelqu'un insiste ne suffit pas, il faut savoir QUI insiste le plus. Compte les tentatives échouées par adresse et décode le signalement de l'attaquant.
Laboratoire 2 sur 6 du parcours Blue Team / Défense. Si tu bloques, tu as 3 indices, du plus vague au plus précis : ils coûtent 0, 50 et 120 XP.
Ce que tu apprends
Les objectifs se valident tout seuls pendant que tu travailles dans le terminal ; chacun rapporte des points d’expérience :
- Isoler les tentatives échouées avec grep (80 XP)
- Extraire la colonne de l'adresse avec cut (100 XP)
- Regrouper et compter avec sort et uniq -c (120 XP)
- Décoder le signalement de l'attaquant (100 XP)
Thèmes : defense, log, pipe, brute-force.
Les commandes que tu utiliseras
Le terminal est simulé et comprend une quarantaine de commandes Linux. Dans ce laboratoire, tu auras surtout besoin de celles-ci :
cat: affiche le contenu d’un fichier : la façon la plus directe de lire configurations, notes et journaux.grep: cherche les lignes qui contiennent un mot, même dans des dossiers entiers avec -r. C’est l’outil principal pour analyser du texte et des journaux.head: affiche seulement les premières lignes d’un fichier, pratique pour comprendre le format d’un journal sans tout lire.cut: extrait une colonne de chaque ligne en choisissant le séparateur, pour isoler un champ précis d’un journal.sort: trie les lignes, aussi par ordre numérique (-n) ou à l’envers (-r).uniq: supprime les lignes répétées à la suite et les compte avec -c : avec sort, il crée des classements, comme celui des adresses les plus insistantes.base64: encode et décode le Base64, le format qui transforme des octets en texte. Il ne protège rien : il s’annule sans clé.|: la barre verticale | enchaîne les commandes : la sortie de la première devient l’entrée de la suivante, et de petits outils forment une analyse complète.
L’environnement simulé
Tu travailles dans un shell Linux simulé, dans le dossier personnel de l'utilisateur runner : fichiers et dossiers imaginaires, aucune cible réseau.
En plus du dossier personnel, il y a un système simulé complet, avec des fichiers de configuration, des journaux, des utilisateurs et des permissions à examiner.
La leçon de défense
Une fois le laboratoire résolu, le compte rendu explique ce qui a mal tourné et comment se protéger :
Avec grep, cut, sort et uniq -c, un journal de centaines de lignes devient un classement : celui qui insiste le plus mène presque toujours une attaque par force brute. Mais il faut lire les chiffres avec soin : un script interne avec l'ancien mot de passe ou un utilisateur distrait ne sont pas des attaquants, et une attaque lente et dispersée passe sous le seuil. Défense : limiter les tentatives par adresse (rate limiting), bloquer automatiquement ceux qui dépassent le seuil avec fail2ban, et passer des mots de passe aux clés SSH.
Avant et après ce laboratoire
Pour l’ouvrir, tu dois avoir résolu :
- Lire un journal d'accès (Blue Team / Défense, facile)
- Pipes et filtres (Bases de Linux, moyen)
Après ce laboratoire, tu peux passer à :
- Chronologie d'un incident (Blue Team / Défense, moyen)
Le parcours Blue Team / Défense
Blue Team / Défense est le parcours de ceux qui protègent. Tu lis les journaux d'accès, tu comptes les tentatives échouées pour découvrir qui force une connexion, tu reconstruis la chronologie d'un incident, tu compares une configuration SSH avec celle recommandée, tu fermes les services inutiles et tu mènes une réponse à incident en quatre temps : détecter, contenir, nettoyer, documenter. Les commandes sont les mêmes que dans les autres parcours, mais vues avec les yeux de qui doit comprendre ce qui s'est passé et empêcher que cela recommence.