← Toutes les règles
SOCLE-CLD-FSP-039// File ownershipfaibleétat du système de fichiers

Vérifier le groupe propriétaire des fichiers System.map

Garantit que le répertoire /boot (contenant le noyau et les tables de symboles System.map) appartient au groupe root.

Vérifié sur les métadonnées d’un chemin, mode, propriétaire, groupe, SUID/SGID.

Un PASS prouve✓ actif maintenant✓ sur disque✓ survit au rebootle verdict qualifié →
Debian 12CIS 1.1.0Debian 13CIS 1.0.0FedoraRHEL 10 / Rocky 10 / AlmaLinux 10RHEL 8 / Rocky 8 / AlmaLinux 8CIS 4.0.0RHEL 9 / Rocky 9 / AlmaLinux 9CIS 2.0.0Ubuntu 22.04CIS 3.0.0Ubuntu 24.04CIS 1.0.0Ubuntu 26.04
Un seul check, mappé sur 1 norme

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

Le répertoire /boot contient le noyau, l'initramfs et les tables de symboles System.map utilisées pour le débogage et le profilage du noyau. La table de symboles expose des adresses mémoire du noyau qui aident un attaquant à contourner des protections comme KASLR et à concevoir des exploits précis. Restreindre /boot au groupe root garde ces internes de démarrage et de noyau hors de portée des utilisateurs ordinaires.

Ce que vérifie Pavois

Pavois lit l'appartenance de groupe résolue de /boot via la ressource InSpec file et vérifie que le groupe est root. Il inspecte les métadonnées réelles de l'inode, de sorte que le résultat reflète la manière dont la partition est réellement montée et possédée, et non une table de valeurs par défaut.

describe command("find /boot -maxdepth 1 -name 'System.map-*' ! -group root 2>/dev/null") do
  its('stdout.strip') { should eq '' }
end

Comment vérifier qu’elle est appliquée

Exécutez stat -c '%G' /boot. La sortie attendue est :

  • root

Affichez-le avec ls -ld /boot et vérifiez les fichiers System.map* avec ls -l /boot/System.map*.

Inspecter et investiguer

Les changements de fichiers liés au démarrage ne sont pas journalisés par défaut. Pour tracer les modifications, ajoutez une surveillance auditd (auditctl -w /boot -p wa -k boot_perms) et recherchez key="boot_perms" dans /var/log/audit/audit.log. Le montage lui-même est visible avec findmnt /boot.

Remédiation

Le plan de durcissement de Pavois applique la ressource file pour définir le groupe de /boot sur root. Il s'applique avec pavois harden apply et laisse inchangés le propriétaire et les bits de permission.

Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :

commandfind /boot -maxdepth 1 -name 'System.map-*' -exec chgrp root {} + 2>/dev/null; true
namesystemmap-group
not_iftest -z "$(find /boot -maxdepth 1 -name 'System.map-*' ! -group root 2>/dev/null)"
resourceexec
pavois harden plan local

où la cible est local, un alias SSH user@hôte, ou un conteneur , Docs

Impact & précautions

Si /boot appartient à un groupe non root, des utilisateurs non privilégiés peuvent lire les tables de symboles du noyau et les paramètres de démarrage, facilitant le développement d'exploits. La correction n'ajuste que le groupe propriétaire et n'affecte pas le démarrage. Précaution : si /boot est une partition montée, assurez-vous que la propriété par défaut du montage ne réannule pas le changement au remontage ; pour les configurations EFI, le montage /boot/efi (vfat) peut ne pas gérer les groupes Unix, ce qui est attendu et hors du périmètre de cette vérification de répertoire.

Mapping des normes

NormeRéférenceTypeVersionConfiance
ANSSI BP-028R29direct2.0haute

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.

Sources & références