Ce n'est pas un problème d'autorisation - Windows garde un verrou exclusif sur le fichier SAM (qui, à ma connaissance, est un comportement standard pour les ruches de registre chargées), il est donc impossible pour tout autre processus de l'ouvrir.
Cependant, les versions récentes de Windows ont une fonctionnalité appelée "Volume Shadow Copy", qui est conçue pour créer des instantanés en lecture seule de tout le volume, principalement pour les sauvegardes. Les verrous de fichiers sont là pour garantir la cohérence des données, ils ne sont donc pas nécessaires si un instantané de l'ensemble du système de fichiers est créé. Cela signifie qu'il est possible de créer un instantané de C:
, de le monter, de copier votre SAM
fichier, puis de supprimer l'instantané.
La façon exacte de procéder dépend de votre version de Windows: XP a besoin d'un programme externe, Vista et 7 l'ont vssadmin create shadow
, et Server 2008 a la diskshadow
commande. La page Sauvegarde en toute sécurité des hachages des contrôleurs de domaine en direct contient plus de détails sur ce processus, ainsi que des instructions et des scripts.
Alternativement, il existe des outils tels que ceux samdump
qui abusent du processus LSASS dans diverses directions afin d'extraire tous les hachages de mot de passe directement de la mémoire. Ils peuvent être beaucoup plus rapides que les instantanés VSS, mais présentent un risque plus élevé de planter le système.
Enfin, Google fait ressortir cet extrait de code, dont je ne peux évaluer l'utilité de n'avoir jamais moi-même utilisé le métasploit:
meterpreter> use priv
meterpreter> hashdump