Vérifier l'utilisateur propriétaire du fichier /var/log/lastlog
Garantit que /var/log/lastlog, l'enregistrement de dernière connexion par utilisateur, est détenu par root (UID 0).
Vérifié sur les métadonnées d’un chemin, mode, propriétaire, groupe, SUID/SGID.
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
/var/log/lastlog enregistre la dernière connexion de chaque utilisateur, les données affichées par la commande lastlog. S'il n'appartient pas à root (UID 0), un attaquant pourrait le réécrire pour masquer l'heure et l'origine d'une connexion, effaçant les preuves d'un accès non autorisé et rompant la traçabilité de qui a utilisé le système et quand.
Ce que vérifie Pavois
Pavois vérifie que l'UID propriétaire de /var/log/lastlog est 0 (root) lorsque le fichier existe (only_if). Il lit le propriétaire réel du système de fichiers (stat) sur la cible plutôt qu'une valeur par défaut, de sorte que tout chown par une pile PAM/login mal configurée ou un script de déploiement est détecté au moment du scan.
only_if { file('/var/log/lastlog').exist? }
describe file('/var/log/lastlog') do
its('uid') { should eq 0 }
endComment vérifier qu’elle est appliquée
Confirmez le propriétaire avec :
stat -c '%U %u' /var/log/lastlog
La sortie attendue est root 0.
Inspecter et investiguer
Ce fichier contient les données de dernière connexion. Inspectez la propriété et les enregistrements :
stat /var/log/lastlog
lastlog
Les événements de connexion sont aussi écrits dans /var/log/auth.log. Les changements de propriété peuvent être suivis avec grep 'lastlog' /var/log/audit/audit.log si des surveillances auditd sont configurées.
Remédiation
Aucun plan de remédiation automatisé n'est défini ; cette règle doit donc être appliquée manuellement. Restaurez la propriété root avec :
chown root /var/log/lastlog
(pavois harden apply ne modifiera pas ce fichier tant qu'une ressource de remédiation n'aura pas été ajoutée.)
Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :
| owner | root |
|---|---|
| path | /var/log/lastlog |
| resource | file |
pavois harden plan localoù la cible est local, un alias SSH user@hôte, ou un conteneur , Docs
Impact & précautions
Conséquences en cas de mauvaise configuration : un propriétaire non-root peut altérer l'enregistrement de dernière connexion pour dissimuler quand et d'où un compte a été utilisé.
Précautions avant application : réattribuer à root est sûr, la pile de connexion écrit lastlog en root via PAM. La garde only_if ignore les hôtes dépourvus du fichier, donc appliquer le correctif est inoffensif sur les systèmes qui ne maintiennent pas lastlog.
Mapping des normes
| Norme | Référence | Type | Version | Confiance |
|---|---|---|---|---|
| CIS | 6.1.4.1, 6.2.2.1 | direct | per OS, see the benchmark table | haute |
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.