Linux Active Directory
Una macchina Linux può essere presente anche all'interno di un ambiente Active Directory.
Una macchina Linux in un AD potrebbe memorizzare diversi ticket CCACHE all'interno di file. Questi ticket possono essere utilizzati e abusati come qualsiasi altro ticket Kerberos. Per leggere questi ticket è necessario essere il proprietario dell'utente del ticket o root all'interno della macchina.
Enumerazione
Enumerazione AD da Linux
Se hai accesso a un AD in Linux (o bash in Windows) puoi provare https://github.com/lefayjey/linWinPwn per enumerare l'AD.
Puoi anche controllare la seguente pagina per imparare altre modalità per enumerare l'AD da Linux:
page389, 636, 3268, 3269 - Pentesting LDAPFreeIPA
FreeIPA è un'alternativa open-source a Microsoft Windows Active Directory, principalmente per ambienti Unix. Combina un directory LDAP completa con un centro di distribuzione delle chiavi MIT Kerberos per la gestione simile ad Active Directory. Utilizzando il sistema di certificati Dogtag Certificate System per la gestione dei certificati CA & RA, supporta l'autenticazione multifattore, inclusi i smart card. SSSD è integrato per i processi di autenticazione Unix. Scopri di più al riguardo in:
pageFreeIPA PentestingGiocare con i ticket
Pass The Ticket
In questa pagina troverai diversi luoghi in cui potresti trovare ticket Kerberos all'interno di un host Linux, nella pagina seguente puoi imparare come trasformare questi formati di ticket CCache in Kirbi (il formato necessario per l'uso in Windows) e anche come eseguire un attacco PTT:
pagePass the TicketRiutilizzo del ticket CCACHE da /tmp
I file CCACHE sono formati binari per memorizzare le credenziali Kerberos che vengono tipicamente archiviati con autorizzazioni 600 in /tmp
. Questi file possono essere identificati dal loro formato di nome, krb5cc_%{uid}
, che corrisponde all'UID dell'utente. Per la verifica del ticket di autenticazione, la variabile d'ambiente KRB5CCNAME
dovrebbe essere impostata sul percorso del file di ticket desiderato, consentendone il riutilizzo.
Elencare il ticket corrente utilizzato per l'autenticazione con env | grep KRB5CCNAME
. Il formato è portatile e il ticket può essere riutilizzato impostando la variabile d'ambiente con export KRB5CCNAME=/tmp/ticket.ccache
. Il formato del nome del ticket Kerberos è krb5cc_%{uid}
, dove uid è l'UID dell'utente.
Riutilizzo del ticket CCACHE dalla keyring
I ticket Kerberos memorizzati nella memoria di un processo possono essere estratti, specialmente quando la protezione ptrace della macchina è disabilitata (/proc/sys/kernel/yama/ptrace_scope
). Uno strumento utile a questo scopo si trova su https://github.com/TarlogicSecurity/tickey, che facilita l'estrazione iniettando nelle sessioni e scaricando i ticket in /tmp
.
Per configurare e utilizzare questo strumento, seguire i passaggi di seguito:
Questa procedura cercherà di iniettarsi in varie sessioni, indicando il successo memorizzando i ticket estratti in /tmp
con una convenzione di denominazione __krb_UID.ccache
.
Riutilizzo del ticket CCACHE da SSSD KCM
SSSD mantiene una copia del database nel percorso /var/lib/sss/secrets/secrets.ldb
. La corrispondente chiave viene memorizzata come file nascosto nel percorso /var/lib/sss/secrets/.secrets.mkey
. Di default, la chiave è leggibile solo se si hanno i permessi di root.
Invocando **SSSDKCMExtractor
** con i parametri --database e --key, verrà analizzato il database e decifrati i segreti.
Il blob Kerberos della cache delle credenziali può essere convertito in un file CCache Kerberos utilizzabile che può essere passato a Mimikatz/Rubeus.
Riutilizzo del ticket CCACHE da keytab
Estrarre gli account da /etc/krb5.keytab
Le chiavi degli account di servizio, essenziali per i servizi che operano con privilegi di root, vengono conservate in modo sicuro nei file /etc/krb5.keytab
. Queste chiavi, simili a password per i servizi, richiedono una rigorosa riservatezza.
Per ispezionare il contenuto del file keytab, è possibile utilizzare il comando klist
. Lo strumento è progettato per visualizzare i dettagli delle chiavi, inclusa l'NT Hash per l'autenticazione dell'utente, in particolare quando il tipo di chiave viene identificato come 23.
Per gli utenti Linux, KeyTabExtract
offre la funzionalità di estrarre l'hash RC4 HMAC, che può essere sfruttato per il riutilizzo dell'hash NTLM.
Su macOS, bifrost
funge da strumento per l'analisi dei file keytab.
Utilizzando le informazioni sull'account e l'hash estratti, è possibile stabilire connessioni ai server utilizzando strumenti come crackmapexec
.
Riferimenti
Last updated