GLBP & HSRP Attacks

Dowiedz się, jak hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Przegląd Przechwytywania FHRP

Wgląd w FHRP

FHRP został zaprojektowany w celu zapewnienia odporności sieci poprzez połączenie wielu routerów w jednostkę wirtualną, co zwiększa dystrybucję obciążenia i tolerancję na awarie. Cisco Systems wprowadził prominentne protokoły w tej grupie, takie jak GLBP i HSRP.

Wgląd w Protokół GLBP

Stworzony przez Cisco, GLBP działa na stosie TCP/IP, wykorzystując UDP na porcie 3222 do komunikacji. Routery w grupie GLBP wymieniają pakiety "hello" co 3 sekundy. Jeśli router nie wyśle tych pakietów przez 10 sekund, uznaje się go za offline. Jednak te timery nie są stałe i mogą być modyfikowane.

Operacje i Dystrybucja Obciążenia w GLBP

GLBP wyróżnia się umożliwieniem dystrybucji obciążenia między routerami za pomocą jednego wirtualnego IP w połączeniu z wieloma wirtualnymi adresami MAC. W grupie GLBP każdy router bierze udział w przekazywaniu pakietów. W odróżnieniu od HSRP/VRRP, GLBP oferuje rzeczywiste równoważenie obciążenia poprzez kilka mechanizmów:

  • Równoważenie Obciążenia Zależne od Hosta: Zapewnia stałe przypisanie adresu MAC AVF do hosta, co jest istotne dla stabilnych konfiguracji NAT.

  • Równoważenie Obciążenia Round-Robin: Domyślne podejście, polegające na zmianie przypisania adresu MAC AVF między żądającymi hostami.

  • Równoważenie Obciążenia Ważone Round-Robin: Dystrybuuje obciążenie na podstawie zdefiniowanych metryk "Waga".

Kluczowe Składniki i Terminologia w GLBP

  • AVG (Aktywna Wirtualna Bramka): Główny router odpowiedzialny za przydzielanie adresów MAC do routerów równorzędnych.

  • AVF (Aktywny Wirtualny Przekierowujący): Router wyznaczony do zarządzania ruchem sieciowym.

  • Priorytet GLBP: Metryka określająca AVG, zaczynająca się od domyślnego wartości 100 i wahająca się od 1 do 255.

  • Waga GLBP: Odzwierciedla obecne obciążenie routera, regulowane ręcznie lub poprzez Śledzenie Obiektów.

  • Wirtualny Adres IP GLBP: Służy jako domyślna brama sieciowa dla wszystkich podłączonych urządzeń.

Do interakcji GLBP używa zarezerwowanego adresu multicastowego 224.0.0.102 i portu UDP 3222. Routery wysyłają pakiety "hello" co 3 sekundy i uważane są za nieoperacyjne, jeśli pakiet zostanie pominięty przez okres 10 sekund.

Mechanizm Ataku GLBP

Atakujący może stać się głównym routerem, wysyłając pakiet GLBP z najwyższą wartością priorytetu (255). Może to prowadzić do ataków typu DoS lub MITM, umożliwiając przechwytywanie lub przekierowywanie ruchu.

Wykonanie Ataku GLBP za pomocą Loki

Loki może przeprowadzić atak GLBP poprzez wstrzyknięcie pakietu z ustawionym priorytetem i wagą na 255. Kroki przed atakiem obejmują zbieranie informacji, takich jak wirtualny adres IP, obecność uwierzytelnienia i wartości priorytetu routera za pomocą narzędzi takich jak Wireshark.

Kroki Ataku:

  1. Przełącz się w tryb promiskuitywny i włącz przekazywanie IP.

  2. Zidentyfikuj docelowy router i pobierz jego IP.

  3. Wygeneruj ARP Gratuitous.

  4. Wstrzyknij złośliwy pakiet GLBP, podszywając się pod AVG.

  5. Przypisz drugi adres IP do interfejsu sieciowego atakującego, odzwierciedlając wirtualny adres IP GLBP.

  6. Wdroż SNAT dla pełnej widoczności ruchu.

  7. Dostosuj trasowanie, aby zapewnić ciągły dostęp do internetu poprzez oryginalny router AVG.

Śledząc te kroki, atakujący pozycjonuje się jako "człowiek pośrodku", zdolny do przechwytywania i analizowania ruchu sieciowego, w tym danych niezaszyfrowanych lub wrażliwych.

Dla celów demonstracyjnych, oto wymagane fragmenty poleceń:

# 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

Pasywne wyjaśnienie przechwytywania HSRP z szczegółami poleceń

Przegląd HSRP (Hot Standby Router/Redundancy Protocol)

HSRP to protokół własnościowy firmy Cisco zaprojektowany do zapewnienia redundancji bramy sieciowej. Umożliwia konfigurację wielu fizycznych routerów w pojedynczą jednostkę logiczną z wspólnym adresem IP. Ta jednostka logiczna jest zarządzana przez główny router odpowiedzialny za kierowanie ruchem. W przeciwieństwie do GLBP, który wykorzystuje metryki takie jak priorytet i waga do równoważenia obciążenia, HSRP polega na pojedynczym aktywnym routerze do zarządzania ruchem.

Role i Terminologia w HSRP

  • Aktywny Router HSRP: Urządzenie pełniące rolę bramy, zarządzające przepływem ruchu.

  • Rezerwowy Router HSRP: Router zapasowy, gotowy do przejęcia roli aktywnego routera w przypadku awarii.

  • Grupa HSRP: Zestaw routerów współpracujących w celu utworzenia pojedynczego, odpornego wirtualnego routera.

  • Adres MAC HSRP: Wirtualny adres MAC przypisany do routera logicznego w konfiguracji HSRP.

  • Wirtualny Adres IP HSRP: Wirtualny adres IP grupy HSRP, działający jako domyślna brama dla podłączonych urządzeń.

Wersje HSRP

HSRP występuje w dwóch wersjach, HSRPv1 i HSRPv2, różniących się głównie pojemnością grupy, użyciem adresów IP multicast oraz strukturą wirtualnego adresu MAC. Protokół wykorzystuje określone adresy IP multicast do wymiany informacji usługowych, z pakietami Hello wysyłanymi co 3 sekundy. Router jest uznawany za nieaktywny, jeśli nie otrzyma pakietu w ciągu 10 sekund.

Mechanizm Ataku HSRP

Ataki HSRP polegają na przymusowym przejęciu roli Aktywnego Routera poprzez wstrzyknięcie maksymalnej wartości priorytetu. Może to prowadzić do ataku typu Man-In-The-Middle (MITM). Istotne kroki przed atakiem obejmują zbieranie danych na temat konfiguracji HSRP, co można zrobić za pomocą Wireshark do analizy ruchu.

Kroki do obejścia uwierzytelniania HSRP

  1. Zapisz ruch sieciowy zawierający dane HSRP jako plik .pcap.

tcpdump -w hsrp_traffic.pcap
  1. Wyodrębnij hashe MD5 z pliku .pcap za pomocą hsrp2john.py.

python2 hsrp2john.py hsrp_traffic.pcap > hsrp_hashes
  1. Odszyfruj hashe MD5 za pomocą John the Ripper.

john --wordlist=mywordlist.txt hsrp_hashes

Wykonanie Wstrzyknięcia HSRP za pomocą Loki

  1. Uruchom Loki, aby zidentyfikować reklamy HSRP.

  2. Ustaw interfejs sieciowy w tryb promiskuitywny i włącz przekazywanie IP.

sudo ip link set eth0 promisc on
sudo sysctl -w net.ipv4.ip_forward=1
  1. Użyj Lokiego, aby zaatakować określony router, wprowadź odszyfrowane hasło HSRP i wykonaj niezbędne konfiguracje do podszywania się pod Aktywnego Routera.

  2. Po przejęciu roli Aktywnego Routera skonfiguruj interfejs sieciowy i tabele IP, aby przechwycić prawidłowy ruch.

sudo ifconfig eth0:1 10.10.100.254 netmask 255.255.255.0
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  1. Zmodyfikuj tabelę routingu, aby kierować ruch przez poprzedniego Aktywnego Routera.

sudo route del default
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100
  1. Użyj net-creds.py lub podobnego narzędzia do przechwytywania poświadczeń z przechwyconego ruchu.

sudo python2 net-creds.py -i eth0

Wykonanie tych kroków umieszcza atakującego w pozycji do przechwytywania i manipulowania ruchem, podobnie jak w przypadku przejęcia GLBP. Podkreśla to podatność protokołów redundancji, takich jak HSRP, oraz potrzebę solidnych środków bezpieczeństwa.

Last updated