← Toutes les règles
SOCLE-CLD-GEN-029// Hardening (misc)moyenneétat d’inventaire

Garantir que tous les comptes du système ont des UID uniques

Vérifie qu'aucun compte de /etc/passwd ne partage le même UID numérique.

Vérifié sur ce qui est installé ou enregistré, paquets présents/absents, bases de comptes.

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 2 normes

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

Lorsque deux comptes partagent un UID, le noyau les traite comme une seule identité : ils ont la même propriété de fichiers et les mêmes permissions, et les journaux d'audit ne peuvent distinguer qui a agi. Cela détruit la responsabilité individuelle et permet à un compte de lire ou modifier les fichiers d'un autre. Deux comptes avec l'UID 0, c'est deux root sans traçabilité.

Ce que vérifie Pavois

Pavois exécute un balayage awk sur /etc/passwd et signale tout UID apparaissant plus d'une fois ; la sortie attendue est vide. /etc/passwd est la base de comptes locale faisant autorité, résolue par le noyau et PAM, donc la lire directement reflète l'ensemble effectif des comptes (comptes locaux ; les identités annuaire via SSSD/LDAP sont hors périmètre ici).

describe command('awk -F: \'($3 in s){print $3}{s[$3]}\' /etc/passwd') do
  its('stdout.strip') { should eq '' }
end

Comment vérifier qu’elle est appliquée

Exécutez awk -F: '{print $3}' /etc/passwd | sort | uniq -d. La sortie attendue est vide (aucun UID en double). Toute ligne affichée est un UID partagé par plusieurs comptes.

Inspecter et investiguer

La création/modification de comptes est journalisée par useradd/usermod dans /var/log/auth.log (Debian/Ubuntu) ou /var/log/secure (RHEL). Pour auditer la base, getent passwd | awk -F: '{print $3}' | sort | uniq -d liste tout UID dupliqué.

Remédiation

Aucun plan de durcissement automatisé n'est fourni, la correction doit être manuelle et prudente, car changer un UID modifie la propriété des fichiers. Identifiez le doublon avec la commande de vérification, décidez quel compte garde l'UID, attribuez à l'autre un UID libre avec usermod -u <nouvuid> <user>, puis lancez find / -uid <ancienuid> -exec chown <nouvuid> {} + pour réparer la propriété de ses fichiers.

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

commandcut -d: -f3 /etc/passwd | sort | uniq -d # duplicate UIDs # resolve by usermod -u <new-uid> <user> (and chown their files), manual
reasonduplicate UIDs need a deliberate renumber/merge, never auto-change a UID
resourcemanual
pavois harden plan local

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

Impact & précautions

C'est la réattribution d'un UID qui est perturbatrice, pas l'audit : chaque fichier appartenant à l'ancien UID devient orphelin jusqu'à un chown, ce qui peut casser des services, des répertoires personnels, des tâches cron et des spools de courrier. Effectuez-la pendant une fenêtre de maintenance, assurez-vous que l'utilisateur est déconnecté, et inventoriez ses fichiers au préalable (find / -uid <ancienuid>). L'étape de détection est en lecture seule et sans danger.

Mapping des normes

NormeRéférenceTypeVersionConfiance
CIS7.2.5, 8.2.1, 7.2.4directper OS, see the benchmark tablehaute
PCI DSS8.2.1support4.0.1moyenne

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