DPAPI - Extracting Passwords
Last updated
Last updated
Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
RootedCON è l'evento di cybersecurity più rilevante in Spagna e uno dei più importanti in Europa. Con la missione di promuovere la conoscenza tecnica, questo congresso è un punto di incontro fervente per professionisti della tecnologia e della cybersecurity in ogni disciplina.
L'API di Protezione Dati (DPAPI) è utilizzata principalmente all'interno del sistema operativo Windows per la cifratura simmetrica di chiavi private asimmetriche, sfruttando segreti utente o di sistema come una fonte significativa di entropia. Questo approccio semplifica la cifratura per gli sviluppatori consentendo loro di cifrare i dati utilizzando una chiave derivata dai segreti di accesso dell'utente o, per la cifratura di sistema, dai segreti di autenticazione del dominio del sistema, eliminando così la necessità per gli sviluppatori di gestire la protezione della chiave di cifratura.
Tra i dati personali protetti da DPAPI ci sono:
Password e dati di completamento automatico di Internet Explorer e Google Chrome
Password per e-mail e account FTP interni per applicazioni come Outlook e Windows Mail
Password per cartelle condivise, risorse, reti wireless e Windows Vault, inclusi i tasti di cifratura
Password per connessioni desktop remoto, .NET Passport e chiavi private per vari scopi di cifratura e autenticazione
Password di rete gestite da Credential Manager e dati personali in applicazioni che utilizzano CryptProtectData, come Skype, MSN messenger e altro
I file di credenziali protetti potrebbero trovarsi in:
Ottieni informazioni sulle credenziali utilizzando mimikatz dpapi::cred
, nella risposta puoi trovare informazioni interessanti come i dati crittografati e il guidMasterKey.
Puoi usare il modulo mimikatz dpapi::cred
con il corretto /masterkey
per decrittare:
Le chiavi DPAPI utilizzate per crittografare le chiavi RSA dell'utente sono memorizzate nella directory %APPDATA%\Microsoft\Protect\{SID}
, dove {SID} è il Security Identifier di quell'utente. La chiave DPAPI è memorizzata nello stesso file della chiave master che protegge le chiavi private degli utenti. Di solito è composta da 64 byte di dati casuali. (Nota che questa directory è protetta, quindi non puoi elencarla usando dir
dal cmd, ma puoi elencarla da PS).
Questo è come appariranno un insieme di Master Key di un utente:
Di solito ogni master key è una chiave simmetrica crittografata che può decrittografare altri contenuti. Pertanto, estrarre la Master Key crittografata è interessante per decrittografare successivamente quel contenuto crittografato con essa.
Controlla il post https://www.ired.team/offensive-security/credential-access-and-credential-dumping/reading-dpapi-encrypted-secrets-with-mimikatz-and-c++ per un esempio di come estrarre la master key e decrittografarla.
SharpDPAPI è un porting in C# di alcune funzionalità DPAPI dal progetto Mimikatz di @gentilkiwi.
HEKATOMB è uno strumento che automatizza l'estrazione di tutti gli utenti e computer dal directory LDAP e l'estrazione della chiave di backup del controller di dominio tramite RPC. Lo script risolverà quindi tutti gli indirizzi IP dei computer e eseguirà un smbclient su tutti i computer per recuperare tutti i blob DPAPI di tutti gli utenti e decrittografare tutto con la chiave di backup del dominio.
python3 hekatomb.py -hashes :ed0052e5a66b1c8e942cc9481a50d56 DOMAIN.local/administrator@10.0.0.1 -debug -dnstcp
Con l'elenco dei computer estratti da LDAP puoi trovare ogni sottorete anche se non le conoscevi!
"Perché i diritti di Domain Admin non sono sufficienti. Hackali tutti."
DonPAPI può dumpare segreti protetti da DPAPI automaticamente.
RootedCON è l'evento di cybersecurity più rilevante in Spagna e uno dei più importanti in Europa. Con la missione di promuovere la conoscenza tecnica, questo congresso è un punto di incontro fervente per professionisti della tecnologia e della cybersecurity in ogni disciplina.
Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)