Gestion de la politique des mots de passe sous Linux

I. Présentation

Il est important d’avoir une bonne gestion et une bonne configuration de la politique des mots de passe sur son système. Il est d'abord important de déterminer ce qu'est un mot de passe fort, communément, il doit suivre les recommandations suivantes :

  • Comprend au moins huit caractères
  • Ne contient ni votre nom d’utilisateur, ni votre vrai nom, ni le nom de la société
  • Ne contient pas de mot entier
  • Contient des caractères provenant de chacune des quatre catégories suivantes (minuscule, majuscule, chiffre, caractères spéciaux)

Sous Linux, nous pouvons gérer une multitude de paramètres dont :

  •  Le nombre de tentatives maximum
  •  La longueur minimale du mot de passe
  •  Nombre de caractères différents entre deux mots de passe consécutifs

II. PAM

Les mots de passes se gèrent avec PAMPluggable Authentication Module ») qui s’occupe de l’authentification des utilisateurs. PAM nous permet avec l’ajout d’un module de gérer plusieurs des paramètres ci-dessus. Nous allons donc commencer par installer ce module :

apt-get install libpam-cracklib

Nous pourrons ensuite nous rendre dans « /etc/pam.d/ » où se situent les différents fichiers de configuration PAM. Nous pouvons aller modifier le fichier « /etc/pam.d/common-password » qui gère les règles de construction des mots de passe lors de la création des utilisateurs ou de la modification de ceux-ci. On voit alors la ligne suivante :

PolitquePasswd01

Nous voyons d’abord que cette ligne utilise le module « pam_cracklib » que nous venons d’installer. Nous pouvons étudier les différents paramètres qui sont précisés :

  •  « Retry = 3 » : Autorise trois essais pour la saisie du mot de passe
  •  « Minlen=8 » : Détermine la longueur minimale d’un mot de passe
  •  « Difok = 3 » : Indique le nombre de caractères qui doivent être différents entre un ancien et un nouveau mot de passe.

Si on entre la commande « adduser test2 » avec un mot de passe faible comme « 2 », nous voyons ce message d’erreur :

PolitquePasswd02

Nous voyons que PAM analyse donc le mot de passe saisi et nous indique ce qui ne va pas dans sa construction. On voit par exemple qu’il le voit comme trop court (il fait moins de 8 caractères) et comme un palindrome (comme les mots laval ou kayak) car il ne fait qu’un seul caractère. Si nous agissons en « root », nous pourrons forcer la création d’un mot de passe qui ne respecte pas notre politique de mot de passe.

Le module pam_cracklib s’appuie également sur une liste de mot qu’il compare aux mots de passe saisies afin d’éviter que les utilisateurs mettent des mots « clairs » en tant que mots de passe. Par défaut, il utilise un dictionnaire anglais (wenglish). Par exemple si l’on veut utiliser le mot de passe « Password7 ! », il nous renverra le message suivant :

PolitquePasswd03
C’est une sécurité supplémentaire dont s’occupe PAM pour la création des mots de passe. En effet, dans la plupart des attaques de type brute force, les attaquants utilisent un dictionnaire de mots qu’ils lisent automatiquement mots par mots et les envoient pour tester les mots de passe courants. Un mot de passe qui signifie quelque chose comme un mot « réel » est donc déconseillé car il peut être présent dans ce genre de dictionnaire.
Le module « cracklib » permet de faire un test du mot de passe que nous voulons passer. Il faut pour cela utiliser la commande « cracklib-check » comme suivant :

echo « password » | cracklib-check

PolitquePasswd04
On est donc averti à l’avance du respect de la politique des mots de passe.

Note : Quand nous agissons en root, le PAM se contente de nous avertir lors du non-respect de la politique de sécurité. Nous pourrons tout de même forcer un mot de passe qui ne respecte pas notre politique des mots de passe car nous sommes en root. Si un utilisateur souhaite changer son mot de passe, il sera bloqué quoi qu’il arrive si son mot de passe ne respecte pas la politique des mots de passe.

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Mickael Dorigny

Co-fondateur d'IT-Connect.fr. Auditeur/Pentester chez Orange Cyberdéfense.

Nombre de posts de cet auteur : 526.Voir tous les posts

2 thoughts on “Gestion de la politique des mots de passe sous Linux

  • je suis arriver sur votre site par la page de ubuntu francophone, je vais lire tous vos sujets, car je suis intéresser par votre contenue en francais.

    J’aime les défis et celui qui me tiens a cœur en ce moment , est de monter un serveur sous ubuntu sécuriser pour donner aces à mes clients pour leur session de photo via un ftp, ainsi qu’un site web et un blog.

    Votre site est agréable à parcourir ainsi que le contenus très instructif.

    Merci

    Répondre
  • Bonjour,
    y a-t-il un historique des mots de passe que l’on a utilisé et si oui comment le consulter ?
    Merci

    Répondre

Répondre à Marc Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.