Et pourtant, en une seule journée, Nat Andersen affirme avoir réussi à cracker 8 000 mots de passe. Nulle vantardise dans ses propos. Juste un signal d’alarme tiré sur la fragilité du duo id/password.
« Voir son propre mot de passe tomber en moins de quelques secondes est le genre d’expérience que tout le monde devrait faire, ne serait-ce qu’une fois… ne serait-ce que parce qu’elle permet de mieux concevoir ses propres mots de passe », écrit-il.
La première étape de son expérience a consisté à trouver un fichier avec une liste de mots de passe « hashés », passés à la moulinette d’algorithmes qui les rendent illisibles. Trouver une telle liste (un fichier « MD5.txt » de 15 000 mots hashés) fut visiblement chose facile sur Internet.
Le but à partir de là était de retrouver la forme « en clair » de ces mots « hashés ». Pour cela, le journaliste s’est procuré un des plus célèbres « password cracker » - « pardon, "un spécialiste de la récupération de mots de passe" », plaisante-t-il - un logiciel dénommé Hashcat.
Après des essais infructueux pour le faire marcher directement en ligne de commande sur un MacBook Air, le « script kiddie » passe alors sur un (volontairement) vieux laptop sous Windows et lance, sans aucun problème, Hashcat avec une interface graphique.
Nat Andersen part alors à la chasse d’une liste de mots de passe « communs ». Le but étant de les passer à la moulinette de Hashcat – qui les hashe - et de comparer chaque résultat aux chaînes de caractères de la liste « MD5.txt » pour retrouver les mots de passe originaux.
Depuis 2009, une telle liste particulièrement redoutable existe. Avant cette date, les pirates essayaient de constituer un dictionnaire de mots de passe en devinant les plus populaires. Après la perte de 14,5 millions de passwords uniques, lâchés dans la nature par une compagnie de jeux baptisée « Rock You », le piratage a changé d’ère. « Oubliez les spéculations, Rock You nous donne une liste de mots de passe véritablement utilisés par les gens ».
Extrait de la liste « Rock You »
« Trouver le fichier Rock You m’a pris trois minutes », constate Nat Anderson. Problème, faire fonctionner Hashcat n’est pas si simple. Et une fois la liste passée dans le « password cracker », aucun mot n’est cassé.
Un échec total pour un « newbie » ? Oui. Mais heureusement – si l’on peut dire – un expert en sécurité de chez Errata Security a essuyé les mêmes revers et les a racontés, puis a documenté ses propres essais pour déchiffrer une liste similaire volée à LinkedIn.
La clef se trouvait en fait dans les « règles ». Une règle permet d’extrapoler des combinaisons en fonction de la liste de départ. Par exemple, si un mot de passe est « Developpez », alors une règle pourra faire tester au programme toutes les variantes avec deux chiffres supplémentaires (de « Developpez00 » à « Developpez99 »).
Les choses étant bien conçues, Hashcat embarque son propre lot de règles complexes, dont une recoupe les pratiques les plus communes des utilisateurs. Nat Anderson repasse alors Rock You dans le programme, mais cette fois-ci avec cette règle « best64.rule » sur les « conseils » involontaires de l’expert de Errata Security.
En soi, « best64 » est un résumé de toutes les pratiques à bannir pour la sécurité : mot inversé (« zeppoleveD ») , ajout d’un chiffre (« Developpez1 »), ajout des 14 combinaisons de chiffres les plus usités, ajout d’un « s » à la fin du mot, ajout de suffixe populaire (man, dog, 123), puis la même chose mais en pré-fixe (« 1Developpez »), puis essai en Leet (« |)3\/3£0|*|*3% »), puis des rotations de lettres sont tentées.
Avec cette règle « Best64 », Nat Anderson lance à nouveau le processus. Résultat : un seul mot de passe hacké.
Déçu, le « script kiddie » décide alors de revenir aux basiques et lance une attaque de force brute. En clair, le logiciel commence par hasher « aaaaa » puis le compare à la liste, puis hashe « aaaab », etc.
Pour que la méthode fonctionne à peu près, il faut néanmoins l’encadrer avec quelques options pour que le tout ne prenne pas des années. Et là encore, surprise, Hashcat offre des outils préconfigurés. Le journaliste se limite donc aux password de 6 caractères, sans majuscules.
Résultat, 32 mots de passe tombent en 6 minutes. Trop lent.
Nat Anderson décide alors de faire encore plus simple. Il retire les chiffres et les symboles des options de l’attaque. Pour 334 résultats en une minute. Des mots simples comme « violet » ou « ludwig » curieusement absents du fichier Rock You.
Nat Anderson commence à se dire que les choses ne sont pas si simples. Il décide alors de nourrir Hashcat avec des dictionnaires de langues (anglais et allemand) et une liste de noms et prénoms glanés sur Facebook (un fichier téléchargé sur un autre forum de piratage). Mais rien ne fonctionne.
Nous voilà rassurés. Pirater des mots de passe n’est donc pas à la portée du premier venu.
Sauf que…
Sauf que Nat Anderson avait tout faux dès le départ en oubliant simplement de décompresser ses fichiers. Une fois Rock You décompressé, les résultats tournent au carnage : 5 000 passwords tombent en une minute. Puis avec les règles, 8 000.
Ces résultats restent « modestes ». Mais les vrais pirates utilisent des machines plus puissantes qu’un laptop vieillissant. Voire le Cloud (comme ce fut déjà le cas).
Nat Anderson souligne par ailleurs qu’il n’a utilisé que deux modes d’attaques du logiciel et que d’autres, plus performantes, mais plus gourmandes en ressources, sont disponibles à portée de clics. Sans oublier que d’autres « password crackers » sont encore plus évolués et s’appuient par exemple sur des statistiques pour déterminer si un caractère a plus ou moins de chance de succéder à un autre (ce qui optimise drastiquement les attaques de force brute).
Nat Anderson applique ensuite sa méthode « simple » à ses mots de passe à lui et réussit à les faire tomber en quelques secondes. Il décide de les améliorer sur le champ.
Fort de son expérience, le journaliste donne cinq conseils, que les experts connaissent déjà mais qu’il est toujours bon de rappeler quand on voit avec quelle facilité ces mots de passe sont piratés par des amateurs éclairés : utiliser des algorithmes plus performants que le MD5, « hasher » plusieurs fois le même mot de passe, utiliser le salage (ajouter des caractères aléatoires avant de hasher le password), et surtout avoir des mots de passe beaucoup plus longs (le temps demandé pour une attaque par force brute suit une courbe exponentielle - un mot de passe de plus de 8 caractères rend ainsi la force brute quasi impossible) – et qui sont entrecoupés de caractères choisis au hasard.
Humainement, Nat Anderson s’est également fait peur. « On se prend très vite au jeu. […] C’est addictif. C’est comme un puzzle mathématique ». L’attrait du côté obscur de la Force.
Reste que pour pirater des services (comme des sites, ou un compte en banque) le fichier contenant les hash des mots de passe doit lui-même être piraté et divulgué. Ce qui est une autre histoire. Malheureusement plus courante qu'on ne pourrait l'espérer.
Source : « How I became a password cracker », récit de Nat Anderson sur ArsTechnica
Et vous ?
Comment améliorez-vous la sécurité de vos mots de passe ?