Comment Linux sait-il qu'un nouveau mot de passe est similaire à l'ancien?
Si vous avez déjà reçu un message indiquant que votre nouveau mot de passe est trop similaire à votre ancien, vous serez peut-être curieux de savoir comment votre système Linux "sait" qu'ils se ressemblent beaucoup. Le post de SuperUser d'aujourd'hui porte un coup d'œil derrière le «rideau de magie» sur ce qui se passe pour un lecteur curieux..
La séance de questions et réponses d'aujourd'hui nous est offerte par SuperUser, une sous-division de Stack Exchange, un groupe de sites Web de questions-réponses dirigé par la communauté..
Capture d'écran fournie par marc falardeau (Flickr).
La question
Le lecteur superutilisateur, LeNoob, veut savoir comment un système Linux "sait" que les mots de passe sont trop similaires les uns aux autres:
J'ai essayé de changer un mot de passe utilisateur sur différentes machines Linux à quelques reprises et lorsque le nouveau mot de passe ressemblait beaucoup à l'ancien, le système d'exploitation disait qu'ils étaient trop similaires..
Je me suis toujours demandé comment le système d'exploitation le sait? Je pensais que les mots de passe étaient enregistrés comme un hachage. Cela signifie-t-il que, lorsque le système est en mesure de comparer le nouveau mot de passe pour la similitude avec l'ancien, il est enregistré en tant que texte brut??
Comment un système Linux "sait-il" que les mots de passe sont trop similaires les uns aux autres?
La réponse
Slhck, contributeur de SuperUser, a la solution pour nous:
Étant donné que vous devez fournir à la fois l'ancien et le nouveau mots de passe lorsque vous utilisez passwd, vous pouvez facilement les comparer en texte brut..
Votre mot de passe est en effet haché quand il est finalement stocké, mais jusqu'à ce que cela se produise, l'outil où vous entrez votre mot de passe peut simplement y accéder directement.
Il s'agit d'une fonctionnalité du système PAM qui est utilisée à l'arrière-plan de l'outil passwd. PAM est utilisé par les distributions Linux modernes. Plus précisément, pam_cracklib est un module pour PAM qui lui permet de rejeter les mots de passe sur la base de similitudes et de faiblesses..
Ce ne sont pas uniquement les mots de passe trop similaires qui peuvent être considérés comme non sécurisés. Le code source contient divers exemples de ce qui peut être vérifié, par exemple si un mot de passe est un palindrome ou quelle est la distance d'édition entre deux mots. L'idée est de rendre les mots de passe plus résistants aux attaques par dictionnaire.
Voir la page de manuel pam_cracklib pour plus d'informations..
Assurez-vous de lire le reste de la discussion animée sur SuperUser via le fil de discussion lié ci-dessous..
Avez-vous quelque chose à ajouter à l'explication? Sound off dans les commentaires. Voulez-vous lire plus de réponses d'autres utilisateurs de Stack Exchange doués en technologie? Découvrez le fil de discussion complet ici.