Introduction

Introduction

Pour ceux d'entre vous qui n'ont pas encore entendu parler de John the Ripper (par la présente John pour Brevity), c'est un outil de craquage de mot de passe gratuit écrit principalement en C. Avant d'aller plus loin, nous devons vous dire que bien que nous ayons confiance à nos lecteurs, nous n'encourageons ni n'enduisons les activités malveillantes qui peuvent être effectuées en utilisant cet outil ou tout autre outil dont nous avons parlé dans le passé. Les outils liés à la sécurité sont souvent comme une épée à double tranchant, en ce qu'ils peuvent être utilisés pour de bon mais aussi pour les mauvaises choses. Donc, bien que cela puisse sembler tentant, nous vous recommandons de vous abstenir de toute activité dommageable, si rien d'autre, simplement parce que vous avez de grandes chances d'atterrir dans une cellule de prison. Cet article traitera avec John du point de vue d'un administrateur système, nous nous attendons donc à ce que vous ayez des connaissances intermédiaires sur votre système Linux, quelle que soit la distribution qui peut être et que vous êtes une personne soucieuse de la sécurité avec des connaissances de base en matière de sécurité. Cependant, cet article pourrait vous faire appel également si vous êtes un utilisateur à domicile qui souhaite en savoir plus sur ce genre de choses, mais soyez averti: certaines des commandes présentées ci-dessous demanderont une grande partie de votre temps de processeur, alors peut-être que ce serait mieux Si vous aviez une machine d'essai et / ou beaucoup de temps et de patience, car les tentatives de craquage de mot de passe peuvent prendre des jours, même sur une machine relativement nouvelle. Comme d'habitude, veuillez vous référer à notre nouveau forum Linux pour une aide ou des informations supplémentaires.

Installation de John

Bien que, au moins sur les distributions que nous avons essayées, le package nommé «John» avec Gentoo faisant une exception et le nommant «Johntheripper», nous vous faciliterons la tâche et vous montrerons comment l'installer sur plusieurs distributions connues.

Debian

Debian diffère des autres distributions qui offrent à John dans leurs référentiels car il offre une belle page manuelle, bien qu'en amont n'en ait pas. Pour installer, tapez simplement

 # aptitude installer John 


Feutre

Sur fedora, c'est aussi aussi simple que de faire

 # yum install John 

Arch Linux

 # Pacman -s John 

OpenSuse Linux

# Zypper installer John 

Gentoo

Comme nous l'avons dit, le forfait de Gentoo est nommé différemment de ce que les autres offrent, donc ici vous devrez courir

 # émerger Johntheripper

Lâche

Bien qu'il ne semble pas y avoir de package John dans les référentiels officiels, il y a un slackbuild qui amené John sur votre système (cela a été testé sur Slackware 13.37).

Bien que nous ne vous aimions que quelques exemples sur la façon dont vous pouvez obtenir John sur votre système Linux, bon nombre des exemples présentés s'exécuteront si vous avez installé d'autres systèmes d'exploitation: Outre le code source, le projet propose le programme pour Beos, Microsoft Windows, Solaris ou Mac OS X. Mais pour notre article, comme le dit le titre, nous avons testé les exemples sur Linux.

Utilisation de John the Ripper

Vous n'avez pas besoin de vous soucier des fichiers de configuration cryptique, car John est prêt à l'emploi avec les drapeaux de ligne de commande appropriés sans autre effort de votre part. Un mot d'avertissement, cependant: comme vous l'avez déjà remarqué, nous disons à nos lecteurs quand ils devraient utiliser les privilèges racinaires et quand ils ne devraient pas. Sauf lorsqu'il est noté, vous êtes fortement recommandé d'utiliser votre utilisateur de tous les jours normal (ou un autre, si vous préférez, mais il ne devrait pas avoir de droits de super utilisateur). Sur mon système Debian, John est disponible en tant que / usr / sbin / John, donc si vous ne le trouvez pas, nous vous recommandons d'utiliser où et tapez tout le chemin lors de l'exécution de John imprimé (ou vous pouvez simplement créer un alias).



Le moyen le plus simple de vous mouiller les pieds est de taper

 $ / usr / sbin / John - test 

pour faire des tests et des références sur les capacités de John. Si vous n'avez aucune idée de ce que sont Kerberos, MD5, DES ou Blowfish, nous vous recommandons de commencer à lire des livres de sécurité de base, car, comme nous l'avons déjà dit, vous avez besoin d'une certaine formation en matière de sécurité / administration. Maintenant, créons un fichier texte au format de mot de passe (:) avec un hachage valide, bien sûr, et amenez John à fonctionner. Vous pouvez simplement copier un utilisateur de / etc / Shadow, mais nous recommandons quelque chose de plus simple, car nous supposons que vous vouliez voir les résultats aussi vite que possible. Alors créez un fichier nommé Mot de passe.txt quelque part à l'intérieur de votre / maison et mettez-y:

Myuser: AZL.ZWWXIH15Q

Enregistrez le fichier, puis alimentez-le à John sans arguments (pour l'instant):

 $ / usr / sbin / John mot de passe.SMS 

Nous devons répéter notre avertissement: la fissuration du mot de passe est un processus à forte intensité de processeur, donc en fonction de votre système, cela pourrait prendre un certain temps. Cependant, cela dépend également de ce que vous voulez réaliser, car si votre puissant processeur est en train de craquer sur le ou les mots de passe depuis des jours sans résultat, il est sûr de dire que c'est un bon mot de passe. Mais si le mot de passe est vraiment critique, laissez le système jusqu'à ce que John termine son travail pour s'assurer que tout va bien. Comme nous l'avons déjà dit, cela pourrait prendre plusieurs jours.

Maintenant, si vous avez une boîte puissante dans le seul but de tester les mots de passe, ce qui est toujours une bonne chose compte tenu des moyens, vous pouvez essayer vos mots de passe réels avec John. Une façon consiste à utiliser / etc / l'ombre directement, mais nous vous recommandons de suivre un cours quelque peu différent. Notez que cela s'applique aux systèmes à l'aide de mots de passe d'ombre, et toutes les distributions Linux modernes font. John propose un utilitaire Nifty appelé Unshadow, que nous utiliserons pour créer un fichier à partir de nos fichiers Passwd et Shadow:

 # Unshadow / etc / passwd / etc / shadow> mypasswd.SMS 

Assurez-vous maintenant que MyPasswd.TXT est disponible pour votre utilisateur normal et faire

 $ / usr / sbin / John mypasswd.SMS 

John essaiera d'abord le mode de fissure unique, puis le mode Word Liste, puis incrémentiel. En termes de John, un mode est une méthode qu'il utilise pour casser les mots de passe. Comme vous le savez, il existe de nombreux types d'attaques: attaques du dictionnaire, attaques de force brute, etc. Eh bien, c'est à peu près ce que sont les modes de John. Comme certains d'entre vous pourraient l'avoir réalisé, le mode WordList est essentiellement une attaque de dictionnaire. Outre ces trois modes énumérés ci-dessus, John supporte également un autre appelé mode externe. Vous pouvez sélectionner le mode à utiliser avec, par exemple, -ing, -external, et ainsi de suite. Nous vous recommandons de consulter la documentation sur OpenWall.com pour une bonne mais brève description de chaque mode. Mais bien sûr, nous vous dirons, en bref, ce que fait chaque mode.

La documentation de John the Ripper recommande de commencer par le mode de crack unique, principalement parce que c'est plus rapide et encore plus rapide si vous utilisez plusieurs fichiers de mot de passe à la fois. Le mode incrémentiel est le mode le plus puissant disponible, car il essaiera diverses combinaisons lors de la fissuration, et vous pouvez choisir le type de mode (mode appliqué à l'option incrémentielle) à utiliser, y compris le vôtre. Le mode externe, comme son nom l'indique, utilisera des fonctions personnalisées que vous écrivez vous-même, tandis que le mode WordList prend une liste de mots spécifiée comme argument à l'option (il peut s'agir d'un fichier avec une liste de mots écrits par ligne, ou stdin) et essaie une simple attaque de dictionnaire sur les mots de passe.

Si John réussit à craquer l'un des mots de passe, il écrira à ~ /.John John.pot. Cependant, ce fichier n'est pas lisible par l'homme, vous pouvez donc lire les mots de passe fissurés avec

 $ / usr / sbin / John --show mypasswd.SMS

Pour vérifier si le mot de passe racine a été fissuré, filtrez par UID:

 $ / usr / sbin / John --show --Users = 0 mypasswd.SMS

Bien sûr, John connaît les caractères génériques et plusieurs fichiers:

 $ / usr / sbin / John --show --Users = 0 * passwd *


Tout comme vous pouvez filtrer par l'utilisateur, vous pouvez également filtrer par groupe, en utilisant l'indicateur-Groupes, et ce filtrage est également disponible lors de la fissuration. En allant plus loin en mode Wordlist, voici comment vous pouvez l'utiliser avec les règles de mangling intégrées activées:

 $ / usr / sbin / John - WordList = Passwd.LST - Rules Passwd.SMS

John vous permet également de créer plusieurs sessions nommées, ce qui est pratique, car comme John peut prendre beaucoup de temps pour accomplir une tâche, vous pouvez ensuite voir toutes les sessions en cours d'exécution pour décider laquelle tuer. L'option pour les sessions nommées est -Session = TaskName et vous pouvez utiliser -status ou -status = taskName pour voir toutes les sessions ou certaines sessions. Mais il y a plus: vous pouvez restaurer des sessions ou des sessions particulières en utilisant -Restore ou -Restore = TaskName. Quelques exemples:

 $ / usr / sbin / John - session = Allrules - WordList = tout.lst --rules mypasswd.txt $ / usr / sbin / John --status = allrules $ ps Aux | grep John #get le pid of the John Session Vous voulez tuer $ kill hup $ pid_of_john_session_to_kill $ / usr / sbin / John --restore = allrules 

Voici quelques exemples d'utilisation du mode incrémentiel avec John:

 $ / usr / sbin / John - MyPasswd, MyPasswd.txt $ / usr / sbin / John - Incremental = alpha mypasswd.SMS 

Bien sûr, ce n'est pas un remplacement de la documentation de John. Bien que, comme nous l'avons dit, il n'offre pas de page manuelle, vous trouverez beaucoup de documentation sur sa page, ainsi qu'un wiki utile. Par exemple, vous remarquerez que même si vous exécutez John sur une machine multiprocesseur, il n'utilisera qu'un seul noyau, généralement le premier. Vous pouvez résoudre ce problème en lisant la documentation et en suivant les instructions là-bas.

Conclusion

Nous pensons qu'il pourrait être préférable de terminer cet article avec un petit mot sur l'éthique. Bien que cela ne soit peut-être pas très bien, il y a ces quelques-uns qui ont vu des pirates trop de fois et penser à craquer (par opposition au piratage) comme une activité cool. Nous vous suggérons d'essayer d'utiliser vos connaissances pour de bon, pas pour quelque chose qui a 99.8% d'échec et de vous obtenir un bon casier judiciaire. Amusez-vous.

Tutoriels Linux connexes:

  • Comment casser le mot de passe zip sur Kali Linux
  • Liste des meilleurs outils Kali Linux pour les tests de pénétration et…
  • Choses à installer sur Ubuntu 20.04
  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
  • Choses à faire après l'installation d'Ubuntu 22.04 Jammy Jellyfish…
  • Choses à installer sur Ubuntu 22.04
  • Ubuntu 20.04 Guide
  • Système linux hung? Comment s'échapper vers la ligne de commande et…
  • Une introduction à l'automatisation Linux, des outils et des techniques
  • Mint 20: Mieux que Ubuntu et Microsoft Windows?