DPAPI - Extracting Passwords
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2Ffiles.gitbook.com%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252F-L_2uGJGU7AVNRcqRvEi%252Fuploads%252FelPCTwoecVdnsfjxCZtN%252Fimage.png%3Falt%3Dmedia%26token%3D9ee4ff3e-92dc-471c-abfe-1c25e446a6ed&width=768&dpr=4&quality=100&sign=9c8fe74f&sv=1)
RootedCON est l'événement le plus pertinent en matière de cybersécurité en Espagne et l'un des plus importants en Europe. Avec pour mission de promouvoir les connaissances techniques, ce congrès est un point de rencontre bouillonnant pour les professionnels de la technologie et de la cybersécurité dans chaque discipline.
Qu'est-ce que DPAPI
L'API de protection des données (DPAPI) est principalement utilisée dans le système d'exploitation Windows pour le chiffrement symétrique des clés privées asymétriques, en utilisant les secrets utilisateur ou système comme source significative d'entropie. Cette approche simplifie le chiffrement pour les développeurs en leur permettant de chiffrer des données à l'aide d'une clé dérivée des secrets de connexion de l'utilisateur ou, pour le chiffrement système, des secrets d'authentification de domaine du système, évitant ainsi aux développeurs de gérer eux-mêmes la protection de la clé de chiffrement.
Données protégées par DPAPI
Parmi les données personnelles protégées par DPAPI, on trouve :
Les mots de passe et les données d'auto-complétion d'Internet Explorer et de Google Chrome
Les mots de passe des comptes de messagerie et FTP internes pour des applications comme Outlook et Windows Mail
Les mots de passe des dossiers partagés, des ressources, des réseaux sans fil et du coffre Windows, y compris les clés de chiffrement
Les mots de passe des connexions de bureau à distance, du passeport .NET et des clés privées à des fins diverses d'authentification et de chiffrement
Les mots de passe des réseaux gérés par le Gestionnaire d'informations d'identification et les données personnelles dans les applications utilisant CryptProtectData, telles que Skype, MSN Messenger, et plus encore
Liste Vault
Fichiers d'informations d'identification
Les fichiers d'informations d'identification protégés pourraient être situés dans :
Obtenez des informations d'identification en utilisant mimikatz dpapi::cred
, dans la réponse, vous pouvez trouver des informations intéressantes telles que les données chiffrées et le guidMasterKey.
Vous pouvez utiliser le module mimikatz dpapi::cred
avec le /masterkey
approprié pour décrypter :
Clés maîtresses
Les clés DPAPI utilisées pour crypter les clés RSA de l'utilisateur sont stockées sous le répertoire %APPDATA%\Microsoft\Protect\{SID}
, où {SID} est l'Identifiant de sécurité de cet utilisateur. La clé DPAPI est stockée dans le même fichier que la clé maîtresse qui protège les clés privées des utilisateurs. Elle est généralement composée de 64 octets de données aléatoires. (Remarquez que ce répertoire est protégé, vous ne pouvez pas le lister en utilisant dir
depuis le cmd, mais vous pouvez le lister depuis PS).
Ceci est à quoi ressemblera un tas de clés principales d'un utilisateur :
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2088318145-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252Frq9WIQinJaxpWMvakjIQ%252Fuploads%252Fgit-blob-cb570a688ef3842485e269da5ed9d895439d2f00%252Fimage%2520%28324%29.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=34012d9e&sv=1)
Généralement, chaque clé principale est une clé symétrique chiffrée qui peut décrypter d'autres contenus. Par conséquent, extraire la clé principale chiffrée est intéressant pour pouvoir décrypter ultérieurement ce autre contenu chiffré avec elle.
Extraire la clé principale et décrypter
Consultez l'article https://www.ired.team/offensive-security/credential-access-and-credential-dumping/reading-dpapi-encrypted-secrets-with-mimikatz-and-c++ pour un exemple de comment extraire la clé principale et la décrypter.
SharpDPAPI
SharpDPAPI est un portage en C# de certaines fonctionnalités DPAPI du projet de @gentilkiwi Mimikatz.
HEKATOMB
HEKATOMB est un outil qui automatise l'extraction de tous les utilisateurs et ordinateurs du répertoire LDAP et l'extraction de la clé de sauvegarde du contrôleur de domaine via RPC. Le script résoudra ensuite toutes les adresses IP des ordinateurs et effectuera un smbclient sur tous les ordinateurs pour récupérer tous les blobs DPAPI de tous les utilisateurs et décryptera tout avec la clé de sauvegarde du domaine.
python3 hekatomb.py -hashes :ed0052e5a66b1c8e942cc9481a50d56 DOMAIN.local/administrator@10.0.0.1 -debug -dnstcp
Avec la liste des ordinateurs extraite du LDAP, vous pouvez trouver chaque sous-réseau même si vous ne les connaissiez pas !
"Parce que les droits d'administrateur de domaine ne suffisent pas. Piratez-les tous."
DonPAPI
DonPAPI peut extraire automatiquement des secrets protégés par DPAPI.
Références
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2Ffiles.gitbook.com%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252F-L_2uGJGU7AVNRcqRvEi%252Fuploads%252FelPCTwoecVdnsfjxCZtN%252Fimage.png%3Falt%3Dmedia%26token%3D9ee4ff3e-92dc-471c-abfe-1c25e446a6ed&width=768&dpr=4&quality=100&sign=9c8fe74f&sv=1)
RootedCON est l'événement le plus pertinent en matière de cybersécurité en Espagne et l'un des plus importants en Europe. Avec pour mission de promouvoir les connaissances techniques, ce congrès est un point de rencontre bouillonnant pour les professionnels de la technologie et de la cybersécurité dans chaque discipline.
Last updated