Le mot de passe Unix de Ken Thompson

Cette histoire est toute fraîche. Elle est apparue sur le blog de Leah Neukirchen le 09 Octobre 2019 (version en cache local).

Je vous en propose une traduction avec bien entendu l'accord de son auteur.


Aux alentours de 2014 je suis tombé sur un fichier /etc/passwd dans les sources de BSD3 contenant les mots de passes des vieux de la vieille tels que Dennis Ritchie, Ken Thompson, Brian W. Kernighan, Steve Bourne et Bill Joy.

Comme l'algorithme crypt(3) basé sur DES est bien connu pour être assez mauvais (et limité à maximum 8 caractères), j'ai pensué qu'il serait amusant de cracker ces mots de passe.

Les outils les plus connus pour ce genre d'exercices sont John et Hashcat.

Rapidement, je suis parvenu à cracké la majorité de ces mots de passe, qui pour la plupart étaient plutôt mauvais. (Curieusement, Bwk utilisait /.,/., qui sont relativement simple à taper en Qwerty.

Malgré tout, le mote de passe de Ken résistait à mes assauts. Même une recherche exhaustive de toutes les combinaisons de lettres minuscules et de chiffres prirent plusieurs jours (c'était en 2014) sans résultat probant. Sachant que l'algorithme fût développé par Ken Thompos et Robert Morris, je me demandais ce qu'il se tramait. J'ai d'ailleurs réalisé à ce moment que contrairement à d'autre méthode de hash (comme NTLM), crypt(3) s'avérait plus long à craquer (probablement dû à un manque d'optimisation).

Avait-il réellement utilisé des majuscules ou des caractères spéciaux ? (Une recherche bruteforce exhaustive sur toutes les combinaisons sur 7bits prendrait plus de 2 ans sur un GPU moderne.)

L'histoire est revenue sur le tapis plus tôt ce mois-ci sur la mailing list The Unix Heritage Societyj'y ai partagé mes résultats ainsi que ma frustation à propos de ce dernier mot de passe résistant.

C'est alors qu'aujourd'hui le mystère est levé par Nigel Williams :

From: Nigel Williams

Subject: Re: [TUHS] Recovered /etc/passwd files

ken is done:

ZghOT0eRm4U9s:p/q2-q4!

took 4+ days on an AMD Radeon Vega64 running hashcat at about 930MH/s during that time (those familiar know the hash-rate fluctuates and slows down towards the end)

Il s'agit d'un mouvement d'échec en notation descriptive. Il s'agit d'une ouverture plutôt classique. Cela correspond bien au fait que Ken Thompson est un grand amateur et même joueur d'échec sur ordinateur.

Je suis très content que ce mystère ait pu être percé et la réponse me satistfait.


Voilà, cette histoire est vraiment cool. Déjà, rien que trouver un fichier passwd avec tous ces utilisateurs dans un seul endroit ça parait fou. Ces gens sont des légendes de l'informatique (et du Libre).

Certains de ces mots de passe sont plus complexes que la majorité des passes qui leakent actuellement alors qu'ils avaient des contraintes bien pourris (max 8 caractères sur de l'ascii simple).