DCShadow è una tecnica facilmente disponibile che consente a un aggressore di stabilire un accesso privilegiato persistente in Microsoft Active Directory (AD).
In particolare, DCShadow consente a un utente malintenzionato con accesso privilegiato di creare e modificare oggetti arbitrari in AD senza che nessuno lo sappia. Questo permette all'aggressore di creare backdoor in tutto l'AD che non possono essere rilevate, anche se l'accesso privilegiato originale lo è.
Si è scritto molto su DCShadow, ma la maggior parte delle organizzazioni non è ancora in grado di difendersi da questo fenomeno.
Sebbene si tratti di un'enorme preoccupazione, non dovrebbe essere una sorpresa assoluta, dato che DCShadow è stato specificamente progettato per aggirare le misure di sicurezza esistenti. Quindi, cosa si può fare?
Che cos'è DCShadow
DCShadow è una funzione dell'utility open-source Mimikatz (disponibile per il download qui). Mimikatz è il principale strumento di post-exploitation per gli attacchi basati sulle credenziali di Windows ed è stato utilizzato in molti dei cyberattacchi più distruttivi di oggi, tra cui LockerGoga, NotPetya, WannaCry, SamSam e senza dubbio altri in arrivo.
Come funziona DCShadow
DCShadow aggira le misure di sicurezza esistenti in diversi modi:
1. Sfrutta il normale meccanismo di replica in AD
DCShadow non è legato a una vulnerabilità di Windows, quindi non esiste una patch di sicurezza da applicare per eliminare l'esposizione. Non è nemmeno legato alla configurazione di AD, quindi non c'è nessuna impostazione che si possa modificare per chiudere una falla.
2. Evade il rilevamento aggirando la registrazione degli eventi di sicurezza di Windows.
DCShadow consente a qualsiasi server Windows di impersonare un controller di dominio (DC) e iniettare modifiche direttamente nel flusso di replica AD. Tali modifiche non vengono registrate nei registri degli eventi di sicurezza e non esiste un'impostazione di audit che possa essere modificata. Di conseguenza, i sistemi SIEM e la maggior parte degli strumenti di tracciamento delle modifiche AD non vedono, e non possono avvisare, le modifiche apportate dall'aggressore per mantenere l'accesso privilegiato (ad esempio, la creazione di un nuovo utente e il suo inserimento nel gruppo Domain Admins).
3. Consente a un utente malintenzionato di iniettare qualsiasi modifica in AD.
Ad esempio, un utente malintenzionato può aggiungere il SID di un amministratore aziendale o di dominio alla cronologia SID di un account utente normale e ottenere un accesso privilegiato tramite tale account. Quindi, anche se si limitano le modifiche ai gruppi Enterprise Admins e Domain Admins, un utente malintenzionato può comunque ottenere i diritti di amministratore aziendale o di dominio. Inoltre, se si monitorano le modifiche ai gruppi di sicurezza sensibili, non sarà possibile individuare un utente malintenzionato con accesso privilegiato tramite la Cronologia SID.
DCShadow è anche incredibilmente efficiente: un aggressore deve utilizzare il proprio accesso privilegiato originale solo una volta e può creare un numero qualsiasi di backdoor non rintracciabili in uno o due secondi.
In una console Mimikatz, l'attaccante mette in coda tutte le backdoor che vuole creare in AD (nuovi account utente, appartenenze a gruppi, SID History) ecc:
In questo esempio, l'aggressore ha messo in coda una sola modifica (l'aggiunta del SID di un amministratore di dominio alla cronologia dei SID di un utente normale), ma potrebbe facilmente mettere in coda 15, 20 o più modifiche.
In una seconda console Mimikatz, l'attaccante "spinge" le modifiche nel flusso di replica AD:
L'iniezione di modifiche avviene in uno o due secondi, compreso il tempo necessario per registrare e disregistrare il falso DC.
Cosa si può fare con DCShadow
Nella seconda parte di questo blog post, parlerò delle misure che potete adottare per difendervi da DCShadow.
Come si può intuire, un modo è quello di monitorare le modifiche nel flusso di replica AD. Se volete dare un'occhiata a questo approccio o una dimostrazione di un attacco DCShadow, potete vedere un breve video (8 minuti) che ho registrato di recente. Il video è disponibile qui.