Désactiver la liste des utilisateurs sur l'écran de connexion GNOME3
Masque la liste des comptes utilisateurs sur l'écran de connexion GNOME (GDM) en définissant disable-user-list=true et en verrouillant la clé.
Vérifié sur le contenu d’un fichier de configuration persistant, la source de vérité qui survit aux redémarrages.
Un mapping est une référence croisée vers l’endroit où chaque norme situe cette exigence, ancrée et recoupée, pas une affirmation d’équivalence. Un check réussi est une preuve vers ces références, comment le lire.
Pourquoi cette règle
Par défaut, l'écran d'accueil GDM affiche la liste des comptes utilisateurs existants. Toute personne disposant d'un accès physique peut lire ces noms et énumérer les identifiants valides sans s'authentifier, offrant gratuitement à un attaquant la moitié de chaque paire d'identifiants et facilitant le phishing ciblé ou les attaques par force brute. Définir disable-user-list=true et le verrouiller oblige les utilisateurs à saisir leur nom, supprimant cette énumération gratuite.
Ce que vérifie Pavois
Pavois vérifie l'état dconf effectif : la dernière définition de disable-user-list parmi /etc/dconf/db/*.d/* doit valoir true, et la clé /org/gnome/login-screen/disable-user-list doit figurer dans un fichier de verrou dconf. Évaluer la précédence résolue (le dernier drop-in l'emporte) plus le verrou correspond à la façon dont dconf calcule la valeur, détectant un drop-in ultérieur réactivant la liste ou déverrouillant la clé.
only_if { command('dconf').exist? }
describe command('{ s=$(grep -rhE \'^[[:space:]]*disable-user-list[[:space:]]*=\' /etc/dconf/db/*.d/* 2>/dev/null | tail -1 | sed -E \'s/^[^=]*=[[:space:]]*//\' | tr -d "\'\\""); [ "$s" = "true" ] && grep -rqxF \'/org/gnome/login-screen/disable-user-list\' /etc/dconf/db/*/locks/* 2>/dev/null && echo ok; } || echo ko') do
its('stdout.strip') { should eq 'ok' }
endComment vérifier qu’elle est appliquée
Après dconf update, exécutez gsettings get org.gnome.login-screen disable-user-list (doit afficher true) et confirmez que la clé est verrouillée en cherchant /org/gnome/login-screen/disable-user-list dans /etc/dconf/db/*/locks/*. L'écran d'accueil doit demander un nom d'utilisateur au lieu de lister les comptes.
Inspecter et investiguer
dconf n'a pas de journal à l'exécution ; vérifiez avec gsettings get org.gnome.login-screen disable-user-list et inspectez /etc/dconf/db/*.d/* et /etc/dconf/db/*/locks/*. Les tentatives de connexion sur l'écran GDM sont enregistrées par la pile d'authentification, consultez journalctl -u gdm et /var/log/auth.log (Debian/Ubuntu) ou journalctl _COMM=gdm-session-worker / /var/log/secure (RHEL).
Remédiation
Le plan de durcissement de Pavois utilise la ressource dconf pour écrire disable-user-list=true dans un drop-in de profil dconf système, ajouter /org/gnome/login-screen/disable-user-list à un fichier locks, et exécuter dconf update. Appliquez-le avec pavois harden apply.
Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :
| key | org/gnome/login-screen/disable-user-list |
|---|---|
| resource | dconf |
| value | true |
pavois harden plan localoù la cible est local, un alias SSH user@hôte, ou un conteneur , Docs
Impact & précautions
Ne s'applique qu'aux hôtes GNOME/GDM ; sans objet sur les serveurs sans interface graphique. Après application, les utilisateurs doivent saisir leur nom d'utilisateur complet à la connexion au lieu de le cliquer, changement d'ergonomie mineur. Aucune authentification n'est cassée et aucun redémarrage n'est requis ; dconf update suffit. Précaution : informez les utilisateurs de bureau de cette nouvelle étape de saisie pour éviter la confusion au support.
Mapping des normes
| Norme | Référence | Type | Version | Confiance |
|---|---|---|---|---|
| CIS | 1.7.3, 1.8.3, 1.8.2 | direct | per OS, see the benchmark table | haute |
| NIST | AC-23, CM-6(a) | support | 800-53 Rev 5 · 800-171 Rev 2 (pinned) | moyenne |
Chaque référence est une référence croisée ancrée dans le benchmark amont et recoupée avec le SCAP Security Guide et ansible-lockdown, pas une affirmation d’équivalence. Direct = une exigence prescriptive au niveau de la ligne ; support = une famille de contrôle abstraite (NIST) vers laquelle le check apporte une preuve. Comment lire un mapping.