Vérifier le propriétaire du grub.cfg du chargeur d'amorçage UEFI
Garantit que le fichier de configuration GRUB2 UEFI /boot/efi/EFI/redhat/grub.cfg appartient à l'utilisateur 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
/boot/efi/EFI/redhat/grub.cfg définit la configuration d'amorçage UEFI : ligne de commande du noyau, entrées de démarrage et toute protection par mot de passe GRUB. Seul root doit pouvoir modifier ces paramètres d'amorçage. Si un utilisateur non root possède ce fichier, il pourrait altérer la ligne de commande du noyau (par exemple ajouter init=/bin/bash), désactiver des mitigations de sécurité ou supprimer le mot de passe du chargeur, réduisant à néant le durcissement au démarrage.
Ce que vérifie Pavois
Pavois interroge l'inode réel de /boot/efi/EFI/redhat/grub.cfg et vérifie que son propriétaire est l'UID 0. Le contrôle est ignoré sur les systèmes où le fichier n'existe pas (par exemple amorçage BIOS/legacy). Lire les métadonnées réelles du système de fichiers reflète la propriété effective sur laquelle le firmware et GRUB s'appuient, indépendamment de la façon dont le fichier a été régénéré par grub2-mkconfig.
only_if { file('/boot/efi/EFI/redhat/grub.cfg').exist? }
describe file('/boot/efi/EFI/redhat/grub.cfg') do
its('uid') { should eq 0 }
endComment vérifier qu’elle est appliquée
Exécutez stat -c '%U %u' /boot/efi/EFI/redhat/grub.cfg. La sortie attendue est root 0.
Inspecter et investiguer
Il n'existe pas de journal d'exécution pour cette configuration statique. Pour détecter une altération, posez une surveillance audit : auditctl -w /boot/efi/EFI/redhat/grub.cfg -p wa -k grub, puis examinez les événements dans /var/log/audit/audit.log (recherchez key="grub"). Les régénérations apparaissent dans journalctl lors de l'exécution de grub2-mkconfig.
Remédiation
Aucun plan de durcissement automatisé n'est défini pour cette règle ; elle doit être corrigée manuellement : exécutez chown root /boot/efi/EFI/redhat/grub.cfg pour rétablir la propriété root.
Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :
| owner | root |
|---|---|
| path | /boot/efi/EFI/redhat/grub.cfg |
| resource | file |
pavois harden plan localoù la cible est local, un alias SSH user@hôte, ou un conteneur , Docs
Impact & précautions
Un propriétaire non root de grub.cfg peut réécrire les paramètres d'amorçage et obtenir root au prochain démarrage ou désactiver des mitigations du noyau. La correction présente peu de risque : chown root ne modifie pas le contenu de la configuration d'amorçage, le système démarre donc normalement. Notez que grub2-mkconfig recrée le fichier avec la propriété root, la correction est donc durable ; aucun redémarrage n'est nécessaire pour appliquer le changement de propriété.
Mapping des normes
| Norme | Référence | Type | Version | Confiance |
|---|---|---|---|---|
| ANSSI BP-028 | R29 | direct | 2.0 | haute |
| CIS | 1.4.2 | direct | per OS, see the benchmark table | haute |
| NIST | 3.4.5 | 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.