Principe:
Extraire les données d'un chunck PNG custom (sTeG) pour constituer une nouvelle image PNG
Le challenge nous dit que
le PNG précédemment extrait (dispo ici)
contient encore des données cachées
En ouvrant le fichier PNG dans un éditeur hexé, on repère très vite un chunk suspicieux: sTeG
En cherchant sur le net, je trouve un steg-png qui utilise un chunck similaire stEG
Je change donc la casse du chunk pour correspondre
Je build le steg-png
Et c'est un fail!
En regardant à nouveau les données, je m'aperçoit que IHDR et IDAT
suivent directement le chunk sTeG , donc,
il suffit peut-être d'extraire le contenu du chunk sTeG
Et oui! C'était juste ça: il suffit de supprimer le premier chunk IHDR : on efface
les lignes 2 (0x00000010) et 3 (0x00000020) via hexeditor -b ./stage2.png
et le R (0x52) qui sera en trop ligne 4 (0x00000030)
Et le flag est visible: 404CTF{7h47_v1c10us_m1zzing_z19natur3}
On peut aussi utiliser pngsplit pour récupérer uniquement le contenu du chunck
sTeG et le sortir dans un fichier dédié. En revanche, il faudra rajouter à la main
le magic number PNG 89 50 4e 47 0d 0a 1a 0a .
Dans notre méthode, on a gardé toutes les données du PNG original, ce qui fait une image plus lourde
↩ Retour à la liste des challenges
⇇ Retour à l'accueil