hacktricks/generic-methodologies-and-resources/pentesting-network/glbp-and-hsrp-attacks.md

9 KiB

Attacchi GLBP & HSRP

{% hint style="success" %} Impara e pratica l'Hacking su AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking su GCP: HackTricks Training GCP Red Team Expert (GRTE)

Sostieni HackTricks
{% endhint %}

{% embed url="https://websec.nl/" %}

Panoramica sull'Interruzione di FHRP

Approfondimenti su FHRP

FHRP è progettato per fornire robustezza di rete unendo più router in un'unica unità virtuale, migliorando così la distribuzione del carico e la tolleranza ai guasti. Cisco Systems ha introdotto protocolli di spicco in questa suite, come GLBP e HSRP.

Approfondimenti sul Protocollo GLBP

La creazione di Cisco, GLBP, funziona sullo stack TCP/IP, utilizzando UDP sulla porta 3222 per la comunicazione. I router in un gruppo GLBP scambiano pacchetti "hello" a intervalli di 3 secondi. Se un router non invia questi pacchetti per 10 secondi, si presume che sia offline. Tuttavia, questi timer non sono fissi e possono essere modificati.

Operazioni e Distribuzione del Carico di GLBP

GLBP si distingue per consentire la distribuzione del carico tra i router utilizzando un singolo IP virtuale accoppiato con più indirizzi MAC virtuali. In un gruppo GLBP, ogni router è coinvolto nell'inoltro dei pacchetti. A differenza di HSRP/VRRP, GLBP offre un vero bilanciamento del carico attraverso diversi meccanismi:

  • Bilanciamento del Carico Dipendente dall'Host: Mantiene l'assegnazione costante dell'indirizzo MAC AVF a un host, essenziale per configurazioni NAT stabili.
  • Bilanciamento del Carico Round-Robin: L'approccio predefinito, alternando l'assegnazione dell'indirizzo MAC AVF tra gli host richiedenti.
  • Bilanciamento del Carico Round-Robin Ponderato: Distribuisce il carico in base a metriche "Peso" predefinite.

Componenti Chiave e Terminologie in GLBP

  • AVG (Gateway Virtuale Attivo): Il router principale, responsabile dell'assegnazione degli indirizzi MAC ai router peer.
  • AVF (Inoltratore Virtuale Attivo): Un router designato per gestire il traffico di rete.
  • Priorità GLBP: Una metrica che determina l'AVG, partendo da un valore predefinito di 100 e variando tra 1 e 255.
  • Peso GLBP: Riflette il carico attuale su un router, regolabile manualmente o tramite il Tracciamento degli Oggetti.
  • Indirizzo IP Virtuale GLBP: Serve come gateway predefinito di rete per tutti i dispositivi connessi.

Per le interazioni, GLBP utilizza l'indirizzo multicast riservato 224.0.0.102 e la porta UDP 3222. I router trasmettono pacchetti "hello" a intervalli di 3 secondi e vengono considerati non operativi se un pacchetto viene perso per una durata di 10 secondi.

Meccanismo di Attacco GLBP

Un attaccante può diventare il router principale inviando un pacchetto GLBP con il valore di priorità più alto (255). Ciò può portare a attacchi DoS o MITM, consentendo l'intercettazione o il reindirizzamento del traffico.

Esecuzione di un Attacco GLBP con Loki

Loki può eseguire un attacco GLBP iniettando un pacchetto con priorità e peso impostati su 255. I passaggi pre-attacco coinvolgono la raccolta di informazioni come l'indirizzo IP virtuale, la presenza di autenticazione e i valori di priorità del router utilizzando strumenti come Wireshark.

Passaggi dell'Attacco:

  1. Passare alla modalità promiscua e abilitare l'inoltro IP.
  2. Identificare il router di destinazione e recuperare il suo IP.
  3. Generare un ARP Gratuito.
  4. Iniettare un pacchetto GLBP malintenzionato, impersonando l'AVG.
  5. Assegnare un indirizzo IP secondario all'interfaccia di rete dell'attaccante, riflettendo l'IP virtuale GLBP.
  6. Implementare SNAT per una visibilità completa del traffico.
  7. Regolare il routing per garantire un accesso continuo a Internet attraverso il router AVG originale.

Seguendo questi passaggi, l'attaccante si posiziona come "uomo nel mezzo", in grado di intercettare e analizzare il traffico di rete, inclusi dati non crittografati o sensibili.

Per dimostrazione, ecco i frammenti di comando richiesti:

# Enable promiscuous mode and IP forwarding
sudo ip link set eth0 promisc on
sudo sysctl -w net.ipv4.ip_forward=1

# Configure secondary IP and SNAT
sudo ifconfig eth0:1 10.10.100.254 netmask 255.255.255.0
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# Adjust routing
sudo route del default
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100

Spiegazione passiva dell'intercettazione HSRP con dettagli sui comandi

Panoramica di HSRP (Hot Standby Router/Redundancy Protocol)

HSRP è un protocollo proprietario di Cisco progettato per la ridondanza del gateway di rete. Consente la configurazione di più router fisici in un'unica unità logica con un indirizzo IP condiviso. Questa unità logica è gestita da un router primario responsabile del reindirizzamento del traffico. A differenza di GLBP, che utilizza metriche come priorità e peso per il bilanciamento del carico, HSRP si basa su un singolo router attivo per la gestione del traffico.

Ruoli e terminologia in HSRP

  • Router attivo HSRP: Il dispositivo che funge da gateway, gestendo il flusso di traffico.
  • Router standby HSRP: Un router di backup, pronto a prendere il controllo se il router attivo fallisce.
  • Gruppo HSRP: Un insieme di router che collaborano per formare un singolo router virtuale resiliente.
  • Indirizzo MAC HSRP: Un indirizzo MAC virtuale assegnato al router logico nella configurazione HSRP.
  • Indirizzo IP virtuale HSRP: L'indirizzo IP virtuale del gruppo HSRP, che funge da gateway predefinito per i dispositivi connessi.

Versioni di HSRP

HSRP ha due versioni, HSRPv1 e HSRPv2, che differiscono principalmente per capacità di gruppo, utilizzo di IP multicast e struttura dell'indirizzo MAC virtuale. Il protocollo utilizza specifici indirizzi IP multicast per lo scambio di informazioni di servizio, con pacchetti Hello inviati ogni 3 secondi. Un router è considerato inattivo se non riceve alcun pacchetto entro un intervallo di 10 secondi.

Meccanismo di attacco HSRP

Gli attacchi HSRP coinvolgono il prendere il controllo del ruolo del Router attivo iniettando un valore di priorità massimo. Ciò può portare a un attacco Man-In-The-Middle (MITM). I passaggi essenziali prima dell'attacco includono la raccolta di dati sulla configurazione HSRP, che può essere fatta utilizzando Wireshark per l'analisi del traffico.

Passaggi per aggirare l'autenticazione HSRP

  1. Salvare il traffico di rete contenente i dati HSRP in un file .pcap.
tcpdump -w hsrp_traffic.pcap
  1. Estrarre gli hash MD5 dal file .pcap utilizzando hsrp2john.py.
python2 hsrp2john.py hsrp_traffic.pcap > hsrp_hashes
  1. Craccare gli hash MD5 utilizzando John the Ripper.
john --wordlist=mywordlist.txt hsrp_hashes

Esecuzione dell'iniezione HSRP con Loki

  1. Avviare Loki per identificare le pubblicità HSRP.
  2. Impostare l'interfaccia di rete in modalità promiscua e abilitare l'inoltro IP.
sudo ip link set eth0 promisc on
sudo sysctl -w net.ipv4.ip_forward=1
  1. Utilizzare Loki per mirare a un router specifico, inserire la password HSRP craccata e eseguire le configurazioni necessarie per impersonare il Router attivo.
  2. Dopo aver ottenuto il ruolo di Router attivo, configurare l'interfaccia di rete e le tabelle IP per intercettare il traffico legittimo.
sudo ifconfig eth0:1 10.10.100.254 netmask 255.255.255.0
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  1. Modificare la tabella di routing per instradare il traffico attraverso il precedente Router attivo.
sudo route del default
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100
  1. Utilizzare net-creds.py o un'utilità simile per catturare le credenziali dal traffico intercettato.
sudo python2 net-creds.py -i eth0

L'esecuzione di questi passaggi mette l'attaccante in una posizione per intercettare e manipolare il traffico, simile alla procedura per l'intercettazione di GLBP. Ciò evidenzia la vulnerabilità nei protocolli di ridondanza come HSRP e la necessità di misure di sicurezza robuste.