Cos'è Kerberos?
- Glossario IAM
- Cos'è Kerberos?
Kerberos è un protocollo di autenticazione di rete informatica che verifica l'identità degli utenti o degli host utilizzando un sistema di "biglietti" digitali. Utilizza la crittografia a chiave segreta e una terza parte fidata per verificare le identità degli utenti e autenticare le applicazioni client-server.
Il protocollo Kerberos è stato originariamente sviluppato al Massachusetts Institute of Technology (MIT) nel 1988, in modo che l'università potesse autenticare in sicurezza gli utenti della rete e autorizzarli ad accedere a risorse specifiche, come archivi e database. All'epoca, le reti informatiche autenticavano gli utenti con ID utente e password, che venivano trasmessi in chiaro. Ciò consentiva ai malintenzionati di intercettare le credenziali degli utenti e di utilizzarle per violare la rete del MIT.
Kerberos permetteva a host fidati di comunicare su reti non fidate - in particolare Internet - senza trasmettere o memorizzare password in chiaro. Inoltre, Kerberos consentiva agli utenti di accedere a più sistemi con una sola password, una versione iniziale della tecnologia Single Sign-On (SSO).
A cosa serve Kerberos?
Kerberos è uno dei protocolli di autenticazione di rete più utilizzati oggi. È spesso utilizzato per supportare l'SSO nelle grandi reti aziendali, è il metodo di autenticazione predefinito in Windows e svolge un ruolo integrale nell'Active Directory (AD) di Windows. Kerberos è implementabile anche in Apple OS, FreeBSD, UNIX e Linux.
Qual è lo scopo di un biglietto quando si usa Kerberos?
I biglietti sono la base del protocollo di autenticazione Kerberos.
Il nome Kerberos deriva dalla mitologia greca. Kerberos, noto anche come Cerbero, era un cane a tre teste a guardia davanti alll'ingresso del mondo dei morti. Il nome si riferisce alle tre "teste" del protocollo Kerberos: il client, il server e il Kerberos Key Distribution Center (KDC) che emette i "biglietti" di Kerberos.
Un "biglietto" di Kerberos è un certificato digitale, emesso da un server di autenticazione e crittografato con la chiave del server, che consente agli host di dimostrare la propria identità in modo sicuro. Si tratta della cosiddetta "autenticazione reciproca".
La richiesta e la concessione dei biglietti di Kerberos avviene in modo trasparente per l'utente finale. Quando un client riceve un biglietto di autenticazione di Kerberos, lo restituisce al server insieme a informazioni aggiuntive per verificare l'identità del client. Il server emette quindi un biglietto di servizio di Kerberos e una chiave di sessione, che completano il processo di autorizzazione per quella sessione. Tutti i biglietti di Kerberos hanno una riferimento temporale e un limite di tempo e sono specifici per la sessione, il che riduce al minimo il rischio che un malintenzionato possa utilizzare un biglietto compromesso per accedere al sistema.
Come funziona il protocollo Kerberos?
Ecco una descrizione molto semplificata del protocollo Kerberos in azione:
- Il processo di autenticazione del client di Kerberos inizia quando un client richiede un biglietto di autenticazione (Ticket Granting Ticket, TGT) al server di autenticazione KDC. Poiché questa richiesta iniziale non contiene informazioni sensibili, viene inviata in testo semplice.
- Il KDC cerca il client nel suo database. Se lo trova, invia un TGT e una chiave di sessione crittografati. In caso contrario, l'operazione si interrompe e al client viene negato l'accesso.
- Una volta autenticato, il client utilizza il TGT per richiedere un biglietto di servizio al servizio di concessione dei biglietti (Ticket Granting Service, TGS).
- Se il TGS riesce ad autenticare il client, gli invia le credenziali e il biglietto per accedere al servizio richiesto. Il biglietto viene memorizzato sul dispositivo dell'utente finale.
- Il client utilizza il proprio biglietto per richiedere l'accesso al server dell'applicazione. Una volta che il server dell'applicazione autentica la richiesta, il client può accedere al server.
Quali vantaggi apporta il protocollo Kerberos?
Kerberos è un protocollo di autenticazione affermato e solido, integrato in tutti i sistemi operativi più diffusi e in grado di supportare i moderni ambienti informatici distribuiti. È particolarmente adatto per le implementazioni SSO, dove fornisce la tecnologia di back-end per garantire agli utenti finali un'esperienza senza problemi. supportando al contempo il controllo degli accessi in base al ruolo (RBAC) e l'accesso con privilegi minimi alle risorse digitali.
Kerberos può essere violato?
Poiché Kerberos è una tecnologia ampiamente utilizzata e vecchia di decenni, i malintenzionati hanno trovato il modo di comprometterla. Tra i più comuni attacchi informatici troviamo:
- Attacchi "pass-the-ticket" (passaggio del biglietto), in cui i malintenzionati intercettano e riutilizzano i biglietti inviati a o da un utente autenticato.
- Attacchi "golden ticket", noti anche come attacchi "DC shadow", in cui i malintenzionati ottengono l'accesso necessario per creare il proprio controllore di dominio in Windows. In questo modo possono creare credenziali con privilegi fasulle che garantiscono loro un accesso illimitato alle risorse di rete.
- Attacchi di furto di credenziali, in cui i malintenzionati tentano di compromettere le password degli utenti. Questi attacchi sono generalmente rivolti ai server di autenticazione KDC o ai servizi di concessione dei biglietti.
Tuttavia, anche se nessuna tecnologia è completamente inattaccabile, Kerberos è abbastanza sicuro se configurato e gestito correttamente. Affinché l'implementazione di Kerberos sia sempre sicura, cercate di mantenerlo aggiornato e di fare in modo che tutti i vostri utenti finali utilizzino password complesse e univoche con l'aiuto dell'autenticazione multifattoriale (AMF).