Cos'è Kerberos?
Kerberos è un protocollo di autenticazione di rete che utilizza la crittografia a chiave simmetrica per fornire servizi di autenticazione alle applicazioni client-server. Si tratta di un protocollo basato su ticket e richiede il funzionamento di una terza parte fidata, nota come centro di distribuzione delle chiavi (KDC: key distribution center). Inizialmente sviluppato dal Massachusetts Institute of Technology (MIT) per Project Athena, Kerberos è ora utilizzato come protocollo di autenticazione predefinito in Windows 2000 e in tutte le versioni successive.
Cos'è LDAP?
Il Lightweight Directory Access Protocol (LDAP), introdotto nell'anno 1993, è un protocollo di base che alla fine ha aperto la strada ad Active Directory e Open LDAP di Microsoft. Si tratta di un protocollo aperto e multipiattaforma utilizzato per mantenere le informazioni di directory distribuite in modo organizzato e di facile accesso. LDAP funge anche da protocollo di autenticazione dei servizi di directory fornendo un linguaggio comune che le applicazioni possono utilizzare per comunicare con i server di altri servizi di directory.
Differenza tra Kerberos e NTLM
Mentre Kerberos è un protocollo di autenticazione basato su ticket per host attendibili su reti non attendibili, il protocollo LDAP (Lightweight Directory Access Protocol) è un protocollo di autenticazione per l'accesso alle risorse del server tramite Internet o Intranet.
Come funziona Kerberos?
Kerberos è un protocollo di autenticazione basato su ticket. Le principali entità coinvolte nel protocollo Kerberos sono:
- Client: il client agisce per conto dell'utente e avvia la richiesta.
- Server: il server ospita i servizi a cui l'utente desidera accedere.
- Server di autenticazione (AS): questo server esegue l'autenticazione del client ed emette al client un ticket di concessione ticket (TGT) se l'autenticazione ha esito positivo.
- Server di concessione ticket (TGS): si tratta di un server applicazioni che emette ticket di servizio.
- Database (db): il server di autenticazione verifica i diritti di accesso degli utenti nel database.
- Centro di distribuzione delle chiavi (KDC): il KDC fornisce servizi di autenticazione e concessione ticket. L'AS, il TGS e db fanno parte del KDC.
Spiegazione passo passo del protocollo Kerberos:
- Un utente tenta di accedere alla rete tramite la schermata di accesso interattiva del client.
- Il client costruisce un pacchetto chiamato autenticatore che contiene informazioni sul client (nome utente, data e ora). Ad eccezione del nome utente, tutte le altre informazioni contenute nell'autenticatore sono crittografate con la password dell'utente.
- Il client invia quindi l'autenticatore crittografato al KDC.
- Il KDC conosce immediatamente l'identità del client che ha inviato l'autenticatore guardando il nome utente. Il KDC esaminerà quindi il suo database AD per la password dell'utente, che è un segreto condiviso. Quindi decrittografa l'autenticatore con la password. Se il KDC è in grado di decrittografare l'autenticatore, significa che l'identità del client è verificata.
- Una volta verificata l'identità del client, il KDC crea un ticket di concessione ticket (TGT) che viene crittografato utilizzando una chiave nota solo al KDC.
- Il KDC invia il TGT al client. Il client memorizza il TGT nella barra delle applicazioni Kerberos. Può utilizzare questo ticket ogni volta che deve accedere a una risorsa su un server della rete (entro un limite di tempo tipico di otto ore).
- Quando il client deve accedere a un altro server, invia il TGT al KDC insieme a una richiesta di accesso alla risorsa.
- Il KDC decrittografa il TGT con la relativa chiave. Questo passaggio verifica se il client si è precedentemente autenticato al KDC.
- Il KDC genera un ticket per consentire al client di accedere alla risorsa condivisa. Questo ticket è crittografato dalla chiave del server. Il KDC invia quindi questo ticket al client.
- Il client salva questo ticket nella barra delle applicazioni Kerberos e ne invia una copia al server.
- Il server utilizza la propria password per decrittografare il ticket, se il server decrittografa correttamente il ticket, sa che il ticket è legittimo.
- Il server determinerà quindi se il client dispone dell'autorizzazione necessaria per accedere alla risorsa esaminando l'elenco di controllo di accesso (ACL).
Come funziona l'autenticazione LDAP?
L'autenticazione LDAP segue un modello client-server. Il client è un sistema o un'applicazione che richiede l'accesso alle informazioni in un database LDAP, mentre il server è un server LDAP. Il processo di autenticazione LDAP può essere suddiviso in due passaggi, come segue:
Spiegazione passo passo del protocollo LDAP:
Passaggio 1: risoluzione del nome utente
Per autenticare un nome utente, è necessario il nome distinto (DN) dell'utente. Il DN è una sequenza di nomi di dominio relativi (RDN) collegati da virgole (,).
Ad esempio, ecco l'aspetto di un utente chiamato DN di Clara. Il DN è simile a un percorso che inizia con la radice di Active Directory.
CN=Clara Holt, OU=Users, DC=ADAuditPlus, DC=COMData la lunghezza e i vari attributi inclusi nel DN, è difficile per un utente ricordarlo quando fornisce le credenziali per l'autenticazione. Quindi, invece del DN, il client raccoglie il nome utente o l'indirizzo di posta elettronica dell'utente ed esegue una risoluzione DN, che è analoga a una risoluzione DNS, quando si cerca l'indirizzo IP di un sito web.
Il nome utente o l'indirizzo di posta elettronica viene eseguito su un database di tutte le voci utente fino a quando non viene trovata una corrispondenza esatta. Gli attributi della directory da cercare sono specificati nel parametro di configurazione searchFilter.
Un paio di requisiti per un'efficace risoluzione DN:
- Assicurati sempre che gli utenti dispongano di nomi utente e indirizzi di posta elettronica univoci. Se più voci condividono lo stesso identificatore, l'autenticazione avrà esito negativo.
- Assicurati che tutti gli attributi identificativi presenti nel modulo di accesso siano definiti nello schema. Ad esempio, se l'indirizzo di posta elettronica di un utente non è definito nel database, la risoluzione non può essere eseguita e l'autenticazione avrà esito negativo.
Passaggio 2: convalida della password dell'utente
L'autenticazione LDAP utilizza un comando bind per autenticare gli utenti e concedere loro l'accesso richiesto. Per convalidare la password, vengono scansionati il DN e la password fornita dall'utente. La password fornita dall'utente viene confrontata con il valore archiviato nell'attributo dello schema denominato userPassword.
- L'operazione di binding funziona anche per i valori delle password per cui è stato eseguito l'hash o che sono stati crittografati.
- Anche in questo caso, come nel passaggio precedente, per una corretta autenticazione, l'attributo userPassword deve avere un valore definito.
Semplifica il controllo e la creazione di report di Kerberos e LDAP con ADAudit Plus
ADAudit Plus è una soluzione di controllo Active Directory completa che ti aiuterà a monitorare e verificare gli accessi e le disconnessioni locali da parte degli utenti del dominio. Può anche tenere traccia di altri eventi critici che possono causare interruzioni della rete.
ADAudit Plus semplifica il monitoraggio delle attività Kerberos offrendo un rapporto predefinito sull'attività di accesso insieme a una rappresentazione grafica intuitiva dello stesso per facilitarne la comprensione. Offre, inoltre, la possibilità di generare report personalizzati ed esportarli nel formato preferito: PDF, XLS, HTML e CSV.
Il monitoraggio dei server LDAP è necessario per garantire la disponibilità e le prestazioni del servizio. Tenendo traccia delle query LDAP elaborate, gli amministratori IT possono rilevare le query sospette che possono essere utilizzate per eseguire ricognizioni nell'ambiente Active Directory e limitare gli attacchi. ADAudit Plus semplifica il monitoraggio LDAP offrendo report di controllo LDAP predefiniti.
Una volta installato, ADAudit Plus configura automaticamente i criteri di controllo necessari per Active Directory. Per abilitare la configurazione automatica:
accedi alla console web ADAudit Plus → Domain Settings → Audit Policy: Configure.
Passaggi per tenere traccia dell'autenticazione Kerberos con ADAudit Plus
- Accedi ad ADAudit Plus.
- Seleziona il Dominio richiesto dal menu a discesa
- Vai alla scheda Reports.
- Passa a Local Logon-Logoff.
- Seleziona il report Logon Activity, cerca la colonna Authentication Package.
Passaggi per tenere traccia degli eventi LDAP utilizzando ADAudit Plus
- Accedi ad ADAudit Plus.
- Seleziona il Dominio richiesto dall'elenco a discesa.
- Passa alla scheda Server Audit.
- Passa a LDAP Auditing.
- Seleziona il report desiderato tra quelli elencati in LDAP Auditing.
ADAudit Plus è un software di creazione di report sulle modifiche di Windows Active Directory (AD) basato sul web in tempo reale che controlla e crea report su Active Directory, server e workstation Windows e dispositivi di archiviazione NAS per soddisfare le esigenze di sicurezza e i requisiti di conformità. ADAudit Plus viene fornito in bundle con più di 200 report predefiniti che semplificano il controllo di AD. La soluzione invia anche avvisi in tempo reale per segnalare eventi critici e quindi aiuta a proteggere la rete dalle minacce e a migliorare il livello di sicurezza IT. Scopri le funzionalità di ADAudit Plus qui.
Il controllo nativo è un po' troppo?
Prova ADAudit Plus per controllare, tracciare e rispondere alle attività dannose che si verificano all'interno del tuo ambiente Windows AD e Azure.
Prova gratis ADAudit Plus