Impacket per Pentester: Movimento Laterale di Rete e Red Teaming
Detection stack
- AIDR
- Alert
- ETL
- Query
Sommario
L’articolo spiega come l’utilità impacket-net può essere utilizzata per l’enumerazione di Active Directory e la manipolazione amministrativa. Mostra come gli attaccanti possano sfruttare hash NTLM, ticket Kerberos e chiavi AES per gestire utenti, gruppi e account del computer nel dominio. Lo strumento supporta ricognizioni furtive e può accelerare l’escalation dei privilegi all’interno di un ambiente di dominio.
Indagine
Il rapporto utilizza un ambiente di laboratorio controllato, ignite.local, per dimostrare diversi percorsi di autenticazione e metodi di esecuzione dei comandi. Mostra come un attaccante possa progredire da un’enumerazione a basso privilegio a un controllo amministrativo completo modificando gli oggetti della directory. L’indagine sottolinea inoltre come queste azioni restino visibili nei log degli eventi di Windows.
Mitigazione
Le mitigazioni consigliate includono l’impostazione di ms-DS-MachineAccountQuota to 0 per bloccare la creazione non autorizzata di account computer. Le organizzazioni dovrebbero anche imporre firme LDAP, abilitare il binding del canale e disabilitare tipi di crittografia più deboli come RC4. Inoltre, collocare account altamente privilegiati nel gruppo di sicurezza Protected Users può aiutare a prevenire l’abuso di NTLM e l’uso improprio di TGT a lungo termine.
Risposta
Se questa attività viene rilevata, i difensori dovrebbero centralizzare e allertare sugli ID eventi chiave di Windows legati ai cambiamenti del ciclo di vita degli account e alle modifiche dei membri del gruppo. Dovrebbero essere presenti playbook di risposta automatizzati per invertire rapidamente le modifiche non autorizzate alla directory. Distribuire account finti in unità organizzative monitorate può anche fornire allarmi di alta fiducia per una risposta immediata agli incidenti.
Flusso di Attacco
Stiamo ancora aggiornando questa parte. Iscriviti per essere avvisato
AvvisamiRilevamenti
Probabile Uso di Windows Hacktools [Parte1] (via cmdline)
Visualizza
Probabile Uso di Windows Hacktools [Parte3] (via file_event)
Visualizza
Rilevamento dell’Utilità Impacket-Net con Modifiche all’Account [Creazione di Processo su Linux]
Visualizza
Rileva Escalation di Privilegi e Attività degli Account in Active Directory [Registro Eventi di Sicurezza Microsoft Windows]
Visualizza
Esecuzione della Simulazione
Prerequisito: Il Check di Telemetria e Baseline Pre-flight deve essere passato.
Motivazione: Questa sezione descrive l’esecuzione precisa della tecnica dell’avversario (TTP) progettata per attivare la regola di rilevamento. I comandi e il racconto DEVONO riflettere direttamente le TTP identificate e mirare a generare l’esatta telemetria prevista dalla logica di rilevamento. Esempi astratti o non correlati porteranno a diagnosi errate.
-
Narrativa & Comandi di Attacco: Un avversario ha ottenuto un punto d’appoggio su un server Linux. Per garantire la persistenza e prevenire il blocco, intendono riabilitare un account amministrativo inattivo. Scelgono di utilizzare l’utilità
impacket-net, uno strumento comune nei framework di pentesting, perché credono che sia uno strumento amministrativo standard e potrebbe confondersi nel rumore. L’attaccante esegue il comando tramite l’interprete Python per manipolare il database degli account locali, utilizzando specificamente il flag-enableper riattivare l’utente di destinazione. Questa azione è progettata per generare l’esattomodello di CommandLine(impacket-netand-enable) che la regola di rilevamento sta cercando. -
Script di Test di Regressione:
#!/bin/bash # Script di simulazione per attivare la regola di rilevamento di Impacket-Net echo "[+] Avviando simulazione Impacket-Net..." # Simuliamo la presenza dello strumento chiamando python3 # e passando le stringhe specifiche richieste dalla logica di rilevamento. # In uno scenario reale, sarebbe: python3 /path/to/impacket-net -enable <user> python3 -c "import sys; print('Simulando impacket-net -enable user123')" | grep -q "impacket-net" # Per garantire che l'evento effettivo di creazione del processo sia registrato con le stringhe specifiche: # Eseguiamo un comando che imita esattamente gli argomenti della riga di comando. export IM_SIM_CMD="python3 /usr/local/bin/impacket-net -enable target_account" echo "[+] Eseguendo: $IM_SIM_CMD" eval $IM_SIM_CMD echo "[+] Comando di simulazione inviato. Verificare i log di creazione del processo su SIEM." -
Comandi di Pulizia:
# Nessuna modifica persistente fatta in questa simulazione, # ma assicurati che eventuali file fittizi creati siano rimossi. rm -f /tmp/impacket_sim_test.log echo "[+] Pulizia completata."