Vérifier les permissions de /etc/audit/auditd.conf
Garantit que /etc/audit/auditd.conf n'est ni modifiable par le groupe ou les autres, ni lisible par les autres, et ne porte aucun bit exécutable, setuid, setgid ou sticky.
Vérifié sur le contenu d’un fichier de configuration persistant, la source de vérité qui survit aux redémarrages.
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
/etc/audit/auditd.conf pilote le démon auditd : emplacement des journaux, rotation, action en cas de disque plein et mode de vidage. S'il est modifiable par un non-root ou lisible par les autres, un attaquant peut désactiver la journalisation, rediriger la piste d'audit ou simplement en découvrir l'agencement, neutralisant la preuve forensique qui détecte et impute un incident. Le restreindre à root préserve l'intégrité et la confidentialité de la configuration d'audit.
Ce que vérifie Pavois
Pavois inspecte le mode réel de /etc/audit/auditd.conf via la ressource InSpec file (équivalent de stat), protégée par only_if pour être ignorée quand auditd n'est pas installé. Elle vérifie que le fichier n'est ni modifiable par le groupe ou les autres, ni lisible par les autres, et exempt des bits setuid/setgid/sticky/exécutable, soit un mode effectif au plus permissif égal à 0640 root:root. Contrôler les permissions réelles de l'inode, et non un défaut de paquet, détecte toute dérive introduite par un chmod imprudent ou un déploiement défectueux.
only_if { file('/etc/audit/auditd.conf').exist? }
describe file('/etc/audit/auditd.conf') do
it { should_not be_executable.by('owner') }
it { should_not be_setuid }
it { should_not be_executable.by('group') }
it { should_not be_writable.by('group') }
it { should_not be_setgid }
it { should_not be_executable.by('other') }
it { should_not be_writable.by('other') }
it { should_not be_readable.by('other') }
it { should_not be_sticky }
endComment vérifier qu’elle est appliquée
Exécutez stat -c '%a %U %G' /etc/audit/auditd.conf. La sortie attendue est un mode 640 (ou plus strict, par ex. 600) appartenant à root root, par exemple 640 root root. Tout droit d'écriture groupe, de lecture autres ou bit spécial (mode commençant par 1/2/4/7) constitue un échec.
Inspecter et investiguer
auditd consigne les événements de configuration et de démon dans /var/log/audit/audit.log. Examinez grep CONFIG_CHANGE /var/log/audit/audit.log pour les changements, et systemctl status auditd / journalctl -u auditd pour confirmer que le démon a rechargé proprement la configuration après une modification.
Remédiation
Aucune remédiation automatique n'est définie pour cette règle ; elle doit donc être appliquée manuellement : exécutez chmod u-x,g-wx,o-rwx /etc/audit/auditd.conf && chown root:root /etc/audit/auditd.conf (mode cible 0640 root:root), puis rechargez avec systemctl reload auditd ou service auditd restart.
Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :
| mode | 0640 |
|---|---|
| path | /etc/audit/auditd.conf |
| resource | file |
pavois harden plan localoù la cible est local, un alias SSH user@hôte, ou un conteneur , Docs
Impact & précautions
Durcir ces permissions est peu risqué : auditd s'exécute déjà en root et n'a pas besoin d'un accès groupe/autres. Précautions : conservez le propriétaire root et n'utilisez chmod 600 que si aucun outil de supervision non-root ne doit lire la configuration (rare, préférez 640 avec un groupe dédié). Un mauvais propriétaire ou la suppression de la lecture pour root empêcherait auditd de démarrer, vérifiez ensuite avec auditctl -s et systemctl status auditd. Laisser le fichier lisible par tous ou modifiable par le groupe permet à des utilisateurs non privilégiés de découvrir ou d'altérer la configuration d'audit.
Mapping des normes
| Norme | Référence | Type | Version | Confiance |
|---|---|---|---|---|
| CIS | 6.2.4.5, 6.3.4.5 | direct | per OS, see the benchmark table | haute |
| NIST | AU-12(b) | support | 800-53 Rev 5 · 800-171 Rev 2 (pinned) | moyenne |
| DISA STIG | UBTU-22-653065, UBTU-24-900040 | direct | per OS STIG release | 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.