Logo Zéphyrnet

Les 1337 PNG Hashquine

Date :

Un hashquine est une façon amusante de montrer vos astuces cryptographiques : c'est un fichier qui contient son propre hachage. Dans certains types de fichiers, c'est trivial, il vous suffit de choisir le hachage à frapper, puis de mettre des données aléatoires dans un commentaire ou un autre champ invisible jusqu'à ce que vous obteniez une collision. Un script Python qui imprime son propre hachage serait simple. Mais tous les types de fichiers ne sont pas aussi simples. Prenez PNG par exemple. ces fichiers sont divisés en morceaux de données, et chaque morceau est à la fois une somme de contrôle CRC-32 et adler32. Faites un changement, et tout change, à trois endroits à la fois. Bonne chance pour trouver cette collision. Donc comment exactement [David Buchanan] a-t-il généré ce magnifique PNG, qui fait en fait la somme md5 de la valeur de l'image? Très intelligemment.

md5sum hashquine.pngHeureusement [David] a partagé certaines de ses astuces, et ils sont plutôt soignés. La technique qu'il détaille est un hack meet-in-the-middle, où 36 paires de blocs de collision MD5 sont trouvées, étant entendu que ces 36 blocs seront ajoutés au fichier. Pour chaque bloc, A ou B de la paire sera branché à cet emplacement et la somme md5 ne changera pas. Il y a un total de 2 ^ 36 combinaisons possibles de ces blocs, ce qui représente plus de calculs que ce qui était pratique pour ce hack particulier. La solution consiste à précalculer les résultats de chaque combinaison possible des 18 premiers blocs et à stocker les résultats dans une table de recherche. La seconde moitié des collisions est exécutée à rebours à partir d'une valeur CRC cible et le résultat est vérifié par rapport à la table de recherche. Trouvez un résultat et vous venez de trouver une série de blocs qui correspondent à la fois à votre somme md5 cible et aux résultats CRC32.

Merci à [Julian] pour le conseil ! Et comme il l’a décrit, ce hack devient de plus en plus impressionnant à mesure que l’on y pense. Apprécier!

spot_img

Dernières informations

spot_img