Un clic de Base64 : lire un flag brouillé

Rétro-ingénierie & Exploitation Binaire Niveau 1/4 ~2 min 6 juillet 2026

Le défi

Quelqu'un a brouillé un flag pour qu'il ne saute pas aux yeux dans un fichier. Ce n'est qu'une couche de base64, pas un verrou. Cliquez sur le bon bouton de décodage pour le lire, puis soumettez le flag.

Ce que tu vas apprendre

  • Reconnaître le base64 à l'œil nu, notamment le signe = de remplissage à la fin d'une chaîne
  • Décoder une seule couche de base64 avec un bouton et lire le résultat
  • Comprendre que brouiller un texte n'équivaut pas à le protéger
  • Constater que l'encodage peut être inversé par n'importe qui, sans clé ni mot de passe
  • Écarter les autres boutons de décodage en vérifiant si leur format correspond à la chaîne

Compétences testées

Reconnaissance du base64Décodage du base64Distinguer encodage et chiffrement

Prérequis

  • À l'aise avec la lecture de courtes lignes de texte brut
  • L'idée qu'un même texte peut s'écrire sous plusieurs formes

Comment ça marche

Le base64 est une façon d'écrire n'importe quelle donnée en n'utilisant qu'un petit ensemble de lettres ordinaires, de chiffres et de quelques symboles. Il existe pour que des octets puissent circuler sans dommage dans des endroits qui n'attendent que du texte ordinaire, comme le corps d'un email, une URL ou un fichier de configuration. C'est totalement public et réversible : il existe une table convenue qui fait correspondre chaque bloc à ses octets d'origine, si bien que n'importe qui peut retransformer du base64 en ce qu'il était, sans aucun secret.

C'est le point clé en matière de sécurité. Comme il n'y a pas de clé, le base64 ne cache rien. Une valeur écrite en base64 est, en pratique, à découvert : il suffit d'appuyer sur le bon bouton. Certains brouillent une valeur avec du base64 et pensent qu'elle est désormais protégée, mais cette impression est fausse. Chiffrer quelque chose signifie que cela ne peut pas être lu sans clé secrète ; encoder quelque chose ne fait que changer la façon dont c'est écrit.

On repère généralement le base64 à l'œil nu. Il utilise des lettres majuscules et minuscules, des chiffres, et se termine souvent par un ou deux signes =, un remplissage que l'encodeur ajoute pour que la longueur tombe juste. La chaîne de ce hack se termine par un seul =, ce qui indique fortement que la couche externe est du base64. Les autres boutons de décodage (hex, URL, inverse) attendent des formats d'entrée différents, ils ne s'appliquent donc pas ici.

Erreurs fréquentes

  • Penser que le flag est protégé. Une valeur qui a l'air brouillée n'est pas une valeur verrouillée. Sans clé impliquée, le base64 n'offre aucune confidentialité.
  • Essayer les boutons au hasard. Chaque décodeur attend un format d'entrée précis. Le = final pointe vers le base64, inutile donc d'essayer les autres avant.
  • Décoder deux fois. Décoder en base64 un flag déjà lisible une seconde fois le rebrouille. Décodez une fois, lisez le flag, arrêtez-vous.
  • Ne soumettre que le texte intérieur. Le flag inclut son enveloppe HDNA complète et ses accolades, soumettez donc le tout tel qu'affiché.

Comment s'en protéger

La leçon pour les développeurs est de ne jamais compter sur l'encodage pour garder quoi que ce soit privé. Si une valeur est sensible, elle doit être protégée par un véritable chiffrement nécessitant une clé secrète gérée, ou elle ne doit pas être stockée ni journalisée du tout. Du base64 dans un fichier, un cookie ou une URL signifie "ceci est un format de transport", pas "ceci est sécurisé".

  • Gardez les secrets tels que les tokens, mots de passe et données personnelles totalement hors des logs et des URL.
  • Utilisez un véritable chiffrement avec une clé gérée lorsque des données doivent réellement rester confidentielles.
  • Considérez toute couche base64, hex ou URL que vous trouvez comme cosmétique, et décodez-la pour confirmer que rien de sensible n'est à un clic du texte brut.
  • Passez en revue vos propres fichiers et réponses en décodant chaque valeur encodée que vous voyez.

Solution complète

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

Passer Pro

Statistiques de la communauté

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

Hacks du jour associés

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