Définir correctement le délai après échec de connexion dans login.defs
Garantit que FAIL_DELAY dans /etc/login.defs vaut au moins 4 secondes, retardant l'invite après un échec de connexion.
Vérifié sur le contenu d’un fichier de configuration persistant, la source de vérité qui survit aux redémarrages.
Pourquoi cette règle
Augmenter le délai entre une tentative d'authentification échouée et l'invite de saisie suivante ralentit les attaques par force brute mono-thread contre la console et les autres interfaces de connexion. Un FAIL_DELAY d'au moins 4 secondes rend le devinage exhaustif de mots de passe d'une lenteur prohibitive tout en restant discret pour les utilisateurs légitimes.
Ce que vérifie Pavois
Pavois utilise la ressource InSpec login_defs pour lire la valeur effective résolue de FAIL_DELAY, en analysant /etc/login.defs comme le fait le programme login (la dernière valeur non commentée l'emporte). Cela reflète le délai réellement appliqué à la connexion, et pas seulement une ligne présente dans le fichier.
describe login_defs do
its('FAIL_DELAY') { should cmp >= 4 }
endComment vérifier qu’elle est appliquée
grep -i '^FAIL_DELAY' /etc/login.defsdoit afficherFAIL_DELAY 4(ou plus).- À une connexion console, un mot de passe incorrect doit marquer une pause d'environ 4 s avant de réinviter.
Inspecter et investiguer
grep -i FAIL_DELAY /etc/login.defsmontre le délai configuré./var/log/secure(RHEL) enregistre les échecs d'authentification delogin/PAM.journalctl _COMM=loginmontre les tentatives de connexion console.
Remédiation
Aucun plan de durcissement automatisé n'est défini pour cette règle, elle doit donc être appliquée manuellement : définissez FAIL_DELAY 4 (ou plus) dans /etc/login.defs. La valeur prend effet pour les connexions console/PAM ultérieures gérées par le programme login.
Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :
| file | /etc/login.defs |
|---|---|
| key | FAIL_DELAY |
| resource | conf_line |
| sep | space |
| value | 4 |
pavois harden plan localoù la cible est local, un alias SSH user@hôte, ou un conteneur , Docs
Impact & précautions
Risque négligeable. Le seul effet est un délai de quelques secondes après un échec de connexion console, imperceptible pour les utilisateurs légitimes. À noter qu'il s'applique au chemin du programme login ; SSH et d'autres services appliquent leurs propres contrôles de nouvelle tentative/limitation, ce n'est donc qu'une couche parmi plusieurs.