Vérifier l'utilisateur propriétaire des fichiers /var/log/*.journal(~)
S'assurer que tous les fichiers de journal persistants sous /var/log/journal appartiennent à root (groupe systemd-journal).
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
Les fichiers /var/log/*.journal(~) sont les journaux système binaires gérés par systemd-journald. Ils doivent appartenir à root (groupe systemd-journal) afin qu'aucun utilisateur non privilégié ne puisse lire ou réécrire le journal, des journaux altérés ou lisibles permettraient à un attaquant d'effacer ses traces ou de récolter des données sensibles.
Ce que vérifie Pavois
Pavois exécute find -P /var/log/journal -type f ! -user root (uniquement si la journalisation persistante est activée) et attend aucune sortie. Il vérifie l'appartenance réelle des fichiers de journal présents sur disque, détectant les dérives apparues après l'installation, et non seulement les valeurs par défaut du paquet.
only_if { command('test -d /var/log/journal').exit_status.zero? }
describe command('find -P /var/log/journal -type f ! -user root 2>/dev/null | head -1') do
its('stdout') { should eq '' }
endComment vérifier qu’elle est appliquée
Exécutez find -P /var/log/journal -type f ! -user root, il ne doit rien afficher. Vous pouvez aussi confirmer l'appartenance avec ls -l /var/log/journal/*/ (propriétaire root, groupe systemd-journal attendus).
Inspecter et investiguer
Ces fichiers constituent le journal lui-même ; lisez-le avec journalctl. Vérifiez la santé de journald avec systemctl show systemd-journald et journalctl --verify. Listez les fichiers mal attribués via find -P /var/log/journal -type f ! -user root -printf '%u %p\n'.
Remédiation
Le plan de durcissement de Pavois lance une ressource exec nommée chown-journal qui exécute find /var/log/journal -exec chown root:systemd-journal {} +, réinitialisant chaque fichier de journal au propriétaire root et au groupe systemd-journal. Une garde not_if l'ignore quand aucun fichier n'a déjà un mauvais groupe, ce qui le rend idempotent. Appliquez-le avec pavois harden apply.
Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :
| command | find /var/log/journal -exec chown root:systemd-journal {} + 2>/dev/null || true |
|---|---|
| name | chown-journal |
| not_if | test -z "$(find /var/log/journal ! -user root 2>/dev/null | head -1)" |
| resource | exec |
pavois harden plan localoù la cible est local, un alias SSH user@hôte, ou un conteneur , Docs
Impact & précautions
Ce qui peut casser : quasiment rien, root:systemd-journal est exactement l'appartenance attendue par systemd-journald, qui continue d'écrire normalement. Les membres du groupe systemd-journal conservent l'accès en lecture aux journaux. Précautions : aucune notable ; la modification est idempotente et gardée. Sur les systèmes à journalisation uniquement volatile (/run/log/journal), /var/log/journal est absent et la règle est ignorée (only_if).
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.