Cascade
Dernière mise à jour
Cet article vous a-t-il été utile ?
Dernière mise à jour
Cet article vous a-t-il été utile ?
Flag: CYBN{C45c4d3_R3v34l3d}
Ce challenge tourne sur un docker et n'est pas disponible
Il faut commencer par faire un peu d'analyse :
C'est un chiffrement par bloc de 16 octets.
Un même input donne la même sortie
Le flag est ajouté à la fin de notre message (c'est dans l'énoncé)
On va faire une attaque par padding. L'objectif, c'est de "pousser" le flag à la limite d'un bloc pour ne faire dépasser qu'un caractère. On observera alors le résultat du chiffrement (ici, en violet ce sont les lettres du secret que l'on ne connaît pas).
Ensuite, on brute-force jusqu'à retrouver le même résultat de chiffrement. On saura alors que c'est le même caractère que celui qu'on a fait dépasser tout à l'heure :
On répète l'opération pour les caractères suivants, et 1 à 1, le flag se révélera. (en bleu, c'est notre input, en violet ce qu'on ne connaît pas encore)
Le script complet en python :