Iscriviti al webinar gratuito del 12 Maggio per diventare Forensic Analyst! Scopri di più
Corso Ethical Hacker: accedi alla promozione fino al 30 Aprile! Scopri di più
Quando un host Windows non riesce a risolvere un nome tramite DNS, ricade su due protocolli legacy: LLMNR (Link-Local Multicast Name Resolution, porta UDP 5355) e NBT-NS (NetBIOS Name Service, porta UDP 137). Entrambi funzionano in broadcast o multicast sulla rete locale, il che significa che qualsiasi macchina nel segmento può rispondere alla richiesta. Un avversario posizionato sulla stessa rete si limita a rispondere per primo, dichiarandosi l'host cercato: la vittima invia le proprie credenziali NTLM — hash NTLMv1 o NTLMv2 — al sistema controllato dall'attaccante.
La tecnica opera in due fasi complementari. Il poisoning cattura gli hash, che possono essere craccati offline con attacchi di forza bruta. Il relay inoltra l'hash intercettato verso un terzo sistema in tempo reale, ottenendo esecuzione di codice o accesso a risorse SMB, LDAP, MSSQL e HTTP senza mai conoscere la password in chiaro. Le due fasi possono essere combinate o indipendenti.
Questa sotto-tecnica è mappata su due tattiche: Credential Access (TA0006), perché sottrae materiale di autenticazione, e Collection (TA0009), perché raccoglie dati dal traffico di rete. L'impatto documentato coinvolge 2 gruppi APT, 5 tool offensivi e 4 mitigazioni specifiche, a conferma della rilevanza operativa sia in scenari nation-state sia in intrusioni a sfondo finanziario.
La simulazione di questa tecnica in laboratorio richiede almeno due macchine Windows su uno stesso segmento di rete e una macchina attaccante Linux. L'obiettivo è dimostrare quanto sia banale intercettare credenziali quando LLMNR e NBT-NS sono attivi — la configurazione predefinita nella maggior parte degli ambienti Windows.
Il tool di riferimento è Responder (open source), progettato specificamente per il poisoning dei servizi di risoluzione nomi locali. Sulla macchina attaccante, il comando base per avviare il poisoning su un'interfaccia di rete è:
sudo responder -I eth0 -rdwv
Il flag -r abilita le risposte NBT-NS, -d abilita il risponditore DHCP, -w attiva il proxy WPAD e -v aumenta la verbosità. Quando una vittima tenta di risolvere un nome inesistente — ad esempio digitando un percorso UNC errato come \\srevr01\share — Responder risponde immediatamente e cattura l'hash NTLMv2 nella console. Il dato acquisito dal Lazarus Group mostra una sintassi analoga: un percorso al binario di Responder seguito da -i [IP] -rPv, dove il flag -P forza il proxy di autenticazione.
Per la fase di relay, il passaggio naturale è Impacket (open source), la suite Python che include i moduli ntlmrelayx e smbrelayx. Il relay verso un target con SMB signing disabilitato si esegue così:
sudo ntlmrelayx.py -t smb://192.168.1.50 -smb2support
Questo comando resta in ascolto, riceve l'hash catturato dal poisoning e lo rigioca verso il target specificato. Se la vittima ha privilegi amministrativi sul target, il relay produce una shell o esegue comandi arbitrari. Per ampliare la superficie d'attacco, si possono specificare target multipli con un file:
sudo ntlmrelayx.py -tf targets.txt -smb2support
All'interno di framework C2, Empire (open source) e PoshC2 (open source) integrano il modulo Inveigh, un equivalente PowerShell di Responder che opera direttamente in memoria sulla macchina compromessa. Il cmdlet Invoke-Inveigh — documentato come strumento usato da Wizard Spider — permette il poisoning senza scrivere binari su disco, un vantaggio operativo significativo in ambienti con EDR attivi.
Infine, Pupy (open source) offre moduli integrati per NBNS spoofing e sniffing di credenziali in chiaro, utile per scenari dove coesistono protocolli legacy non cifrati.
Una catena d'attacco completa in laboratorio prevede: Responder per il poisoning iniziale, ntlmrelayx per il relay verso un host con SMB signing disabilitato, e l'uso della shell ottenuta per estrarre ulteriori credenziali dal SAM o dalla memoria LSASS.
Scarica la guida gratuita e segui il percorso corretto fin dal primo passo