L’azienda di Redmomd ha aggiornato in più fasi Microsoft Defender for Endpoint in modo che sia in grado di riconoscere gli attacchi che mirano a rubare le credenziali di accesso degli utenti Windows.
“Uno dei principali obiettivi degli attaccanti”, commenta Pierluigi Paganini, analista di cyber security e CEO Cybhorus, “è il furto di credenziali di sistema che consentono di condurre una moltitudine di attività malevoli, come movimenti laterali e la compromissione di specifici servizi e sistemi all’interno di un’infrastruttura IT”.
Ecco come la nuova versione di Microsoft Defender for Endpoint protegge le aziende.
Indice degli argomenti
I rischi legati al processo LSASS
Il processo LSASS (Local Security Authority Subsystem Service) di Windows è uno dei target dei criminali informatici, soprattutto in ambito aziendale.
“Il servizio LSASS è un processo attivo nei sistemi operativi Microsoft Windows”, spiega Giuseppe Delli Santi, Exprivia Cybersecurity Analyst, “ed è responsabile nella gestione dei criteri di sicurezza del sistema”.
LSASS si mantiene sempre in modalità esecuzione ed è dedicato alla gestione dell’autenticazione degli utenti, a modificare le password e a generare token di accesso.
Infatti “esso verifica gli utenti che accedono a un sistema o un server Windows, gestisce le modifiche delle password e crea i token di accesso”, continua Giuseppe Delli Santi. Continua l’esperto di Exprivia: “Poiché lsass.exe è uno dei file di sistema più rilevante, il suo nome viene spesso falsificato da una serie di malware. Tuttavia, il file lsass.exe utilizzato da Windows è localizzato nella directory %WINDIR%\System32”.
“Qualora fosse eseguito da un’altra posizione, il processo lsass.exe è molto probabilmente un virus, uno spyware, un trojan o un worm”, continua l’analista. “A causa del modo in cui alcuni sistemi visualizzano i font, dei malintenzionati potrebbero assegnare al file un nome simile a lsass.exe (in particolar modo con la “i” maiuscola invece della “L” minuscola) al fine di raggirare gli utenti e indurli a installare o eseguire un file dannoso invece del file di sistema affidabile. Dal punto di vista di un aggressore, il processo LSASS su un sistema Windows è fondamentale per ottenere credenziali degli utenti all’interno di un dominio Active Directory. Questi dati di autenticazione vengono successivamente sfruttati per eseguire azioni di Lateral Movement e infettare server, workstation e altri endpoint collegati nella rete locale”.
Le tecniche per estrarre le credenziali
Il processo su un computer Windows permette di ricevere credenziali degli utenti dentro un dominio Active Directory. Tuttavia malintenzionati possono utilizzare questi dati di autenticazione per muovimenti laterali e per infettare server, workstation ed altri dispositivi connessii in rete locale. I cyber criminali possono sfruttare molteplici tecniche per estrarre le credenziali dal processo LSASS.
“Una tecnica comune per accedere a tali credenziali consiste nell’attaccare il processo LSASS (Local Security Authority Subsystem Service) di Windows che ha accesso alle credenziali di utenti così come di amministratori di dominio”, mette in guardia Paganini.
Le altre metodologie di attacco: i dettagli
“Esistono diversi metodologie usati dagli aggressori”, avverte Delli Santi, “per estrarre le credenziali dal processo LSASS, fra questi troviamo principalmente: – Task Manager (GUI) – Procdump – Comsvcs – Mimikatz Qualora l’attaccante dovesse avere accesso al protocollo RDP o di un altro accesso GUI al dispositivo, è possibile utilizzare il Task Manager di Windows al fine di creare un file di dump. Tuttavia, Windows Defender non emette nessun alert per impostazione predefinita, il che lo rende un’opzione molto affidabile. Lo svantaggio di questo metodo è la sua scarsa scalabilità e relativa lentezza di esecuzione”.
“Questo andrà a creare un file di dump nella directory AppDara\Local\Temp directory”, continua Giuseppe Delli Santi.
“A tal punto va spostato il file di dump sul computer locale. Ad esempio, se l’attaccante dovesse usare un sistema Linux potrebbe usare freerdp, poiché è possibile montare automaticamente un’unità condivisa per copiare i file”, afferma Delli Santi: xfreerdp /v:IPADDRESS /u:USERNAME /p:PASSWORD /d:DOMAIN /drive:SHARE,/path/shared “In questo modo verrà creata un’unità condivisa denominata “SHARE” sul computer Windows a cui si accede da remoto”.
Infine, è possibile utilizzare Pypykatz per estrarre le credenziali e gli hash memorizzati dal file di dump.
“Mediante PROCDUMP si può creare un file di dump di memoria dei processi interni al sistema”, prosegue Delli Santi: “Lo svantaggio di questo metodo è il copiare l’eseguibile PROCDUMP sul sistema target e alcuni sistemi segnalano il codice binario come malevolo. La sua sintassi di esecuzione è : procdump.exe -accepteula -ma lsass.exe out.dmp Alcune soluzioni EDR segnalano o bloccano questo processo in base al nome del processo “lsass”. In genere è possibile aggirare questo problema specificando invece l’ID del processo LSASS. Con l’ausilio di COMSVCS si può eseguire una DLL nativa trovata in Windows\System32 con rundll32″.
“L’ultimo strumento da poter utilizzare è Mimikatz“, ricorda Delli Santi, “un ottimo metodo da utilizzare se si eseguono i test principali da un computer Windows, altrimenti è necessario copiare il file di dump su un computer Windows per eseguire Mimikatz. L’attaccante deve assicurarsi di creare una cartella di eccezione per Windows Defender sul computer in cui si utilizza Mimikatz, altrimenti Defender metterà in quarantena l’eseguibile Mimikatz”.
“Per eseguire il dump di LSASS come attaccante, è necessario disporre del privilegio SEDebug. L’impostazione predefinita di Windows prevede la concessione di questo privilegio agli amministratori locali”.
“In secondo luogo, è importante notare che sui sistemi moderni, Windows Defender blocca qualsiasi processo PowerShell che tenti di eseguire il dump di LSASS, quindi è importante utilizzare strumenti CMD o .net per questo piuttosto che PowerShell”, sottolinea l’esperto di Exprivia.
Microsoft Defender for Endpoint: le novità
Poiché prevenire il dumping delle credenziali utente in azienda non è facile, a causa di programmi legacy e non solo, Microsoft ha reso più difficile il furto di password dalla memoria su Windows. L’aggiornamento di Microsoft Defender for Endpoint ha alzato il livello di difesa rispetto al servizio LSASS di Windows. “Le migliorie alla sua soluzione di difesa Microsoft Defender per Endpoint”, continua Pafganini, sono “significative. Ora è in grado di individuare e bloccare attività di furto di credenziali (credential dumping) dal LSASS”. “Per arrivare a questo risultato”, prosegue l’esperto di cyber security, “l’azienda con la collaborazione dell’ente indipendente AV-Comparatives, ha introdotto misure di difesa contro le principali tecnica di dumping delle credenziali da LSASS che utilizzano tool utilizzati negli attacchi (e.g. Mimikatz) osservati dalla comunità di sicurezza internazionale e strumenti sviluppati ad hoc”.
Microsoft ha adottato le raccomandazioni di AV-Comparatives, riuscendo così a migliorare ulteriormente Defender for Endpoint e raggiungere l’obiettivo di “100%” nella verifica effettuata dello scorso agosto. “Vorremmo ringraziare AV-Comparatives”, ha dichiarato Microsoft: “Per questo test approfondito che ci ha portato a migliorare le nostre capacità di protezione e rilevamento in Defender for Endpoint. I miglioramenti sono già stati implementati a vantaggio dei nostri clienti e non vediamo l’ora del prossimo test”.
“Si tratta di un importante progresso che dimostra l’impegno dell’azienda nel proteggere i propri utenti”, conclude Paganini.
“A febbraio 2022 Microsoft dichiarava che rubare password dalla memoria in Windows sarebbe diventato più difficile. Così, AV-Comparatives ha messo alla prova le soluzioni per la sicurezza proposte da diversi fornitori in modo da misurare il livello di difesa garantito rispetto al servizio LSASS di Windows. Nell’ambito di 15 differenti test, AV-Comparatives ha concluso che Microsoft Defender for Endpoint insieme con Avast Ultimate Business Security, Bitdefender GravityZone Business Security Enterprise, Kaspersky Endpoint Detection and Response Expert offrono la migliore protezione in assoluto”, evidenzia Giuseppe Delli Santi.
Il modo migliore per proteggersi da questo attacco Lsass
“Come dimostrato in precedenza, l’utilizzo di un EDR con rilevamenti basati sulle firme per bloccare Mimikatz è inadeguato”, illustra Delli Santi. “I sistemi operativi Windows più recenti disabilitano WDigest per impostazione predefinita, contribuendo a proteggere dal dumping di password in chiaro con questi metodi. Tuttavia, per alcune organizzazioni questo non è sempre possibile e gli aggressori possono comunque utilizzare i metodi sopra descritti per scaricare gli hash NTLM che possono essere decifrati o utilizzati in attacchi pass-the-hash per effettuare spostamenti laterali. Un’altra importante difesa consiste nel limitare il più possibile l’accesso amministrativo locale. Spesso, una volta ottenuto l’accesso amministrativo locale su un singolo host, il dumping di LSASS consente una catena di spostamenti laterali, in cui viene compromesso un set di credenziali che ha accesso amministrativo locale a un altro host, dove vengono memorizzate altre credenziali che hanno accesso amministrativo locale altrove. Alla fine, questo porta di solito alla compromissione dell’account dell’amministratore di dominio”.
Oltre a queste due regole generali, Delli Santi riporta alcuni metodi che possono essere utilizzati per prevenire e rilevare questi attacchi:
- Decommission all end-of-life Windows operating systems if possible
- Restrict local administrative access as much as possible
- Disable WDigest on all Windows operating systems prior to Windows 8 and Windows Server 2012 R2
- Enable Windows Defender Credential Guard
- Monitor for registry changes to ensure WDigest is not reenabled and that Windows Defender Credential Guard is not disabled
- Alert on and restrict pass-the-hash if possible
“Innanzitutto, se si dispone di sistemi operativi Windows obsoleti (precedenti a Windows 8 e Windows Server 2012 R2), WDigest è abilitato per impostazione predefinita su questi dispositivi e deve essere disabilitato tramite Criteri di gruppo”, continua ancora l’analista di Exprivia.
“È possibile farlo installando la patch KB 2871997 di Windows e impostando a 0 la seguente chiave di registro: HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest\UseLogonCredential”.
“Inoltre, questa chiave di registro deve essere aggiunta alla soluzione di monitoraggio e attivare avvisi ad alta gravità se la chiave di registro è impostata su “1” o abilitata in qualsiasi punto dell’ambiente. Poiché SEDebugPrivilege è necessario per eseguire il dump della memoria LSASS, la sua disabilitazione per gli amministratori locali renderebbe idealmente impossibile eseguire questo attacco. Tuttavia, un amministratore locale può abilitare nuovamente questa autorizzazione, rendendo questa tecnica relativamente inutile per impedire il dump della memoria LSASS”, ci dice Delli Santi.
“Anche se può essere facilmente aggirata, questa tecnica può essere utile per alcune organizzazioni come livello aggiuntivo a una strategia di difesa in profondità per aiutare a prevenire gli attacchi automatici. Sebbene questi tipi di rilevamento siano facilmente aggirabili cambiando il nome del file di dump o utilizzando strumenti diversi da procdump, possono essere utili come parte di una strategia di difesa in profondità per catturare il comportamento degli aggressori o malware che utilizzano strumenti standard con impostazioni predefinite”, sottolinea Delli Santi.
Che conclude: “Se si dovesse disabilitare WDigest e creare alert sulla riabilitazione di WDigest, questo induce un aggressore a decifrare gli hash NTLM o a utilizzare tecniche di pass-the-hash. La disabilitazione e/o l’avviso sulle tecniche pass-the-hash rende gli attacchi di dumping LSASS molto meno efficaci, in quanto riduce la superficie di attacco del dumping LSASS alla capacità di decifrare le credenziali NTLM. In Windows 10 Enterprise/Pro, Windows Server 2016 e Windows Server 2019, è possibile utilizzare Windows Defender Credential Guard per aggiungere ulteriori protezioni al processo LSASS. Questa tecnologia esegue LSASS in una sandbox che impedisce l’accesso a tutti gli utenti, anche a quelli con privilegi di SISTEMA. Questo rende di fatto impossibile scaricare LSASS utilizzando uno dei metodi sopra citati e dovrebbe essere considerato il metodo più proficuo per prevenire questo tipo di attacco e di movimento laterale. Inoltre, un utente privilegiato ha la possibilità di disabilitare Credential Guard, il che significa che avrà accesso agli hash dei futuri accessi. Tuttavia, ciò non consente l’accesso agli hash già presenti in LSASS”.