Définition
La cryptanalyse est la technique qui consiste à déduire un texte en clair d’un texte chiffré sans posséder la clé de chiffrement. Le processus par lequel on tente de comprendre un message en particulier est appelé une attaque.
Il existe des dizaines de techniques de cryptanalyse pour qui certaines d’entre elles remonte à des siècles plus tôt. Ces procédés se sont perfectionnés d’année en année à une vitesse effrénée pour essayer de rattraper les clés de cryptage qui devienne presque impossible à cracker. Il existe plusieurs types d’outils et de ressources pour arriver à décrypter : la distribution Linux Kali, des outils pour cracker des mots de passe comme HashCat, John the Ripper, cryptoHaze et d’autres, des "rainbow tables" … Linux Kali, une distribution spécialisée dans ce domaine destinée aux tests de pénétration avancés et à la sécurité. Il contient plusieurs centaines d’outils destinés à diverses tâches de sécurité de l’information, telles que les tests de pénétration, la recherche de sécurité, la criminalistique informatique et la rétroingénierie. En plus un nombre d’information disponible sur le clear web sont disponible. Pour la cryptanalyse, kali possède son lot d’outil. Par exemple, rcrackki-mt (version mt car avec cette version on peut utiliser le multi core du cpu ce qui est plutôt utile dans ce genre de taches). Voici un exemple : Crack un mot de passe avec hash (5d41402abc4b2a76b9719d911017c592) avec 4 cpu core et la rainbow table (tables2/md5/)

Dans cette image on distingue 2 notion importante : les hashs et les rainbow table. Un hash c’est : mettre une entré de n’importe quelle taille dans une ligne a nombre de caractères fixé texte/chiffre en utilisant une fonction mathématique. En bref

Il y a plusieurs formules qui permette de hash un message ( SHA-512, RipeMD128….) -chaque hash est unique = impossible de crée 2 même hashs en rentrant des inputs différents = un message identique a le même hash -Il est presque impossible de déterminer l’input en se basant sur le hash Une rainbow table c’est ce qui permet de faire « le chemin inverse » si on a le hash et la hash fonction alors on peut deviner l’input
Ce genre de ligne ci-dessous constitue 1 case de la rainbow table. Si on veut que la table soit efficace, il y en faudra plusieurs milliers de ligne haché puis réduite. et cela plus que 4 fois par ligne comme dans l’exemple. L’avantage c’est que comparé a d’autre technique de force brute elle ne prend pas beaucoup de place quelques giga tout au plus et le temps de l'exectuter n'est pas trop long. ( on retrouve encore aujourd’hui des fichier texte de plus de 500go de mot de passe). Les rainbow tables n'ont pas beaucoup de defaut a part le fait que il peut se produire des collisions car il se peut que le meme mot a deja été haché et reduit, et par consequent le logiciel ne sait pas quelle ligne prendre ( cela arrive souvent sur des miliers de lignes )

Aujourd’hui, les logiciels de crackage de mot de passe sont monnaie courante et rende ce travaille plus simple avec un peu de connaissance. Hashcat par exemple en est un exemple connu : il utilise beaucoup de techniques pour cracker le plus rapidement comme les rainbow table vu avant, mais aussi des dictionnaires dit de « precomputing » et même directement de manière brute. Il choisira la maniere la plus efficace pour parvenir a ses fins
Ce succès auprès du public est la conséquence de toutes ses fonctionnalités comme le multicœur, multi-os, il comprend plus de 90 algorithmes actuel ( MD5, MySQL …), etc.
ci dessous une ligne de commande. a -0 siginifie une attaque au masque, -m 0 en hash md5.

et le resultat done
