Double couche classique : base32 et le chiffre Atbash
Le défi
Cette chaîne n'utilise que les lettres A-Z et les chiffres 2-7 - signe révélateur d'un encodage précis. Retirez cette couche, puis remarquez que le résultat est un chiffre par lettres connu. Utilisez les boutons de décodage pour récupérer le flag (HDNA{...}) et soumettez-le.
Ce que tu vas apprendre
- Reconnaître le base32 grâce à son alphabet restreint A-Z 2-7 et son remplissage =
- Identifier le chiffre Atbash à son schéma d'alphabet en miroir
- Décortiquer une chaîne à deux couches d'encodage/chiffrement dans le bon ordre
- Écarter les transformations leurres dont le format d'entrée ne correspond pas
Compétences testées
Prérequis
- Connaissance de la différence entre base64 et base32
- Notions sur les chiffres de substitution
Comment ça marche
Reconnaître un encodage à l'œil est l'une des compétences les plus rapides à acquérir en CTF et en triage. Chaque schéma laisse une empreinte différente. Le base64 utilise A-Z, a-z, 0-9, plus + et /. Le base32 est plus restreint : uniquement des majuscules A-Z et les chiffres 2-7, souvent avec un remplissage =. Quand vous voyez une chaîne composée uniquement de cet alphabet, c'est presque toujours du base32.
Décoder le base32 ici ne donne pas du texte en clair : vous obtenez un texte dont la structure est correcte mais dont les lettres sont fausses, chacune remplacée par son miroir dans l'alphabet. Ce schéma en miroir (A devient Z, B devient Y, et ainsi de suite) est le chiffre Atbash, l'un des plus anciens chiffres de substitution. Atbash est son propre inverse, donc l'appliquer à nouveau l'annule.
Le labo de décodage permet d'empiler des transformations en appuyant sur des boutons, chacune appliquée au résultat précédent. Appuyez sur base32, puis sur atbash, et le flag apparaît. Le labo propose aussi des décodeurs binaire, décimal et morse, utiles dans d'autres défis, mais ici ce sont des leurres dont les formats d'entrée (des 1 et des 0, des nombres séparés par des espaces, des points et des tirets) ne correspondent manifestement pas aux données que vous avez sous les yeux.
Erreurs fréquentes
- Confondre base32 et base64. L'indice est l'alphabet : pas de minuscules ni de
+//signifie base32, pas base64. - S'arrêter après une seule couche. Le résultat du base32 est encore brouillé ; reconnaissez les lettres en miroir comme de l'Atbash et décortiquez à nouveau.
- Essayer les décodeurs leurres. Binaire, décimal et morse attendent des entrées très différentes ; vérifiez le jeu de caractères avant de cliquer.
- Appliquer Atbash deux fois. Atbash est son propre inverse, donc un second passage rebrouille tout.
Comment s'en protéger
Les chiffres et encodages classiques n'offrent aucune confidentialité : ce sont des énigmes, pas une protection. La leçon défensive est toujours la même : si des données doivent rester secrètes, chiffrez-les correctement ; si vous trouvez des données cachées derrière du base32/Atbash/ROT dans vos propres systèmes, traitez-les comme du texte en clair.
- Apprenez les empreintes courantes (base32, base64, hex, Atbash, ROT) pour trier rapidement les données encodées.
- N'utilisez jamais un chiffre classique pour protéger quoi que ce soit de réel.
- Lors de l'audit de vos systèmes, décodez les valeurs encodées pour vérifier que rien de sensible ne se cache à un clic du texte en clair.