Deux couches, un flag : peler le Base64 puis le ROT13

Cryptographie Niveau 2/4 ~3 min 15 août 2026

Le défi

Ce flag est enveloppé dans deux couches d'encodage, pas une seule. Décodez d'abord la couche extérieure, examinez bien le résultat, puis décodez la couche intérieure pour terminer. Soumettez le flag une fois qu'il se lit clairement.

Ce que tu vas apprendre

  • Reconnaitre le base64 comme couche exterieure meme sans padding
  • Repérer un decalage ROT13 dans la sortie base64 a sa forme intacte et ses lettres incorrectes
  • Peler des transformations chainees une couche a la fois et confirmer sa progression a chaque etape
  • Decoder une chaine base64 puis ROT13 dans le bon ordre
  • Comprendre pourquoi empiler des encodages n'ajoute aucune confidentialite

Compétences testées

Identification de couches dans des encodages chainesDecodage base64Inversion ROT13

Prérequis

  • Etre a l'aise pour reconnaitre le base64 a son jeu de caracteres
  • Savoir qu'un decalage fixe de lettres s'appelle ROT13 ou chiffre de Cesar

Comment ça marche

L'obfuscation reelle empile souvent plusieurs transformations, donc peler une valeur consiste a travailler de l'exterieur vers l'interieur, une couche a la fois. La competence consiste a lire le format de chaque couche pour decider quel bouton presser ensuite, plutot que de deviner. Ce defi enveloppe un flag dans deux couches : le base64 a l'exterieur et le ROT13 a l'interieur.

La couche exterieure est du base64. Les chaines base64 utilisent des majuscules, des minuscules et des chiffres, et les longueurs ici s'averent egales sans padding = visible, ce qui peut arriver quand la longueur des donnees est deja un multiple qui tombe juste en base64. Decodez-la et vous n'obtenez pas encore de mots lisibles. Vous obtenez une chaine dont la forme de flag est intacte, le prefixe, les accolades et les tirets bas sont tous a leur place habituelle, mais dont les lettres sont clairement incorrectes, chacune decalee d'une quantite fixe. Ce motif de structure intacte mais de lettres decalees est la signature du ROT13.

Appliquez le ROT13 sur cette chaine intermediaire et le decalage s'inverse, transformant les lettres brouillees en mots clairs pour que le flag complet se lise proprement. L'ordre compte : le base64 en premier car c'est l'enveloppe exterieure, le ROT13 en second car c'est la couche interieure. Aucune des deux etapes n'utilise de cle, donc les deux couches ensemble n'apportent toujours aucun secret : elles vous font seulement presser deux boutons au lieu d'un. Les boutons hex, URL et reverse sont des leurres dont les formats ne correspondent a la chaine a aucune des deux etapes.

Erreurs fréquentes

  • S'arreter apres une seule couche. La sortie base64 est encore brouillee, ce qui pousse a croire que le decodage est errone. Reconnaissez le decalage de lettres et pelez la seconde couche.
  • Decoder dans le mauvais ordre. Le ROT13 ne fonctionne que sur le texte lisible a l'interieur, donc le base64 doit venir en premier pour l'exposer.
  • Reappliquer une transformation a sa propre sortie. Decoder le base64 deux fois ou appliquer le ROT13 deux fois annule votre progression. Appliquez chaque couche exactement une fois.
  • Croire que deux couches signifient que c'est chiffre. Empiler des encodages sans cle ajoute des clics, pas de la confidentialite.

Comment s'en protéger

Le message defensif est qu'empiler des encodages n'est pas un controle de securite, peu importe le nombre de couches. Si une valeur doit rester confidentielle, il lui faut un vrai chiffrement avec une cle secrete geree, ou elle ne devrait pas etre exposee du tout. Traitez toute chaine de base64, hex, ROT13 ou d'encodage URL comme un emballage cosmetique que n'importe quel relecteur peut peler.

  • Ne comptez jamais sur des encodages empiles pour garder confidentiels des elements tels que des tokens, mots de passe ou donnees personnelles.
  • Utilisez un chiffrement authentifie avec une cle geree quand les donnees necessitent reellement de la confidentialite.
  • Lors de la relecture d'artefacts, pelez chaque couche trouvee jusqu'a atteindre du texte clair et confirmez qu'aucune donnee sensible ne s'y trouve.
  • Rappelez-vous que le nombre de couches d'encodage ne change rien a l'absence de cle : plus de couches ne veut pas dire plus de securite.

Solution complète

Les membres Pro et Max débloquent la solution complète étape par étape.

Passer Pro

Statistiques de la communauté

120 résolutions
83% taux de réussite
M2F14M3 Premier sang

Hacks du jour associés

24 000+ Hackers 100+ Labs & Cours Gratuit
Commencer Gratuitement