Vérifier les permissions du fichier de sauvegarde group
Garantit que le fichier de sauvegarde /etc/group- n'est pas modifiable par le groupe/les autres et ne porte aucun bit exécutable ou spécial (setuid/setgid/sticky), soit le mode 0644 ou plus strict.
Vérifié sur ce qui est installé ou enregistré, paquets présents/absents, bases de comptes.
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/group- est la copie de sauvegarde de /etc/group et liste chaque groupe et ses membres, y compris les groupes d'administration comme sudo, wheel et adm. S'il est modifiable par le groupe/les autres, un attaquant pourrait ajouter son compte à un groupe privilégié dans la sauvegarde ; si /etc/group est un jour restauré depuis celle-ci, cette appartenance devient effective, une voie furtive vers l'escalade de privilèges. Le mode 0644 ou plus strict, appartenant à root, garde la sauvegarde résistante à la falsification.
Ce que vérifie Pavois
Pavois lit les bits de mode réels de /etc/group- via la ressource InSpec file, les permissions appliquées par le noyau, plutôt que la valeur par défaut du paquet. Les fichiers de sauvegarde sont faciles à oublier et parfois laissés modifiables par tous lors de copies ad hoc ; inspecter l'inode réel le détecte. La garde only_if ignore le contrôle si aucune sauvegarde n'existe encore.
only_if { file('/etc/group-').exist? }
describe file('/etc/group-') 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_sticky }
endComment vérifier qu’elle est appliquée
Exécutez stat -c '%a %U %G %n' /etc/group-. La sortie attendue est 644 root root /etc/group- (ou plus strict, par exemple 600).
Inspecter et investiguer
Ces sauvegardes sont régénérées par les outils de gestion d'utilisateurs/groupes (useradd, groupadd, vipw, vigr) ; leurs actions apparaissent dans /var/log/auth.log (Debian/Ubuntu) ou /var/log/secure (famille RHEL). Les changements de permissions peuvent être suivis via une règle auditd et grep group- /var/log/audit/audit.log.
Remédiation
Aucune remédiation automatique n'est définie ; appliquez-la manuellement : chown root:root /etc/group- && chmod u-x,g-wx,o-wx,a-s /etc/group- (un simple chmod 644 /etc/group- atteint le mode cible).
Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :
| mode | 0644 |
|---|---|
| path | /etc/group- |
| resource | file |
pavois harden plan localoù la cible est local, un alias SSH user@hôte, ou un conteneur , Docs
Impact & précautions
Risque en cas de non-application : une sauvegarde de groupe falsifiée peut implanter une appartenance à un groupe privilégié lors d'une restauration. Précautions : durcir ces permissions est sans danger, /etc/group- n'est lu que par l'outillage d'administration s'exécutant en root, et la valeur par défaut lisible par tous (0644) est acceptable car les noms de groupes ne sont pas secrets. Aucune dépendance de service ni risque de blocage.
Mapping des normes
| Norme | Référence | Type | Version | Confiance |
|---|---|---|---|---|
| CIS | 2.2.6, 7.1.4 | direct | per OS, see the benchmark table | haute |
| NIST | AC-6 (1) | support | 800-53 Rev 5 · 800-171 Rev 2 (pinned) | moyenne |
| PCI DSS | 2.2.6 | support | 4.0.1 | 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.