Latest news

Perché dovresti cambiare la password DSRM di Active Directory

In questo articolo andremo a spiegare come un utente malintenzionato potrebbe scoprire la password dell’account DSRM (o il suo hash) e come trarne vantaggio ma anche come proteggere il proprio ambiente per evitare questa vulnerabilità a livello di sicurezza.

password dsrm

Password DRSM: perché è importante?

Ogni controller di dominio dispone di un account amministratore locale protetto da una password che potrebbe rappresentare una backdoor di Active Directory e che potrebbe sfruttata anche per apportare modifiche dannose direttamente al contenuto del database di AD.

Successivamente alle implementazioni di Windows Server 2008, Microsoft ha introdotto la possibilità di avviare ed arrestare AD come qualsiasi altro servizio Windows; pertanto è diventato meno frequente avviare in modalità DRSM se non per ripristinare un backup di Active Directory. Proprio per questo motivo, spesso, gli amministratori di sistema dimenticano di modificare la password DSRM regolarmente o impostano la stessa per tutti i controller di dominio.

Comportamento di accesso DSRM

Sempre con Windows Server 2008 è stata introdotta la possibilità di modificare il comportamento di accesso di DSRM ossia utilizzare l’account DRSM dell’amministratore locale in un controller di dominio, senza la necessità di riavviare in DSRM:

  • Tramite il valore di registro REG_DWORD DSRMAdminLogonBehavior da HKLM\System\CurrentControlSet\Control\Lsa -> impostare il valore su 1 o 2

Valore = 0: accedere al controller di dominio solo con un account di dominio, che richiede che un altro controller di dominio sia disponibile per soddisfare la richiesta oppure utilizzare l’account amministratore DSRM solo se il controller di dominio è avviato in modalità DSRM, questa è l’impostazione predefinita.

Valore = 1: accedere al controller di dominio con un account di dominio o l’account DSRM, solo quando il servizio AD viene arrestato.

Valore = 2: accedere al controller di dominio con l’account DSRM, indipendentemente dal fatto che il servizio AD sia stato arrestato o avviato.

Attacco hacker alla password DSRM

Se un amministratore di sistema modifica il comportamento di accesso DRSM al valore 2 in tutti i controller di dominio potrà essere eseguita questa attività senza riavviare il controller di dominio in DRSM e senza interrompere i servizi AD, ma poiché l’account potrà essere utilizzato per autenticarsi in rete, un utente malintenzionato non necessiterà della password DRSM effettiva e gli basterà conoscerne l’hash della password, con cui sarà grado di autenticarsi su controller di dominio utilizzando il metodo Pass-the-Hash.

hacker dsrm password

L’autore dell’attacco potrebbe così scoprire l’hash della password di qualsiasi account di dominio, compresi quelli con accesso a foresta elevata e/o privilegi di dominio. Qualora venissero tempestivamente modificate tutte le password dell’account nel dominio, l’hacker continuerebbe ad avere accesso all’intera foresta/dominio con un livello elevato di privilegi in quanto l’account DRSM non è incluso nella modifica della politica della password del dominio.

Vediamo come tutelare il proprio ambiente da questa vulnerabilità:

  • Non modificare il comportamento DSRM standard nei controller di dominio (valore = 0).
  • La chiave di registro DSRMAdminLogonBehavior non dovrebbe esistere quando si esplora HKLM\System\CurrentControlSet\Control\Lsa
  • Definire una password DSRM univoca per ogni controller di dominio nell’intera foresta e modificarla regolarmente (almeno una volta all’anno)

Password DSRM (Directory Service Restore Mode): come modificarla

  • Aprire il prompt come amministratore
  • Eseguire i seguenti comandi:

ntdsutil
set dsrm password
reset password on server Nome del Domain Controller
Inserire la password e confermare nuovamente
quit
quit

Se il controller di domino esegue Windows Server 2008 SP2 o versioni successive, è possibile eseguire questa procedura automaticamente.

Le best practices in ambito di sicurezza su Active Directory suggeriscono quindi la modifica su tutti i domain controller della password di Restore Mode almeno una volta all’anno. Sebbene sia possibile per tutti i Domain Controller impostare una password specifica e diversa per ciascun DC, potrebbe anche essere utilizzato un approccio di password DSRM per tutti i Controllori di Dominio tramite lo script Powershell:

Get-ADDomainController -Filter * | ForEach-Object {
    Invoke-Command -ComputerName $_.hostname -ScriptBlock { ntdsutil "set dsrm password" "Sync from domain account svc-dc" "q" "q" }
    write-host $_.hostname
    }

Questo tipo di tematiche le andiamo a trattare nel corso dedicato alla sicurezza di Active Directory per le tematiche di attacco e relativa difesa.

Hai bisogno di maggiori informazioni?

I nostri esperti IT sapranno certamente aiutarti!

My Agile Privacy

Questo sito utilizza cookie tecnici e di profilazione. 

Puoi accettare, rifiutare o personalizzare i cookie premendo i pulsanti desiderati. 

Chiudendo questa informativa continuerai senza accettare. 

Inoltre, questo sito installa Google Analytics nella versione 4 (GA4) con trasmissione di dati anonimi tramite proxy. 

Prestando il consenso, l'invio dei dati sarà effettuato in maniera anonima, tutelando così la tua privacy.