Kerberoast
Utilizza Trickest per creare facilmente e automatizzare flussi di lavoro supportati dagli strumenti della community più avanzati al mondo. Ottieni l'accesso oggi:
Kerberoast
Il Kerberoasting si concentra sull'acquisizione di biglietti TGS, in particolare quelli relativi ai servizi che operano sotto account utente in Active Directory (AD), escludendo gli account computer. La crittografia di questi biglietti utilizza chiavi che derivano dalle password degli utenti, consentendo la possibilità di craccare le credenziali offline. L'uso di un account utente come servizio è indicato da una proprietà "ServicePrincipalName" non vuota.
Per eseguire il Kerberoasting, è essenziale un account di dominio in grado di richiedere i biglietti TGS; tuttavia, questo processo non richiede privilegi speciali, rendendolo accessibile a chiunque abbia credenziali di dominio valide.
Punti Chiave:
Il Kerberoasting mira ai biglietti TGS per i servizi degli account utente all'interno di AD.
I biglietti crittografati con chiavi dalle password degli utenti possono essere craccati offline.
Un servizio è identificato da un ServicePrincipalName che non è nullo.
Non sono necessari privilegi speciali, solo credenziali di dominio valide.
Attacco
Gli strumenti di Kerberoasting di solito richiedono la crittografia RC4 durante l'attacco e l'inizializzazione delle richieste TGS-REQ. Questo perché RC4 è più debole e più facile da craccare offline utilizzando strumenti come Hashcat rispetto ad altri algoritmi di crittografia come AES-128 e AES-256.
Gli hash RC4 (tipo 23) iniziano con $krb5tgs$23$*
mentre quelli AES-256 (tipo 18) iniziano con $krb5tgs$18$*
.
Linux
Strumenti multi-funzionali inclusi un dump degli utenti kerberoastable:
Windows
Enumerare gli utenti Kerberoastable
Tecnica 1: Richiedere il TGS e scaricarlo dalla memoria
Tecnica 2: Strumenti automatici
Quando viene richiesto un TGS, viene generato l'evento di Windows 4769 - È stata richiesta un'autorizzazione di servizio Kerberos
.
Utilizza Trickest per creare facilmente e automatizzare flussi di lavoro supportati dagli strumenti della comunità più avanzati al mondo. Ottieni l'accesso oggi:
Cracking
Persistenza
Se hai abbastanza autorizzazioni su un utente, puoi renderlo kerberoastable:
Puoi trovare strumenti utili per gli attacchi kerberoast qui: https://github.com/nidem/kerberoast
Se riscontri questo errore da Linux: Kerberos SessionError: KRB_AP_ERR_SKEW(Clock skew too great)
è a causa dell'ora locale, è necessario sincronizzare l'host con il DC. Ci sono alcune opzioni:
ntpdate <IP del DC>
- Deprecato da Ubuntu 16.04rdate -n <IP del DC>
Mitigazione
Il Kerberoasting può essere condotto con un alto grado di furtività se è sfruttabile. Per rilevare questa attività, è necessario prestare attenzione all'ID evento di sicurezza 4769, che indica che è stata richiesta un ticket Kerberos. Tuttavia, a causa dell'alta frequenza di questo evento, è necessario applicare filtri specifici per isolare attività sospette:
Il nome del servizio non dovrebbe essere krbtgt, poiché si tratta di una richiesta normale.
I nomi dei servizi che terminano con $ dovrebbero essere esclusi per evitare di includere account macchina utilizzati per i servizi.
Le richieste dalle macchine dovrebbero essere filtrate escludendo i nomi degli account formattati come machine@domain.
Dovrebbero essere considerate solo le richieste di ticket riuscite, identificate da un codice di errore '0x0'.
Molto importante, il tipo di crittografia del ticket dovrebbe essere 0x17, che viene spesso utilizzato negli attacchi di Kerberoasting.
Per mitigare il rischio di Kerberoasting:
Assicurarsi che le Password degli Account di Servizio siano difficili da indovinare, raccomandando una lunghezza di più di 25 caratteri.
Utilizzare Account di Servizio Gestiti, che offrono vantaggi come cambi automatici di password e gestione delegata del Nome Principale del Servizio (SPN), migliorando la sicurezza contro tali attacchi.
Implementando queste misure, le organizzazioni possono ridurre significativamente il rischio associato al Kerberoasting.
Kerberoast senza account di dominio
A settembre 2022, è emerso un nuovo modo per sfruttare un sistema da parte di un ricercatore di nome Charlie Clark, condiviso attraverso la sua piattaforma exploit.ph. Questo metodo consente di acquisire Service Tickets (ST) tramite una richiesta KRB_AS_REQ, che notevolmente non richiede il controllo su alcun account di Active Directory. Fondamentalmente, se un principale è configurato in modo tale da non richiedere la pre-autenticazione - una situazione simile a quanto noto nel campo della sicurezza informatica come un attacco AS-REP Roasting - questa caratteristica può essere sfruttata per manipolare il processo di richiesta. In particolare, modificando l'attributo sname all'interno del corpo della richiesta, il sistema viene ingannato nel rilasciare un ST anziché il normale Ticket Granting Ticket (TGT) crittografato.
La tecnica è completamente spiegata in questo articolo: post del blog di Semperis.
Devi fornire un elenco di utenti poiché non disponiamo di un account valido per interrogare il LDAP utilizzando questa tecnica.
Linux
Windows
Riferimenti
Usa Trickest per creare e automatizzare facilmente flussi di lavoro supportati dagli strumenti della community più avanzati al mondo. Ottieni l'accesso oggi:
Last updated