Cached Domain Credentials: OS Credential Dumping - Cached Domain Credentials (T1003.005)

Gli attaccanti sfruttano le credenziali di dominio memorizzate nella cache per ottenere accesso anche quando i domain controller non sono raggiungibili. Questa tecnica rientra nella tattica TA0006 (Credential Access), parte fondamentale della fase di post-exploitation nella kill chain.

Su Windows Vista e versioni successive, le credenziali sono salvate in formato DCC2 (Domain Cached Credentials version 2), noto anche come MS-Cache v2. A differenza degli hash NTLM, questi non permettono attacchi pass-the-hash ma richiedono il cracking della password per ottenere il testo in chiaro.

I sistemi Linux con integrazione Active Directory mantengono cache simili attraverso SSSD (System Security Services Daemon) o Quest Authentication Services. Le credenziali si trovano tipicamente in /var/lib/sss/db/cache.[domain].ldb per SSSD o /var/opt/quest/vas/authcache/vas_auth.vdb per Quest.

L'impatto di questa tecnica è significativo: 4 gruppi APT documentati la utilizzano attivamente, insieme a 4 software specializzati nel dumping delle credenziali. La derivazione delle credenziali su Windows Vista utilizza PBKDF2, rendendo il processo di cracking computazionalmente intensivo ma non impossibile.

Il dumping delle credenziali cached richiede privilegi elevati su tutti i sistemi operativi. Su Windows, con accesso SYSTEM, puoi utilizzare diversi approcci operativi.

reg save HKLM\SECURITY security.hiv reg save HKLM\SYSTEM system.hiv

Questi comandi esportano i registry hive necessari per l'estrazione offline. Successivamente, puoi processarli con secretsdump.py di Impacket:

secretsdump.py -security security.hiv -system system.hiv LOCAL

Per un approccio più diretto, Mimikatz offre il modulo dedicato:

privilege::debug token::elevate lsadump::cache

Su Linux, l'estrazione richiede prima l'identificazione del database corretto. Per sistemi con SSSD:

sudo tdbdump /var/lib/sss/db/cache.DOMAIN.COM.ldb | grep -i cached

Quest VAS richiede un approccio diverso. Prima identifica il database, poi estrai:

sudo strings /var/opt/quest/vas/authcache/vas_auth.vdb | grep -i '$DCC2$'

Linikatz automatizza il processo su Linux, richiedendo solo:

sudo ./linikatz.sh

Per testare in laboratorio, configura prima un ambiente con credenziali cached. Su Windows, autentica un utente di dominio poi disconnetti la rete. Le credenziali rimarranno nella cache per il numero di logon configurato nel registro.

Il numero di credenziali cached è controllabile via registro in HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\cachedlogonscount. Il valore predefinito è 10 su workstation e 25 su server.

Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?

Scarica la guida gratuita e segui il percorso corretto fin dal primo passo

We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.