DPAPI secrets
DPAPI
The DPAPI (Data Protection API) is an internal component in the Windows system. It allows various applications to store sensitive data (e.g. passwords). The data are stored in the users directory and are secured by user-specific master keys derived from the users password. They are usually located at:
Application like Google Chrome, Outlook, Internet Explorer, Skype use the DPAPI. Windows also uses that API for sensitive information like Wi-Fi passwords, certificates, RDP connection passwords, and many more.
DPAPI protects the following personal data:
Passwords and form auto-completion data in Internet Explorer, Google *Chrome
E-mail account passwords in Outlook, Windows Mail, Windows Mail, etc.
Internal FTP manager account passwords
Shared folders and resources access passwords
Wireless network account keys and passwords
Encryption key in Windows CardSpace and Windows Vault
Remote desktop connection passwords, .NET Passport
Private keys for Encrypting File System (EFS), encrypting mail S-MIME, other user's certificates, SSL/TLS in Internet Information Services
EAP/TLS and 802.1x (VPN and WiFi authentication)
Network passwords in Credential Manager
Personal data in any application programmatically protected with the API function CryptProtectData. For example, in Skype, Windows Rights Management Services, Windows Media, MSN messenger, Google Talk etc.
Below are common paths of hidden files that usually contain DPAPI-protected data.
Extract a master key
If you know the password of the user who the master key belongs to and you can access the master key file you can obtain the master key with mimikatz and a command like the following one:
Extract all local Master Keys with Administrator
If you are administrator you can obtain the dpapi master keys using:
Extract all backup Master Keys with Domain Admin
A domain admin may obtain the backup dpapi master keys that can be used to decrypt the encrypted keys:
Using the retrieved backup key, let's decrypt user's spotless
master key:
We can now decrypt user's spotless
chrome secrets using their decrypted master key:
Credential Files
The credentials files protected by the master password could be located in:
You can use mimikatz module dpapi::cred
with the appropiate /masterkey
to decrypt:
Last updated