Oltre che un componente centrale nell’architettura server Windows in quanto consente, tra le altre cose, di gestire le autenticazioni al sistema e il controllo degli accessi, Active Directory è anche uno dei bersagli preferiti dai criminal hacker. Ecco un insieme di best practice per garantirne la sicurezza.
Active Directory è il servizio integrato nei sistemi operativi Windows Server e rappresenta, nelle moltissime aziende in cui è usato, il punto centrale per gestire:
- domini di rete;
- identità utente;
- autenticazioni e autorizzazioni;
- controllo degli accessi per server e applicazioni;
- e per connettere sistemi diversi tra loro.
Active Directory è dunque diventato, negli anni, sempre più importante e centrale nell’architettura server Windows, oltre che un punto di riferimento dei criminal hacker, anche se gli attacchi informatici ad esso rivolti di recente non rappresentano certamente un nuovo modello di azione dei tentativi che vengono effettuati per violare dei sistemi.
La complessità di una gestione sicura di Active Directory
La crescente centralità, importanza e strategicità di Active Directory dovrebbe coincidere con una corrispondente maggiore consapevolezza degli amministratori IT nel dedicare adeguate attenzioni alla configurazione, gestione, manutenzione e monitoraggio di questo componente.
La complessità di una gestione sicura di Active Directory in ambito on premise è aumenta significativamente considerando l’estensione delle potenziali superfici di attacco laddove un’organizzazione usi anche Office 365, dovendo gestire anche Azure Active Directory che è usato da tutte le applicazioni di Office 365 per autenticare gli utenti.
Tra l’altro, usando un tenant di Azure AD dedicato a Office 365, quasi certamente un’organizzazione predispone un collegamento con l’ambiente AD locale, per cui si accumulano più ambienti complessi e soggetti a minacce informatiche, con l’aggravante della “permutazione” di compromissione che può avvenire in modo bidirezionale nei due ambiti con effetti negativi di vasta portata.
E proprio in queste ultime settimane, le organizzazioni sono state costrette a cambiare i loro metodi di collaborazione per supportare una forza lavoro completa in smart working e lo hanno dovuto fare in velocità non avendo molte possibilità di prendere in piena considerazione le configurazioni di sicurezza di queste piattaforme.
Per coloro che si sono trovati in questa situazione, ma anche per chi ha in uso da tempo un tenant di Azure AD e Office 365, è molto utile la lettura di questo recente documento del CISA – Cybersecurity & Infrastructure Security Agency del Dipartimento della Sicurezza Interno degli USA.
In scenari del genere, ci viene anche in soccorso Azure Active Directory Identity Protection che consente, alle aziende che sfruttano il servizio Cloud di Microsoft, di configurare risposte automatiche in base alle azioni sospette eseguite da un utente e rilevate all’interno della propria rete, permettendo tre attività chiave:
- automatizzare il rilevamento e la correzione dei rischi basati sull’identità;
- indagare i rischi utilizzando i dati nel portale;
- esportare i dati di rilevamento dei rischi in utility di terze parti per ulteriori analisi.
Active Directory Identity Protection si basa su un elaborato sistema di punteggio di rischio che tiene conto di diversi fattori (ad es. device usato per il login, posizione geografica, browser utilizzato, IP collegato a malware, proprietà di accesso insolite ecc.), per cui se il comportamento di un utente supera un certo punteggio negativo, si innescano in automatico delle contromisure e viene avvisato il team IT.
Active Directory indietro nel tempo
Active Directory è un componente storico dei server Windows, per cui molte attuali installazioni possono essere vecchie di un decennio, se non oltre, e sono state progettate con un modello di gestione della sicurezza che oggi è del tutto insufficiente e inadeguato, con la conseguenza che oggi chi amministra questi ambienti, si trascina gli stessi limiti.
Altra frequente criticità e data dal modo in cui i team IT procedono alla upgrade dei sistemi operativi server (a proposito la versione 2008 è “end of support” da inizio di quest’anno) ignorando o sottovalutando il processo di revisione dei criteri di protezione, riportando gli stessi limiti del sistema in sostituzione in quello nuovo.
Un’importante documentazione di Microsoft, dal titolo “Active Directory administrative tier model” dovrebbe essere letta con attenzione per acquisire elementi fondamentali sulla configurazione e gestione di Active Directory con particolare riferimento al modello a livelli (di seguito si descriveranno alcuni punti riportati in tale documento).
Criticità dell’Active Directory
I metodi di attacco dei criminali informatici, nel caso di Active Directory non differiscono da quelli usati verso qualunque altro sistema, visto che sfruttano:
- vulnerabilità dei sistemi server Windows;
- errate configurazioni Active Directory;
- vulnerabilità del fattore umano.
Bisogna dire che, come in tanti altri contesti, anche per Active Directory non esiste un software o una tecnologia unica che, se adottata, elimini totalmente i rischi da minacce interne e esterne.
È certamente possibile, invece, mettere in campo un insieme di best practice il cui uso combinato può portare ad una valida soluzione di gestione e controllo della sicurezza di Active Directory.
Protezione dell’Active Directory
Di seguito si enunciano alcune azioni che potremmo definire il “minimo sindacale”, volendo attenerci ad un Active Directory configurato e gestito con dei presupposti di sicurezza.
Prima azione: Identificazione delle vulnerabilità
La maggior parte delle violazioni della sicurezza IT inizia con la compromissione di uno o più computer all’interno di un’infrastruttura, a partire dai quali la violazione può diffondersi rapidamente o essere rallentata o fermata, a seconda delle azioni che un team IT mette in campo per mitigare il rischio in aree strategiche.
E fondamentale, quindi, che il team IT abbia consapevolezza delle vulnerabilità esistenti che, se non possono essere eliminate, devono almeno essere monitorate per impedire che possano essere sfruttate con una propagazione incontrollata sino a giungere all’Active Directory e ai controller di dominio dell’organizzazione.
Seconda azione: Sistemi antivirus e aggiornamento dei software
Una protezione antivirus, può apparire ovvia e scontata, ma purtroppo non è inusuale trovare dei server che non ne sono dotati (chissà perché non pochi addetti IT ritengono di prevederli solo sui client).
Un sistema antivirus e antimalware dovrebbe essere distribuito e aggiornato in modo centralizzato con un monitoraggio attento di tutti i tentativi degli utenti di disabilitare o rimuovere queste applicazioni. Un sistema centralizzato permette di ricevere alert ogni qualvolta l’antivirus rileva un infezione o un azione pericolosa, e questo dovrebbe innescare una risposta del team IT verso l’utente coinvolto.
Un sistema di gestione e distribuzione delle patch (ad es. WSUS) per tutti i sistemi operativi Windows e le applicazioni Microsoft, completa questo requisito minimo di esercizio, insieme alla dismissione dei software che hanno superato il loro ciclo di vita per cui non ricevono ulteriori aggiornamenti di sicurezza.
Terza azione: Corrette configurazioni e correzione continua di quelle rilevatisi errate
Spesso capita di fidarsi di quanto fatto in una fase di configurazione iniziale, dando per scontato che sia priva di difetti. Gli errori di configurazione, come abbiamo detto, creano vulnerabilità. Un team IT deve avere un atteggiamento costantemente critico finalizzato a mettere sempre in discussione le configurazioni in uso. Questo aspetto vale indipendentemente dal fatto che si trovino su controller di dominio, sistemi operativi o Active Directory o all’interno delle applicazioni e quindi vanno sempre trovate soluzioni per migliorare le configurazioni.
Microsoft, in termini generali, suggerisce per Active Directory di:
- proteggere tutti gli account e i gruppi privilegiati utilizzando le impostazioni e le tecniche di configurazione appropriate;
- evitare di disabilitare le funzionalità di sicurezza sui computer degli utenti;
- evitare di concedere diritti e autorizzazioni eccessivi agli account (in particolare gli account di servizio);
- evitare l’utilizzo di credenziali locali identiche tra i sistemi e non consentire l’installazione di applicazioni e utility non autorizzate;
- escludere l’appartenenza permanente a gruppi altamente privilegiati;
- evitare applicazioni e le utilità non necessarie sui controller di dominio;
- Non consentire il download di contenuti Internet sui controller di dominio.
Quarta azione: Riduzione della superfice di attacco e implementazione dei livelli amministrativi
È indicata come quarta azione ma non per importanza. Senza alcun dubbio, ridurre la potenziale superficie di attacco che gli malintenzionati possono sfruttare, si traduce in: minimo numero di foreste e domini nella rete, limitare al massimo il numero di utenti privilegiati e le autorizzazioni per la rete. Va ridotta al minimo non solo la quantità dei “super” account, ma anche le persone che li detengono e queste stesse devono essere attentamente monitorate.
È dagli account con capacità amministrative elevate che sorgono le minacce più pericolose e rappresentano l’oggetto del desiderio di ogni bad hacker.
Inquadrata e opportunamente limitata la superfice di interesse, si dovrebbe mettere mano alla modellazione dei livelli amministrativi di Active Directory, suggerita da Microsoft, che interessa solo gli account amministrativi, non gli account utente standard. Gli ambiti in cui spaziare sono tre, con l’obiettivo di creare delle zone di buffer per tenere opportunamente segregate le azioni di amministrazione compiute su ogni componente del sistema informatico, dai PC ad alto rischio fino alle risorse più sensibili come i controller di dominio.
Il livello 0 è quello più elevato e include account e gruppi amministrativi, controller di dominio e domini che hanno il controllo amministrativo diretto o indiretto della foresta, dei domini o dei controller di dominio di Active Directory e tutte le risorse in esso contenuti. Gli amministratori di livello 0 possono gestire e controllare le risorse in tutti i livelli, ma possono accedere in modo interattivo solo alle risorse di livello 0 (ovvero non devono mai accedere in modo interattivo a una risorsa di livello 2).
Il livello 1 riguarda i server e le applicazioni che sono membri del dominio. Gli account che gestiscono queste risorse hanno accesso a dati aziendali sensibili e possono accedere agli asset di livello 1 o 0 (accesso alla rete) ma possono gestire solo gli asset di livello 1 o di livello 2. Gli amministratori di livello 1 possono accedere in modo interattivo solo agli asset dello stesso livello.
Il livello 2 è riferito ai dispositivi normalmente assegnati agli utenti finali. Si applica agli addetti IT che hanno il compito di gestire il parco micro-informatico.
Questo modello a livelli si integra e migliora il contenimento degli avversari all’interno di un’area di sicurezza, lì dove l’isolamento rete non è efficace o sufficiente. Questo principio vale sia nelle infrastrutture locali che in quelle cloud.
Per comprendere quanto sia importante una gestione dei livelli amministrativi, basta citare il fenomeno del furto di credenziali con le tecniche “Pass the Hash” o “Pass the ticket” che hanno spesso come origine, proprio l’accesso con privilegi amministrativi di livello 0 e 1 a un PC di un utente standard. Tale accesso comporta l’esposizione di tali credenziali sul PC, consentendo potenzialmente ad un hacker, che abbia accesso ad esso, di fare movimenti laterali ed escalation con privilegi amministrativi ad Active Directory. L’implementazione del modello a livelli, quindi, contribuisce a mitigare in modo significativo il furto di credenziali che sono alla base delle violazioni della sicurezza più frequenti.
All’interno di una gestione dei livelli amministrativi, deve essere prevista l’applicazione di almeno le seguenti regole e criteri, se vogliamo che Active Directory non diventi facilmente una spina nel fianco.
Regola base (ma non solo per Active Directory): password forti. Le password devono essere complesse, lunghe e contenere obbligatoriamente caratteri speciali, lettere maiuscole e devono essere cambiate con alta frequenza per imposizione di sistema, impedendo il riuso di password precedentemente usate. In questo modo, se si dovesse verificare la violazione di un account, la modifica frequente della password garantirebbe almeno che l’attacco non possa continuare per molto.
Ogni utenza amministrativa deve essere categoricamente riconducibile ad una sola persona e gli Admin non dovrebbero assolutamente mai condividere le loro password, oltre che custodirle con estrema attenzione.
L’account Administrator predefinito deve essere utilizzato solo per l’installazione del dominio e il ripristino di emergenza (ripristino di Active Directory). Qualsiasi accesso a livello amministrativo ai server o ad Active Directory deve avvenire con un account administrator individuale.
Un’utenza amministrativa non deve mai essere usata se non è necessario, per cui gli appartenenti ai team IT devono disporre anche di un ulteriore account di tipo user standard per le normali attività che non richiedano privilegi superiori.
Nessun account amministrativo può accedere a Internet o alla posta elettronica in nessun momento.
Utilizzare la modalità RestrictedAdmin di RDP e abilitare specifiche workstation per le attività amministrative acceduta con un account di dominio. Vietare assolutamente l’accesso diretto dei server in VPN da Internet.
Quinta azione: monitoraggio e verifica dello stato di sicurezza
Alle buone pratiche finora elencate è necessario affiancare una soluzione di analisi del comportamento che monitori le attività degli utenti privilegiati in Active Directory, ricevendo degli alert automatici delle modifiche occorse, in modo da poter individuare tempestivamente comportamenti anomali e potenziali minacce. Il paradigma dovrebbe rispondere al tracciamento delle informazioni riguardanti il “dove, quando, chi, cosa” per ogni modifica apportata in Active Directory, oltre a poter disporre di un report almeno settimanale delle utenze e delle autorizzazioni esistenti.
Chiude il cerchio l’esecuzione periodica di attività di vulnerability assessment e di penetration test mirati su AD, meglio se curati da un’azienda esterna, in modo da avere una visuale terza della propria security.