Cassage de mot de passe - Ensiwiki
Transcription
Cassage de mot de passe - Ensiwiki
Master Ensimag • Cours 4MMCSR • Année 2016/2017, 1 er semestre Cassage de mot de passe Cédric Lauradoux Nous allons apprendre à écrire nous même des petits casseurs de mot de passe. Nous n'allons pas travailler sur la partie qui génère les candidats mais sur partie suivante an de pouvoir décrypter des chiers chirés avec openssl ou retrouver une passphrase GPG. Pour la génération des candidats, nous allons nous reposer sur le mode wordlist de john et sur le mangling. La liste de départ sera un ou des candidats possibles pour le mot de passe. john −− w o r d l i s t=m y f i l e −− r u l e s −− stdout Tous nos casseurs de mot de passe seront écrits en script bash. Un script bash commence toujours de la même façon: #! / u s r / b i n / e n v bash puis un a suite de commande a exécuté et a la n: exit 0 Après avoir sauvegardé votre script, pensez à le rendre exécutable avec chmod +x. On peut faire des achages avec la commande echo par exemple. On peut faire des boucles et des branchements. for word in $ ( cat words . t x t ) ; do echo "${word}" done ; La boucle précédente permet d'acher le contenu d'un chier ligne par ligne. Attention en bash on doit prendre des précautions avec l'indentation. Le branchement suivant permet de savoir si la commande qui précède a réussi ou échoué: i f [ $? −eq 0 ] ; then echo " t o t o " fi ; Question 1: Créer un chier qui contient tous les ciphernames possibles pour openssl. Question 2: Créer un script qui va essayer de décrypter un chier openssl (sans sel) en essayant tous les ciphernames et un mot de passe que vous avez choisi. Faites des tests avec un chier que vous avez chiré vous-même. On va faire l'hypothèse que le chier chiré est un pdf (indication pour savoir quand on a réussi). Question 3: Même question que la question 2 mais maintenant on dispose d'une liste de mot de passe. Question 4: On imagine le cas d'une personne qui a oublié sa passphrase gpg mais qui en a un vague souvenir. gpg −− passphrase −fd 0 −q −−batch −−no−t t y −−no−use −agent \ −o / dev / n u l l −−local − u s e r \ MYKEYID − as − && echo "The c o r r e c t p a s s p h r a s e was e n t e r e d f o r t h i s key " 1 Essayez de comprendre la commande précédente. Comment l'utilisez pour écrire un script qui permet de tester diérentes passphrases candidates ? Remarque: vous allez obtenir un script pour openssl et gpg qui vous seront bien utiles au prochain TP et à l'examen.