Le rébus final
Le Corbeau a disparu en laissant un coffre fermé et quelques indices répartis dans plusieurs fichiers : une légende, un ordre, un programme. Reconstitue le rébus, rouvre le coffre et découvre pourquoi encoder n'est pas chiffrer.
Laboratoire 6 sur 6 du parcours Encodages et secrets. Si tu bloques, tu as 3 indices, du plus vague au plus précis : ils coûtent 0, 60 et 200 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 :
- Lire le journal du Corbeau (50 XP)
- Extraire l'ordre des sceaux de la sonde (strings) (150 XP)
- Lire la légende des sceaux (base64 -d) (150 XP)
- Retirer aussi le dernier sceau, ROT13 (tr) (200 XP)
Thèmes : codici, rebus, pipe.
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.file: reconnaît quel type de fichier tu as devant toi (texte, exécutable, image) d’après son contenu, pas son nom.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é.strings: extrait le texte lisible d’un fichier binaire : il révèle les mots de passe et adresses restés dans un programme.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.xxd: affiche un fichier en hexadécimal et sait aussi remettre l’hexadécimal en texte.rev: inverse chaque ligne caractère par caractère, comme un miroir.tr: remplace des caractères par d’autres : avec les bonnes règles, il applique ou annule le ROT13.|: 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.
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 :
Le Corbeau a empilé quatre déguisements (ROT13, miroir, hexadécimal, base64) et a laissé traîner la légende et l'ordre ; mais même sans indices un analyste les aurait tous retirés, car aucun n'exige de clé. Encoder n'est pas chiffrer. Pour vraiment protéger un secret il faut un vrai chiffrement (AES-GCM, ChaCha20-Poly1305) avec une longue clé aléatoire gardée loin des données et, pour les mots de passe, un hash lent salé (bcrypt, scrypt, Argon2), comme celui d'impronta.txt : un hash ne se décode pas, il se recalcule et se compare. Et ne laisse pas de secrets dans des fichiers, des binaires ou des notes.
Avant et après ce laboratoire
Pour l’ouvrir, tu dois avoir résolu :
- Des secrets dans un exécutable (Encodages et secrets, moyen)
- Couche après couche (Encodages et secrets, moyen)
C’est l’un des laboratoires finaux : aucun autre laboratoire ne le requiert.
Le parcours Encodages et secrets
Encodages et secrets enseigne une distinction qui sauve beaucoup de données : encoder n'est pas chiffrer. Base64, hexadécimal, ROT13 et texte en miroir changent l'aspect des informations sans les protéger, car n'importe qui les remet en clair sans aucune clé. Dans les laboratoires, tu reconnais ces formats à leur aspect, tu les retires couche par couche même quand ils sont empilés, tu extrais le texte lisible d'un programme compilé et tu comprends pourquoi protéger vraiment un secret demande un vrai chiffrement, des hachages salés et un gestionnaire de secrets.