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

Vérifier le propriétaire de cron.deny

Garantit que la liste d'interdiction cron /etc/cron.deny appartient à l'utilisateur root (UID 0).

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é →
FedoraRHEL 10 / Rocky 10 / AlmaLinux 10RHEL 9 / Rocky 9 / AlmaLinux 9CIS 2.0.0

Pourquoi cette règle

Le fichier /etc/cron.deny liste les utilisateurs interdits de planification de tâches cron (utilisé en l'absence de cron.allow). S'il n'appartient pas à root, un utilisateur non autorisé pourrait y retirer son propre nom pour contourner la restriction et obtenir un accès cron, sapant le contrôle prévu. La propriété root garantit l'autorité de la liste d'interdiction.

Ce que vérifie Pavois

Pavois lit le propriétaire effectif de /etc/cron.deny via la ressource file d'InSpec et vérifie uid == 0, uniquement si le fichier existe (only_if). Lire la propriété réelle de l'inode reflète l'état exact sur le disque et détecte une dérive due à des éditions manuelles, plutôt que de se fier à une valeur par défaut supposée.

only_if { file('/etc/cron.deny').exist? }
describe file('/etc/cron.deny') do
  its('uid') { should eq 0 }
end

Comment vérifier qu’elle est appliquée

Exécutez stat -c '%U %u' /etc/cron.deny. Résultat attendu : root 0. Sinon, ls -l /etc/cron.deny doit afficher root dans la colonne du propriétaire.

Inspecter et investiguer

La propriété ne génère aucun journal de service. Vérifiez l'état avec stat -c '%U %u' /etc/cron.deny. Pour tracer les changements, une surveillance auditd telle que auditctl -w /etc/cron.deny -p wa -k cron-access enregistre les écritures/changements d'attributs dans /var/log/audit/audit.log.

Remédiation

Aucun plan de durcissement automatisé n'est défini pour cette règle ; elle doit être appliquée manuellement : exécutez chown root /etc/cron.deny en root pour fixer le propriétaire à root.

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

ownerroot
path/etc/cron.deny
resourcefile
pavois harden plan local

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

Impact & précautions

En cas de mauvaise configuration, un utilisateur non autorisé pourrait éditer la liste d'interdiction pour contourner les restrictions cron.

Précautions avant application : chown root /etc/cron.deny est sûr et réversible, sans redémarrage de service. La bonne pratique consiste à privilégier cron.allow (interdiction par défaut) plutôt que cron.deny ; ne créez pas cron.deny uniquement pour corriger la propriété, ajustez-le seulement s'il existe déjà.

Sources & références