Casser des mots de passe fait partie des disciplines
incontournables des hackers et autres pirates. Jusqu’à présent, cet art
est essentiellement manié à l’aide d’outils automatisés tels que
John The Ripper ou
Hashcat.
Ces derniers s’appuient sur des dictionnaires de mots et des règles
d’altération (ajout de chiffres en fin de mot, remplacement
majuscules-minuscules, écriture
« leet »,
etc.) pour générer des mots de passe possibles et deviner le code
secret qui se cache derrière une empreinte cryptographique. Mais
bientôt, les attaquants pourront peut-être jouir de nouveaux logiciels,
plus efficaces, grâce aux progrès de l’intelligence artificielle. Des
recherches sont actuellement en cours dans ce domaine et les premiers
résultats sont encourageants.
Quatre chercheurs issus de Stevens Institute of Technology et New
York Institute of Technology viennent ainsi de mettre au point une
méthode
baptisée « PassGAN », basée sur un double réseau neuronal appelé
« generative adversial network » (GAN). L’idée est de prendre une liste
de mots de passe et d’utiliser le premier réseau neuronal pour générer
de nouveaux mots de passe. Ceux-ci seront alors analysés par le second
qui ne retiendra que ceux qu’il juge « bons » et qui seront alors
retransmis au premier pour en générer d’autres. Et ainsi de suite. Ces
itérations successives permettent de créer plein de nouveaux mots de
passe dont la « qualité » est très proche de la liste de départ.
Générer des centaines de millions de mots de passe...
Les chercheurs ont expérimenté leur méthodes en prenant comme liste
de départ 23 millions de mots de passe issus de la base de données du
service en ligne RockYou, qui a fuité en 2010. Ils ont ensuite généré
528 millions de mots de passe avec leurs réseaux neuronaux. Ils ont
également généré des mots de passe avec les outils usuels : 528 millions
avec John The Ripper, 646 millions avec Hashcat version best64 et 441
millions avec Hashcat version gen2. Puis ils ont comparé tous ces
nouveaux mots de passe avec la base LinkedIn, qui a fuité en 2016.
Résultat : les réseaux neuronaux ont permis de découvrir 11,5 % des
mots de passe LinkedIn, contre 6,37 % pour John The Ripper, 14,5 % pour
Hashcat gen2 et 22,9 % pour Hashcat best64. Certes, la méthode PassGAN
n’arrive qu’en troisième position, mais en combinant les réseaux
neuronaux avec Hashcat gen2, le taux monte à 27 %.
« C’est
remarquable, car cela montre que les deux réseaux neuronaux peuvent
générer un grand nombre de mots de passe qui sont hors de portée des
outils de génération usuels », soulignent les chercheurs.
... et inventer de nouvelles règles
A l’avenir, ils pensent d’ailleurs pouvoir faire beaucoup mieux que ces logiciels, car
« contrairement
aux outils basés sur les règles, PassGAN a été capable de générer des
mots de passe sans aucune intervention de l’utilisateur, que ce soit une
connaissance sur le domaine des mots de passe ou une analyse des fuites
de bases de données », ajoutent les chercheurs. Interrogés par
Sciencemag.org,
ils pensent que leur système pourra même inventer des règles
d’altération jusqu’alors inconnus, ce qui permettrait d’aller encore
plus loin.
D’autres chercheurs sont également attirés par ce domaine. En 2016,
sept chercheurs de l’université Carnegie Mellon ont également présenté
une
autre méthode
de génération de mots de passe basé sur un seul réseau neuronal. Dans
leur analyse, ils disent que leur système est systématiquement plus
performant que les John The Ripper ou Hashcat. La guerre des réseaux
neuronaux est donc lancée. En attendant, le meilleur conseil que l’on
peut donner, c’est de rapidement migrer vers un gestionnaire de mots de
passe pour se doter de codes secrets aléatoires. Face à tous ces
algorithmes de plus en plus sophistiqués, c’est peut-être encore la
meilleure défense.