Le durcissement des mots de passe des utilisateurs est la fonctionnalité qui n'accepte un nouveau mot de passe qu'après s'être assuré qu'il suit un certain nombre de règles. Ce durcissement est donc toujours lié au système.
Cela assure que les mots de passe choisis ne sont pas trop simples et qu'ils résistent plus longtemps contre les programmes de cassage de mots de passe.
Dans le prochain article, quelques statistiques vous seront données sur un grand nombre de mots de passe cassés ainsi que sur les temps de cassage maximaux pour les différents types d'algorithmes. Si vous n'êtes pas encore convaincus de l'utilité du durcissement des mots de passe, vous le serez alors.
Le durcissement sous Windows est réalisé grâce à une bibliothèque optionnelle livrée depuis le service pack 2 de Windows NT 4 : passfilt.dll. L'installation est manuelle via le changement d'une clé de registre :
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa] "FPNWCLNT"=reg_multi_sz:PASSFILT
Les deux caractéristiques de passfilt.dll sont : trop basique et non configurable. En effet, les deux règles à suivre sont :
Un exemple comme Bonjour1 est donc accepté par le système puisqu'il fait 8 caractères et comporte une majuscule et un chiffre, malheureusement n'importe quel programme moderne de cassage trouve ce mot de passe en moins d'un dixième de seconde.
Il est donc conseillé d'utiliser une mise en oeuvre d'un fournisseur tiers. Bien sûr, celle-ci est payante, mais elle est de bien meilleure qualité et configurable suivant vos besoins. Dans tous les cas, seuls les changements via une connexion réseau sont renforcés et jamais ceux réalisés par l'administrateur via l'outil de gestion des utilisateurs.
Si vous installez un programme de durcissement de mots de passe sur un système, vous serez confronté au problème de gestion des utilisateurs qui ne comprennent pas pourquoi leurs nouveaux mots de passe sont systématiquement rejetés. Il est donc important avant toute chose d'éduquer vos utilisateurs, la sécurité d'un système reposant sur la force des mots de passe utilisés.
Quelques règles simples de constitution, même si elles ne suffisent pas à elles seules à assurer la force du mot de passe, aident souvent à passer le cap du programme de durcissement.
La particularité des environnements Windows est la présence de l'empreinte LanMan. Sa faiblesse intrinsèque force à choisir en fait 2 mots de passe costauds de 7 caractères chacun et de jouer sur ce stratagème pour résister aux programmes de cassage. Chaque "sous-mot de passe" doit donc comporter 7 caractères dont au moins 1 chiffre et un caractère non-alphanumérique, et passer individuellement le cap du programme de durcissement. Une règle simple est que le caractère non-alphanumérique et le chiffre ne doivent pas être placés en premier ou dernier caractère et ne doivent pas remplacer une lettre d'un mot existant ou s'insérer entre deux lettres.
En se référant aux méthodes de cassage, aucun mot de passe ne doit faire référence à une information relative à l'utilisateur, à son entourage, à ses passions, à son métier, à son entreprise, etc. Aucun ne doit être bâti à partir d'un mot existant qui se trouve dans un dictionnaire général, de noms propres, spécialisé, etc.
Une méthode simple est en général de choisir deux mots sans relation et de les combiner en insérant des chiffres et des caractères non-alphanumériques. Malheureusement, à cause de l'algorithme LanMan, l'utilisateur risque de se retrouver avec des mots de passe extrêmement simples à casser.
Il est donc possible de combiner des parties de mots entre elles, en faisant bien attention que ceux-ci ne forment pas par hasard un mot existant. Ce rôle incombe au programme de durcissement qui à partir du nouveau mot de passe en clair effectue en une fraction de seconde tous les calculs demandant généralement plusieurs mois à un programme de cassage. Cela évite que l'utilisateur malchanceux ne tombe par hasard sur un mot d'origine étrangère pour lequel un simple "i" aurait été remplacé par le chiffre "1". Toute ressemblance avec une situation vécue serait totalement fortuite !
L'écriture de mots en phonétique est aussi une solution qui aide, tout comme utiliser les premières lettres de vers, phrases ou expressions, agrémentées bien sûr de quelques chiffres et caractères non-alphanumériques.
Conclusion
J'espère vous avoir sensibilisé sur le rôle des mots de passe dans un environnement connecté et convaincu sur le fait qu'il est important que les utilisateurs y apportent toutes leurs attentions et les administrateurs, toutes leurs protections.
En attendant la seconde partie traitant de l'environnement Unix, bien du plaisir vous est souhaité dans l'application de certains de ces conseils. Mais il est important de ne pas confondre moyens et buts : n'appliquez un conseil que pour parer à un problème auquel vous avez affaire et non pas pour le plaisir de vous dire que vous avez fait quelque chose.
Denis Ducamp
Denis.Ducamp@groar.org - http://www.groar.org
Denis.Ducamp@hsc.fr - http://www.hsc.fr
Denis Ducamp est consultant en sécurité informatique chez Hervé Schauer Consultants et spécialisé dans la sécurité systèmes et réseaux. Cet article ainsi que sa prochaine suite ont été écrits à partir d'une présentation nommée "crackage et durcissement des mots de passe" développée chez HSC et publiquement accessible sur <http://www.hsc.fr/ressources/presentations/mdp2/>.
$Id: part1.sgml,v 1.21 2002/03/12 11:02:19 ducamp Exp $