24 septembre 2013

Cracker les mots de passe

Quand j'étais jeune responsable informatique, dans les années 1990, il existait une "tradition" chez les administrateurs réseaux de l'époque: le test des mots de passe des utilisateurs pour vérifier la sécurité du réseau informatique que l'on gérait.

C'est ainsi que j'ai découvert le logiciel "crack", librement distribué et partagé sur internet par les administrateurs réseaux.

C'est aussi à cette époque que j'ai compris l'intérêt de partager des connaissances utiles pour ceux qui souhaitent se protéger, partant du principe que ces connaissances étaient déjà dans les mains de ceux qui veulent attaquer.

Voici donc un billet sur les outils que j'utilise aujourd'hui dans les analyses que j'ai à mener, soit dans le cadre judiciaire, soit dans le cadre professionnel (quel admin n'a pas déjà eu à contourner un mot de passe root, ou un mot de passe BIOS). J'espère qu'il pourra être utile aux experts judiciaires débutants en la matière, ou à tout ceux qui veulent tester leur réseau informatique personnel ou professionnel.

Dernier point: il n’est pas inutile de rappeler que toute utilisation illégale de ce type d'outils entraîne votre responsabilité juridique. Si vous cherchez à intercepter le mot de passe de votre patron, ou faire une bonne blague à votre collègue, passez votre chemin. Si vous êtes administrateur réseau, vérifiez avant vos tests que vous avez l'approbation et le soutien de votre hiérarchie, ce qui ne coule pas de source. Enfin, chers parents, ou chers enfants, la récupération des mots de passe des membres de votre famille pour s'en servir à leur insu est réprimandée par la loi.

Bref, ce qui est mal est mal, ce qui est illégal est illégal...

Note à mes lecteurs issus ou nageant déjà dans l'univers de la sécurité informatique, ne vous attendez pas à des découvertes techniques incroyables dans ce qui va suivre, considérez ce billet comme une initiation au B.A.BA pour mes lecteurs "mékeskidis" (© Maître Eolas) ou les simples curieux.

---------------------------------------
0) L'outil magique, celui qui impressionne les amis : Ophcrack

Rendez-vous sur le site de téléchargement d'Ophcrack, récupérez le liveCD qui va bien (Vista/7 par exemple), gravez le et bootez votre machine Windows 7. Regardez et admirez, c'est plug and play.

Ophcrack fonctionne très bien également sur des machines virtuelles, par exemples des images disques créées par la commande "dd" et transformées en VM par liveView.

Pour les plus motivés d'entre vous, il existe des "tables arc en ciel" en téléchargement plus ou moins libre sur internet, permettant d'améliorer les performances de récupération des mots de passe. Attention, ces tables peuvent faire plusieurs gigaoctets. Vous pouvez également les faire vous même (par exemple avec RainbowCrack): prévoir un ordinateur TRES puissant et plusieurs mois de calculs...

Ophcrack est un outil précieux lors des perquisitions, où l'on rencontre souvent du matériel sous Windows XP ou Windows 7.

Conseil aux administrateurs réseaux débutants: bloquez très vite le mode "boot sur CD" de tous les postes que vous administrez...


---------------------------------------
1) L'ancêtre, celui qui fera de vous un barbu : crack

Crack est un logiciel de recherche de mot de passe par création de combinaisons de mots courants stockés dans des fichiers. Je dois à ce logiciel ma plus belle collection de "dictionnaires", le mot étant à prendre ici au sens de "liste de mots" (sans définition). J'ai des dictionnaires de mots dans un grand nombre de langues, des dictionnaires de mots écrits en phonétique, des règles de codage/décodage en langage SMS (t1t1 pour tintin), etc. J'ai également récupéré, quand ils ont été disponibles sur internet, tous les fichiers de mots de passe (parfois plusieurs millions) d'utilisateurs...

Comme indiqué en préambule, c'est le premier programme que j'ai utilisé dans le contexte d'analyse de la sécurité de mon réseau, pour tester la validité des mots de passe choisis par les étudiants. Je précise que je suis barbu avec modération. 20% des mots de passe utilisés par les étudiants ont été trouvés en moins de 5 mn, 80% en moins d'une heure. J'ai affiché dans le couloir du laboratoire informatique la liste des mots de passe par ordre de découverte (sans le nom du compte associé), avec obligation pour chaque étudiant de changer leur mot de passe... Toute une époque ;-)

Crack est un programme conçu pour UNIX et fonctionnant sous UNIX. La rubrique "Troll" de la FAQ est instructive à ce sujet. Ceux qui ont un peu plus de temps, liront avec délice les emails les plus curieux envoyés au développeur de crack.

C'est un programme pédagogique, qui peut encore être utile, même si je dois avouer ne pas m'en être servi depuis longtemps.


---------------------------------------
2) La référence : John l'éventreur

John The Ripper, ou JTR, est l'une des références dans l'univers des briseurs de mots de passe. Bien qu'un peu ancien maintenant, ce logiciel a su évoluer pour utiliser différentes méthodes d'approche.

Il a surtout l'avantage de fonctionner dans beaucoup d'environnements: Windows, Linux, Mac OS, etc. C'est encore un logiciel basé sur des dictionnaires.

Je raconte dans ce billet, une petite anecdote liée à la présence de ce logiciel sur le poste de travail d'un salarié avec le mot de passe du patron dans un fichier texte...


---------------------------------------
3) L'attaque à distance multi-protocoles : Hydra

Si vous devez auditer un ensemble de postes, de serveurs, de protocoles, de services, de trucs à distance, ou tout simplement un ordinateur allumé ciblé, le tout sans bouger de votre poste d'analyse, voici le produit qu'il vous faut: THC-Hydra.

Je reporte ici la description du produit extraite de ce manuel en français: THC Hydra est un crackeur de mot de passe réseau supportant les protocoles suivants: TELNET, FTP, HTTP-GET, HTTP-HEAD, HTTPS-GET, HTTP-HEAD, HTTP-PROXY, HTTP-PROXY-NTLM, HTTP-FORM-GET HTTP-FORM-POST, HTTPS-FORM-GET, HTTPS-FORM-POSTLDAP2, LADP3, SMB, SMBNT, MS-SQL, MYSQL, POSTGRES, POP3-NTLM, IMAP, IMAP-NTLM, NNTP, PCNFS, ICQ, SAP/R3, Cisco auth, Cisco enable, SMTP-AUTH, SMTP-AUTH-NTLM, SSH2, SNMP, CVS, Cisco AAA, REXEC, SOCKS5, VNC, POP3, VMware-Auth, NCP, Firebird.

Le logiciel possède deux modes de fonctionnement: l'attaque par dictionnaires ou par force brute. A ce propos, ne pas oublier les fonctionnalités moins connues du couteau suisse des réseaux: nmap et ses possibilités d'attaque par force brute.


---------------------------------------
4) Le mot de passe BIOS oublié : PC CMOS Cleaner

Toute la description est dans le titre. La encore, un liveCD à télécharger pour booter ensuite dessus. Rapide, efficace, mais modifie le scellé ce qui est interdit.

Sinon, la vieille méthode dite de "la pile BIOS à enlever" marche toujours, mais il faut savoir la trouver, surtout sur les ordinateurs portables. Encore une fois, interdit dans le cas d'un scellé.


---------------------------------------
5) Efficace mais long : les emails

La meilleure de toutes les solutions est un constat simple que je fais souvent: la grande majorité des gens n'utilisent qu'un ou deux mots de passe, pour tous les systèmes d'authentification qu'ils rencontrent.

Il est donc très probable que l'utilisateur de l'ordinateur analysé ait choisi son mot de passe "habituel" pour s'enregistrer sur un site quelconque de téléchargement de démos, d'achats en ligne ou de webmail. Parmi tous les sites en question, il n'est pas rare que le mot de passe utilisé lors de la procédure d'inscription soit envoyé EN CLAIR dans l'email de confirmation de création du compte.

Il suffit donc d'analyser les correspondances emails (Outlook, Thunderbird, traces logs des différents navigateurs, etc) pour retrouver un ensemble d'emails du type "votre mot de passe est bien ZorroDu69, merci de conserver cet email" (oui, merci). Quand vous listez ensuite tous les mots de passe ainsi trouvés, le nombre dépasse rarement 3 ou 4. Il ne reste plus qu'à les tester sur le compte ciblé pour trouver le bon.

C'est l'application d'une des bases de l'ingénierie sociale...


---------------------------------------
Conclusion

L'amoureux de la vie privée que je suis commencera par un conseil sur les mots de passe: choisissez les de manière à ce qu'ils ne puissent pas apparaître dans une liste de mots de passe, et suffisamment longs pour qu'ils résistent à une attaque par force brute. Je donne souvent l'exemple des premières lettres des mots d'une chanson ou d'un poème, en mélangeant majuscules et minuscules, ex: LsLdvdLBmCdULm, auxquelles vous ajoutez quelques chiffres (en majuscule, non, je plaisante), ex: LsLdvdL1844BmCdULm1896. C'est beau, c'est long, c'est bon, c'est difficile à deviner quand on vous regarde taper sur le clavier (sauf si vous chantonnez).

Mais attention, ce n'est pas inviolable (cf point n°0 sur Ophcrack et le boot sur cédérom).

Ensuite, un conseil encore plus pénible: choisissez un mot de passe très différent pour chaque compte informatique. Dix comptes, dix mots de passe. 50 comptes, 50 mots de passe. Un mot de passe pour Twitter, un autre pour Facebook, un autre pour Gmail, etc. Évidemment, la nature humaine est ainsi faite que la mémorisation parfaite de tous ces mots de passe devient un tantinet compliquée. Je vous recommande donc le logiciel KeePass pour stocker de façon sécurisé tous vos mots de passe. Ce logiciel est même certifié par l'ANSSI, c'est dire. Il peut également générer des mots de passe très long aléatoirement, avec la possibilité de faire des copier/coller, ce qui revient à ne même pas connaître le mot de passe que vous utilisez.

Du coup, vous n'avez à retenir vraiment qu'un seul mot de passe, jamais mis par écrit: celui de l'accès à KeePass. De plus, ce logiciel est à double authentification (présence d'un fichier à choisir + mot de passe). Vous pouvez même placer KeePass sur le Cloud pour pouvoir y accéder de partout !

Cracker des mots de passe est une activité assez amusante, un petit défi technique accessible à tous. Il est par contre plus difficile pour certains étudiants de garder à l'esprit que tout ce savoir technique doit servir du bon côté de la Force. Quoi qu'il en soit: sit vis vobiscum !


32 commentaires:

  1. Tu as aussi des logiciels comme Hashcat qui te permettent de faire du bruteforce pur et dur en utilisant la puissance de ta/tes carte(s) graphique(s)..
    http://hashcat.net/oclhashcat-plus/
    C'est certes moins fin que tes solutions (quoi que John ou Hydra sans dictionnaire c'est la même chose...) mais ca a l'avantage d'être optimisé pour les traitements parallèles...

    RépondreSupprimer
  2. Bonjour,
    Merci de partager vos expériences (et du blog en général). Concernant le choix du mot de passe je me permettrais d'ouvrir le débat avec ce strip assez connu : http://xkcd.com/936/ «En 20 ans d'effort, nous avons réussi à entraîner les gens à utiliser des mots de passe difficile à retenir pour les humains mais faciles à casser (deviner) pour les ordinateurs.»
    (Ok, tout dépend de l'usage que l'on fait du mot de passe et de comment il est stocké)

    RépondreSupprimer
  3. Oui, on veut voir le XKCD 936!

    RépondreSupprimer
  4. Merci pour le tuto, mon expérience me fait dire qu'il est toujours plus facile de casser que de construire. de plus dès qu'il y a un accès physique à la machine, ce n'est qu'une histoire de temps et d'outils pour qu'elle se déshabille, elle peut même enlever des choses insoupçonnées sur chaque composant du hard. A si le monde des processeur m'était conté !
    Cordialement

    RépondreSupprimer
  5. Question d'un mékiskidi : c'est quoi l'intérêt des machines virtuelles ? quand on a des liveCD, on peut bouter chaque os qu'on veut non ? Et on "gache" pas de la puissance à émuler ?

    RépondreSupprimer
  6. En tant qu'admin il y a également konboot (http://www.piotrbania.com/all/kon-boot/) et ntpasswd (http://pogostick.net/~pnh/ntpasswd/) qui peuvent être utiles.

    Ils ne permettent pas la récupération d'un mot de passe : konboot contourne la sécurité en permettant de se logguer sans password (windows & linux), et ntpasswd permet de réinitialiser le mot de passe sans connaitre l'ancien.
    ntpasswd peut également éditer une base de registre.

    RépondreSupprimer
  7. Merci pour ces conseils.
    Quand vous dites 20 % de mots de passe cracqué en moins de 5 minutes et 80 % en moins d'une heure, cela veut il dire que 100 % des mots de passe ont été craqué (les 20 % + les 80 %), ou seulement 80 % ?
    Krka

    RépondreSupprimer
    Réponses
    1. Tel que rédigé, cela veut dire que les 20% sont inclus dans les 80%. Donc, au bout de l'heure de recherche, il en reste encore 20% qui n'ont pas été craqués.

      Supprimer
  8. Bonjour,
    Merci de nous faire partager votre expérience !
    Toutefois opter pour une solution "certifié par l'ANSSI" n'est-il pas le meilleur gage que KeePass ait une backdoor ?
    De plus face à l'intérêt que représente le stockage de tous les mots de passe d'une personne de façon centralisée dans un logiciel (mais aussi sur le Cloud !) les appétits de certains pour y accéder ne vont être très grand ... Surtout que les personnes qui optent pour ce genre de méthode ne sont Monsieur tout le monde

    RépondreSupprimer
  9. pastebin.com peut constituer une source d'information surprenante quand il s'agit de trouver des couples login/mail:password. On y trouve régulièrement des dumps de bases de données, parfois même de gros sites. Sur les plus importants leaks, le document se présente sous la forme d'un simple extrait accompagné d'un lien pour télécharger l'intégralité des données... Si l'on a récupéré un certain nombre de ces bases, je présume qu'il y a matière à l'étonnement, par exemple lorsqu'il est question de trouver le mot de passe associé à une adresse mail.

    RépondreSupprimer
  10. de base, il est très facile de cracker des mots de passe avec attaque brute ou dico

    SAUF si on fait en sorte d'obliger un certain temps après trois/quatre/cinq essais erronés

    dans ce cas là, c'est quasiment inviolable

    je pense que c'est aussi une leçon à tirer

    j'avais lu un article là dessus il y a quelques années (mais ça parlait d'internet)

    RépondreSupprimer
  11. Détrompes-toi, il est des attaques où le principe est de de répartir la force de frappe entre un grand nombre de cibles. Prenons un CMS très utilisé, au hasard WordPress. Il est tout à fait envisageable de réaliser un bruteforce à haute fréquence en réalisant un roulement sur plusieurs centaines/milliers d'adresses. Ainsi chaque cible subirait une tentative toutes les x minutes. En plus de ne pas être gêné par les trois secondes entre deux tentatives, il est possible de bypasser d’hypothétiques limitations sur le nombre d’essais avant blacklist. Bien entendu, il n’est pas question d’atteindre une cible en particulier du coup.

    RépondreSupprimer
    Réponses
    1. je comprends l'intérêt pour le hacker et la "productivité" de son attaque mais avec cette méthode, il arrivera surtout à trouver les portes "grandes ouvertes"

      je veux dire, plutôt que faire du brute force, c'est surement plus utile de chercher les mots de passe les plus utilisés puisque sur un très grand nombre de cibles il y a une grande chance d'en trouver un

      cela dit, si tu cumules mot de passe un peu compliqué (pas dans le top 100 des plus donnés) et X minutes après X tentatives, tu devrais quand même être relativement bien protégé je pense

      Supprimer
  12. Pour un scelle et le mot de passe BIOS, ce n'est pas interdit de le modifier ou de le supprimer, tant que vous en demandez l'autorisation au juge d'instruction qui vous a missione (si tel est le cas, evidemment).

    RépondreSupprimer
  13. Personnellement, je suis fan de cet article: http://arstechnica.com/security/2013/03/how-i-became-a-password-cracker/ qui fait prendre conscience de la fragilité des mots de passe.

    Certains programmes déclarent pouvoir accélérer le cracking en utilisant les GPU, je me demande si des programmes gratuits et mieux en opensource le permettent...

    Dernier point, à une époque on pouvait installer linux sur sa PS3, certains labos de recherche ont profité de cet exploit pour monter des centres de calculs répartis à base de PS3 car c'était le meilleur rapport performance/prix de l'époque. Je me demande quelle serait la capacité de hack d'une PS3 dédiée au crack de mots de passe...

    RépondreSupprimer
  14. Merci pour cet article intéressant !
    Comme le signale Clément Thersiquel, Hashcat est significativement plus rapide que ses concurrents.
    Les papiers de la PasswordsCon (notamment 2013 : http://passwordscon.org/#sched) sont aussi une mine d'or d'info sur le crackage des mots de passe.

    RépondreSupprimer
  15. Merci pour ce partage très intéressant. C'est ce genre d'initiative qui fait avancer la protection en termes de sécurité informatique. Pour ce que les gens vont en faire, c'est leur affaire.

    RépondreSupprimer
  16. Hello,
    Quel est le niveau de sécurité d'une encrytion MS office?

    RépondreSupprimer
  17. Bonjour,
    Je suis votre blog avec intérêt depuis un moment déjà.

    J'ai pu voir dans certains de vos articles que vous faites de temps en temps des "perquisitions" directement chez les personnes concernées.

    Une autre technique, pour trouver une clé ou un mot de passe, consiste à faire un dump de la mémoire vive d'un ordinateur encore allumé pour récupérer certaines informations. Il n'y a pas si longtemps, on pouvait récupérer les login / pass d'un mac, ou encore récupérer la clé pour les partitions chiffrées avec TrueCrypt.

    Or je ne vois pas cette technique dans vos articles. Est ce interdit d'utiliser ces méthodes dans le cadre d'une expertise ?

    RépondreSupprimer
    Réponses
    1. La raison est très simple: je n'ai jamais eu le cas de figure...

      Supprimer
  18. Bonsoir je recherche un logiciel qui peut me permettre de prendre n'importe quel adresse webmail et mot de passe comme c'est gens de webmail : webmail zimbra , https://mail.aujourdhui.ma:2096/ , mail.alice.it, http://webmail.supereva.it , http://webmail.aliceadsl.fr/ , cialne.com.br

    RépondreSupprimer
  19. Bonsoir,
    Petite question simple : un expert judiciaire a-t-il le droit de cracker le mot de passe d'un téléphone portable ?

    RépondreSupprimer
    Réponses
    1. Oui, dès lors qu'il agit conformément à la mission qu'il a reçu d'un magistrat.

      Supprimer
  20. Bonjour,

    Super article ! Bravo je ne soupçonnai pas l’existence d’autant de hack tools. Merci pour le partage ne tous cas.

    Si je peux me permettre, il existe aussi des logiciels comme spymail ou spyusb (qui sont malheureusement payant 10€ https://web-toolz.net) qui sont de faux installateurs qui envoient par mail ou inscrive sur la clé usb la liste des mots de passe enregistré par les programme du pc, comme les navigateur ou outlook par exemple. C'est assez discret parce que l'installateur affiche un message d'erreur factice. D'ailleurs une fois, j'ai été chez un ami avec ma clé usb (mais il aut être malin, j'avais mis de coté le vrai install de photoshop aussi ^^) et donc j'ai exécuté spymail devant ses yeux puis j'ai dit "mince, c'est pas le bon", ensuite j'ai exécuté le bon install photoshop et hop, le tour est joué. j'ai attendu une semaine et je lui ai dit que j'avais ses mots de passe. il pensait que je lui avait piraté à distance, il ne voyait pas à quel moment j'aurais pu le pirater vu que je ne vais jamais sur son pc sans sa présence =) c'est un bon pote donc sa m'a fait marré de le pirater mais c'est aussi ça le social engineering, le plus simple parfois c'est la faille humaine :)

    par contre en revanche ce que je trouve dommage c'est qu'il n'y a pas de soft pour hacker un tel, car les iphone et android ont des store pourri qui bloquent les téléchargement.... et installer un APK ou Jaibreaké n'est pas un truc qu'on peut demander au premier venu...

    RépondreSupprimer
    Réponses
    1. ben moi j aimerai vraiment trouve les mot de passe un un pc mais est ce possible si il est protégé déja a l allumage par un mot de passe justement ? (qui bloque tout accès ensuite)

      Supprimer
  21. Enfin, chers parents, ou chers enfants, la récupération des mots de passe des membres de votre famille pour s'en servir à leur insu est réprimandée par la loi.
    http://goo.gl/Jz4Kae

    RépondreSupprimer
  22. En lisant vos commentaires, je vois que ce ne sont que des pros ou presque qui commentent ici.
    Je ne suis qu'une noob et j'en suis bien malheureuse, car malgré beaucoup de recherches, je ne suis pas parvenu a trouver une seule réponse à ma question.

    Je recherche un programme facile a utiliser(ne pas oublier je suis une N00B), pour retrouver un ancien mot de passe sur un site où je ne suis pas aller depuis belle lurette.
    Depuis ma dernière présence sur ce site, j'ai changer :

    1. de disque dur (2x)
    2. de portable

    Donc tous les logiciels qui fouillent dans notre ordinateur pour retrouver les anciens passes sont inefficace dans mon cas.

    De plus, tous les logiciels en ligne ne sont là, que pour permettre d'avoir des passes de site comme Facebook, Gmail, et co.

    Je suis coincé à la maison et je veux juste retrouver mon foutu mot de passe sur un site de jeu familial(non ne rigoler pas svp).

    Donc si une âme charitable à le truc magique ou le site magique pour me permettre de retrouver ce que je cherche...j'en serai la plus heureuse.

    Encore une fois, excusez moi d'être venu vous questionner...vous les seigneurs du mot de passe lolll

    Merci

    P.S. Pourquoi demandez vous aux femmes d'éviter les propos insultants et haineux ??? Ca n'existe pas ce problème chez la gente masculine ce problème ????? :D

    Signé : FURAX lollll

    RépondreSupprimer
    Réponses
    1. Le plus simple est d'utiliser la procédure de renvoi de mot de passe du site, ou de contacter les administrateurs du site.

      PS: relisez bien le chapeau de la zone de commentaires, il s'adresse aux femmes ET aux hommes (* lecteur *).

      Supprimer
  23. Bonjour,

    Ce que je ne suis pas sûr d'avoir bien compris : ces logiciels permettent-ils de hacker à distance ou est-il nécessaire de les faire tourner depuis le PC de l'utilisateur?

    J'en ai essayé plusieurs et je les ai trouvé très dur d'utilisation. Je ne suis pas une informaticienne chevronnée ;)
    Lequel vous semble le plus accessible pour retrouver un mot de passe gmail?

    Merci pour vos réponses,

    Elodie

    RépondreSupprimer
  24. Bonjour
    Je ne sais pas si je tape à la bonne porte mais peut-être pourrez vous m'aider ?
    J'ai oublié un mot de passe (ou plutôt une phrase passe) qui me servait à utiliser un logiciel "porte-monnaie" (bitcoinQT).
    Aujourd'hui les bitcoins ont pris de la valeur et je ne peu donc pas les utiliser...
    Pensez vous pouvoir m'aider ?
    Je suis sous Mac OS
    Merci à vous

    RépondreSupprimer

Lectrice, admiratrice, avocate, magistrate, programmeuse, dessinatrice, chère consœur, femmes de tous les pays, lecteur, j'ai toute confiance en vous pour prendre bien soin de vérifier que votre prose est compatible avec les normes orthographiques et grammaticales en vigueur. Et si vous pouviez éviter les propos insultants ou haineux, je vous en serais reconnaissant.
N'hésitez pas à respecter ces quelques règles qui peuvent même s'appliquer en dehors de ce blog.

Les commentaires sur ce blog sont modérés. Votre message apparaîtra sur le blog dès que le modérateur l'aura approuvé. Merci de votre patience.