Per i cyberattaccanti, ottenere l'accesso al sistema di identità è solo l'inizio del loro viaggio all'interno dell'organizzazione. Una volta che hanno sfruttato una delle decine di tecniche di attacco per entrare, vogliono mantenere la loro presenza ed eludere il rilevamento, aumentando i privilegi, muovendosi lateralmente attraverso l'organizzazione e raccogliendo informazioni vitali lungo il percorso.
Per aiutare i penetration tester e i team di sicurezza a rilevare e prevenire i cyberattacchi, sono disponibili diversi strumenti di post-exploitation, tra cui un nuovo strumento progettato specificamente per gli ambienti Active Directory (AD): Cable.
Sebbene gli strumenti di post-exploitation siano disponibili per favorire l'apprendimento e lo sviluppo di strategie di difesa, possono essere utilizzati anche dagli aggressori. In questo articolo, quindi, analizzeremo come difendersi da un attore malintenzionato che utilizza Cable.
Qual è lo strumento di post-sfruttamento del cavo?
Cable è uno strumento di post-exploitation scritto in .NET e utilizzato per interagire con AD. Consente agli operatori di enumerare utenti, gruppi, computer, trust e autorità di certificazione, nonché di modificare le autorizzazioni sugli oggetti AD. Come mostra la Figura 1 , i moduli di Cable supportano azioni come l'impostazione dei Service Principle Names (SPN), la gestione delle appartenenze ai gruppi e lo sfruttamento della delega vincolata basata sulle risorse (RBCD).
Figura 2 mostra le opzioni disponibili in Cable ldap
che si concentra sull'interrogazione degli oggetti di Active Directory. Supporta l'enumerazione di utenti, computer e gruppi, nonché ricerche più mirate come account con SPN, delega non vincolata o adminCount set to 1
. Queste opzioni sono utili per identificare gli account che potrebbero essere mal configurati o che rappresentano un rischio maggiore, o un'opportunità, dal punto di vista di un attaccante.
ldap
in Cable offre una serie di opzioni per enumerare gli oggetti chiave di AD e identificare gli account con attributi interessanti come SPN, delega non vincolata o pre-autenticazione Kerberos mancante.Ad esempio, utilizzando il metodo Cable /spns
(Figura 3) permette di enumerare gli account con un SPN configurato, che è un passaggio comune in Attacchi di Kerberoasting. Questi account possono essere presi di mira richiedendo un ticket di assistenza, che può poi essere forzato in modo brutale offline per cercare di recuperare la password.
Come difendersi dal cavo
Cable utilizza le query LDAP per identificare i punti deboli specifici di Active Directory, come i server con delega non vincolata, gli account senza pre-autenticazione Kerberos, gli account vulnerabili a Kerberoasting e altro ancora.
Sia Semperis Directory Services Protector (DSP)(Figura 4) che il nostro strumento comunitario gratuito, Purple Knightscansionano anche i punti deboli di AD, compresi i problemi specifici che lo strumento Cable affronta.
Ad esempio, come si può vedere nella Figura 5, la DSP include diversi indicatori di esposizione (IOE) che rilevano i rischi legati agli SPN.
Esempio: Rilevamento dell'uso del cavo in AD
Un metodo di attacco comune, Enterprise CA Security Configuration (ESC1), coinvolge i servizi di certificazione di Active Directory (AD CS), dove è possibile abusare di modelli di certificato mal configurati o troppo permissivi per scalare i privilegi ad amministratore di dominio o equivalente.
Ad esempio, durante la ricognizione, un utente malintenzionato potrebbe scoprire che i computer di dominio hanno diritti di iscrizione a un modello di certificato configurato con l'opzione ENROLLEE_SUPPLIES_SUBJECT
e il flag Client Authentication
EKU (Figura 6), una combinazione che può aprire un percorso per l'escalation dei privilegi.
ENROLLEE_SUPPLIES_SUBJECT
e Client Authentication
EKU, creando un percorso per l'escalation dei privilegi tramite ESC1.Nel nostro esempio, in cui i computer di dominio sono autorizzati a iscriversi a un modello di certificato vulnerabile, un utente malintenzionato può utilizzare Cable per creare un nuovo oggetto computer (Figura 7) per sfruttare l'opzione predefinita ms-DS-MachineAccountQuota
e quindi richiedere un certificato utilizzando quel modello.
MachineAccountQuota
impostazione.Inoltre, l'aggressore può ora utilizzare runas.exe per autenticarsi come account del computer appena creato e richiedere un certificato dal modello ESC1 vulnerabile(Figura 8). Ciò consente di impersonare qualsiasi utente dell'ambiente, compreso un amministratore di dominio.
All'interno di DSP, la recente modifica di Active Directory che ha creato un oggetto informatico dannoso è stata rilevata e registrata con successo(Figura 9).
Ora che i privilegi di amministratore di dominio sono stati ottenuti, un utente malintenzionato può utilizzare Cable per creare una backdoor RBCD modificando l'account del computer del controller di dominio di destinazione. Aggiungendo l'oggetto computer controllato all'account msDS-AllowedToActOnBehalfOfOtherIdentity
(Figura 10), si concedono di fatto la possibilità di impersonare qualsiasi utente, compresi gli obiettivi di alto valore per quel sistema, in qualsiasi momento.
msDS-AllowedToActOnBehalfOfOtherIdentity
del controller di dominio DSP, creando di fatto una backdoor RBCD..Cable supporta l'esecuzione di query LDAP, che possono essere utilizzate per verificare se un account ha un valore impostato per l'opzione msDS-AllowedToActOnBehalfOfOtherIdentity
attributo. Come Figura 11 mostra che il controllore di dominio selezionato riflette la delega configurata.
msDS-AllowedToActOnBehalfOfOtherIdentity
è impostato sul controller di dominio di destinazione DSP, verificando che la configurazione RBCD sia stata eseguita.DSP ha inoltre rilevato e registrato con successo la modifica del file msDS-AllowedToActOnBehalfOfOtherIdentity
sull'account del computer del controllore di dominio interessato (Figura 12).
msDS-AllowedToActOnBehalfOfOtherIdentity
sull'account del computer DSP, mostrando l'esatta modifica e l'utente responsabile.All'interno di DSP, viene analizzato anche il descrittore di sicurezza impostato su questo attributo, consentendo di vedere esattamente quale account di computer è stato aggiunto a msDS-AllowedToActOnBehalfOfOtherIdentity
(Figura 13).
msDS-AllowedToActOnBehalfOfOtherIdentity
che mostra chiaramente che l'account del computer EvilPC$ è stato aggiunto e conferma la presenza di una backdoor RBCD.Caso d'uso RBCD: Annullamento automatico delle modifiche al cavo
Il DSP consente di creare regole di allarme e di risposta e, poiché il sistema msDS-AllowedToActOnBehalfOfOtherIdentity
attributo non deve mai essere modificato nell'account del computer di un controller di dominio.è possibile configurare il DSP in modo che rilevi automaticamente questa modifica e attivi un'azione di azione di auto-undo (Figura 14).
(&(objectCategory=computer)(userAccountControl:1.2.840.113556.1.4.803:=8192))
La Figura 15 mostra un esempio di DSP che esegue un'azione di annullamento automatico, riportando automaticamente la modifica allo stato precedente.
msDS-AllowedToActOnBehalfOfOtherIdentity
sul controllore di dominio DSP.Istantanea Semperis
Directory Services Protector offre alle organizzazioni visibilità sulle modifiche all'interno dell'ambiente Active Directory. Come abbiamo dimostrato, DSP non solo rileva le modifiche ad alto rischio come la manipolazione di attributi sensibili quali msDS-AllowedToActOnBehalfOfOtherIdentity
ma risponde anche a tali modifiche in modo automatico, riportando le modifiche indesiderate allo stato precedente.