Skip to content

Où les hashes de mots de passe utilisateur sont-ils stockés sous Windows et sous Linux, et pourquoi les attaquants visent-ils ces fichiers ?

Réponse courte

Sous Windows, les hashes des comptes locaux (NTLM) résident dans la ruche SAM sous C:\Windows\System32\config\SAM, protégée tant que l'OS tourne ; les identifiants vivants se trouvent dans la mémoire de LSASS, et les hashes de domaine sont dans NTDS.dit sur un contrôleur de domaine. Sous Linux, les hashes sont dans /etc/shadow (lisible uniquement par root), tandis que /etc/passwd contient les métadonnées de compte. Les attaquants les volent pour casser les mots de passe hors ligne ou faire du pass-the-hash.

C'est une question de fondamentaux à fort poids opérationnel : savoir où vivent les secrets vous dit ce que les attaquants chercheront à récupérer après avoir pris pied et ce que vous devez protéger et surveiller. Les recruteurs l'utilisent pour confirmer que vous comprenez le vol d'identifiants, pas seulement que vous mémorisez des chemins de fichiers.

Windows

Les hashes des mots de passe des comptes locaux (stockés en NTLM) résident dans la ruche de registre SAM, à C:\Windows\System32\config\SAM. Le fichier est verrouillé et obfusqué tant que Windows tourne, mais il peut être extrait hors ligne (par ex. en démarrant un autre OS) ou récupéré avec des outils. Les identifiants vivants — texte en clair, tickets et hashes des utilisateurs connectés — résident dans la mémoire du processus LSASS, ce qui explique pourquoi des outils comme Mimikatz ciblent LSASS. Dans Active Directory, tous les hashes des comptes de domaine sont stockés dans NTDS.dit sur les contrôleurs de domaine — les joyaux de la couronne.

Linux

Linux conservait historiquement les hashes dans /etc/passwd lisible par tous, ce qui permettait à quiconque de lancer du cassage hors ligne. Les systèmes modernes ont déplacé les hashes dans /etc/shadow, lisible uniquement par root, tandis que /etc/passwd conserve des métadonnées non secrètes (UID, répertoire home, shell). Chaque entrée shadow encode le schéma de hachage (par ex. $6$ = SHA-512), un sel et le hash, plus les champs de vieillissement du mot de passe.

Pourquoi les attaquants les veulent

Avec les hashes, un attaquant peut casser les mots de passe faibles hors ligne avec Hashcat/John, ou sauter le cassage et faire du pass-the-hash contre les services s'authentifiant en NTLM. C'est pourquoi extraire SAM/LSASS/NTDS.dit ou lire /etc/shadow est un objectif de post-exploitation majeur.

Pourquoi c'est important

Une bonne réponse nomme SAM, LSASS et NTDS.dit sous Windows et /etc/shadow (vs /etc/passwd) sous Linux, et les relie au cassage hors ligne et au pass-the-hash. Points bonus pour les défenses : Credential Guard, la protection de LSASS, des mots de passe forts/longs, et le moindre privilège pour que ces fichiers ne soient jamais atteignables.

Questions de suivi probables

  • Pourquoi /etc/shadow a-t-il été introduit alors que /etc/passwd existait déjà ?
  • Qu'est-ce que le pass-the-hash et pourquoi fonctionne-t-il contre NTLM ?
  • Comment Credential Guard protège-t-il les secrets résidant dans LSASS ?

Sources

Certifications

Recevez 100 questions d'entretien en cybersécurité + réponses

Laissez votre e-mail et nous vous enverrons le pack PDF gratuit et le jeu de flashcards.

Pas de spam. Désabonnez-vous à tout moment.