GLBP & HSRP Attacks

Tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE) Apprenez et pratiquez le hacking Azure : HackTricks Training Azure Red Team Expert (AzRTE)

Soutenir HackTricks

FHRP Hijacking Overview

Insights into FHRP

FHRP est conçu pour fournir une robustesse réseau en fusionnant plusieurs routeurs en une seule unité virtuelle, améliorant ainsi la distribution de charge et la tolérance aux pannes. Cisco Systems a introduit des protocoles importants dans cette suite, tels que GLBP et HSRP.

GLBP Protocol Insights

La création de Cisco, GLBP, fonctionne sur la pile TCP/IP, utilisant UDP sur le port 3222 pour la communication. Les routeurs dans un groupe GLBP échangent des paquets “hello” à des intervalles de 3 secondes. Si un routeur ne parvient pas à envoyer ces paquets pendant 10 secondes, il est présumé hors ligne. Cependant, ces minuteries ne sont pas fixes et peuvent être modifiées.

GLBP Operations and Load Distribution

GLBP se distingue en permettant la distribution de charge entre les routeurs en utilisant une seule IP virtuelle couplée à plusieurs adresses MAC virtuelles. Dans un groupe GLBP, chaque routeur participe au transfert de paquets. Contrairement à HSRP/VRRP, GLBP offre un véritable équilibrage de charge grâce à plusieurs mécanismes :

  • Host-Dependent Load Balancing : Maintient une attribution cohérente de l’adresse MAC AVF à un hôte, essentielle pour des configurations NAT stables.
  • Round-Robin Load Balancing : L’approche par défaut, alternant l’attribution de l’adresse MAC AVF entre les hôtes demandeurs.
  • Weighted Round-Robin Load Balancing : Distribue la charge en fonction de métriques de “Poids” prédéfinies.

Key Components and Terminologies in GLBP

  • AVG (Active Virtual Gateway) : Le routeur principal, responsable de l’attribution des adresses MAC aux routeurs pairs.
  • AVF (Active Virtual Forwarder) : Un routeur désigné pour gérer le trafic réseau.
  • GLBP Priority : Une métrique qui détermine l’AVG, commençant à un défaut de 100 et variant entre 1 et 255.
  • GLBP Weight : Reflète la charge actuelle sur un routeur, ajustable manuellement ou par le biais de l’Object Tracking.
  • GLBP Virtual IP Address : Sert de passerelle par défaut du réseau pour tous les appareils connectés.

Pour les interactions, GLBP utilise l’adresse multicast réservée 224.0.0.102 et le port UDP 3222. Les routeurs transmettent des paquets “hello” à des intervalles de 3 secondes et sont considérés comme non opérationnels si un paquet est manqué pendant une durée de 10 secondes.

GLBP Attack Mechanism

Un attaquant peut devenir le routeur principal en envoyant un paquet GLBP avec la valeur de priorité la plus élevée (255). Cela peut conduire à des attaques DoS ou MITM, permettant l’interception ou la redirection du trafic.

Executing a GLBP Attack with Loki

Loki peut effectuer une attaque GLBP en injectant un paquet avec la priorité et le poids réglés à 255. Les étapes pré-attaque impliquent de rassembler des informations telles que l’adresse IP virtuelle, la présence d’authentification et les valeurs de priorité des routeurs à l’aide d’outils comme Wireshark.

Attack Steps:

  1. Passer en mode promiscuous et activer le transfert IP.
  2. Identifier le routeur cible et récupérer son IP.
  3. Générer un ARP Gratuit.
  4. Injecter un paquet GLBP malveillant, en imitant l’AVG.
  5. Attribuer une adresse IP secondaire à l’interface réseau de l’attaquant, en miroir de l’IP virtuelle GLBP.
  6. Implémenter SNAT pour une visibilité complète du trafic.
  7. Ajuster le routage pour garantir un accès Internet continu via le routeur AVG d’origine.

En suivant ces étapes, l’attaquant se positionne comme un “homme du milieu”, capable d’intercepter et d’analyser le trafic réseau, y compris les données non chiffrées ou sensibles.

Pour la démonstration, voici les extraits de commande requis :

# 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

Surveiller et intercepter le trafic peut être fait en utilisant net-creds.py ou des outils similaires pour capturer et analyser les données circulant à travers le réseau compromis.

Explication passive du détournement HSRP avec détails de commande

Aperçu de HSRP (Hot Standby Router/Redundancy Protocol)

HSRP est un protocole propriétaire de Cisco conçu pour la redondance des passerelles réseau. Il permet la configuration de plusieurs routeurs physiques en une seule unité logique avec une adresse IP partagée. Cette unité logique est gérée par un routeur principal responsable de la direction du trafic. Contrairement à GLBP, qui utilise des métriques comme la priorité et le poids pour l’équilibrage de charge, HSRP repose sur un seul routeur actif pour la gestion du trafic.

Rôles et terminologie dans HSRP

  • Routeur actif HSRP : L’appareil agissant comme passerelle, gérant le flux de trafic.
  • Routeur de secours HSRP : Un routeur de sauvegarde, prêt à prendre le relais si le routeur actif échoue.
  • Groupe HSRP : Un ensemble de routeurs collaborant pour former un seul routeur virtuel résilient.
  • Adresse MAC HSRP : Une adresse MAC virtuelle assignée au routeur logique dans la configuration HSRP.
  • Adresse IP virtuelle HSRP : L’adresse IP virtuelle du groupe HSRP, agissant comme la passerelle par défaut pour les appareils connectés.

Versions HSRP

HSRP existe en deux versions, HSRPv1 et HSRPv2, se différenciant principalement par la capacité de groupe, l’utilisation d’IP multicast et la structure de l’adresse MAC virtuelle. Le protocole utilise des adresses IP multicast spécifiques pour l’échange d’informations de service, avec des paquets Hello envoyés toutes les 3 secondes. Un routeur est présumé inactif si aucun paquet n’est reçu dans un intervalle de 10 secondes.

Mécanisme d’attaque HSRP

Les attaques HSRP impliquent de prendre de force le rôle du routeur actif en injectant une valeur de priorité maximale. Cela peut conduire à une attaque Man-In-The-Middle (MITM). Les étapes essentielles avant l’attaque incluent la collecte de données sur la configuration HSRP, ce qui peut être fait en utilisant Wireshark pour l’analyse du trafic.

Étapes pour contourner l’authentification HSRP

  1. Enregistrez le trafic réseau contenant des données HSRP sous forme de fichier .pcap.
tcpdump -w hsrp_traffic.pcap
  1. Extrayez les hachages MD5 du fichier .pcap en utilisant hsrp2john.py.
python2 hsrp2john.py hsrp_traffic.pcap > hsrp_hashes
  1. Craquez les hachages MD5 en utilisant John the Ripper.
john --wordlist=mywordlist.txt hsrp_hashes

Exécution de l’injection HSRP avec Loki

  1. Lancez Loki pour identifier les annonces HSRP.
  2. Réglez l’interface réseau en mode promiscuité et activez le transfert IP.
sudo ip link set eth0 promisc on
sudo sysctl -w net.ipv4.ip_forward=1
  1. Utilisez Loki pour cibler le routeur spécifique, saisissez le mot de passe HSRP craqué et effectuez les configurations nécessaires pour usurper le routeur actif.
  2. Après avoir obtenu le rôle de routeur actif, configurez votre interface réseau et vos tables IP pour intercepter le trafic légitime.
sudo ifconfig eth0:1 10.10.100.254 netmask 255.255.255.0
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  1. Modifiez la table de routage pour acheminer le trafic via l’ancien routeur actif.
sudo route del default
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100
  1. Utilisez net-creds.py ou un utilitaire similaire pour capturer les identifiants à partir du trafic intercepté.
sudo python2 net-creds.py -i eth0

L’exécution de ces étapes place l’attaquant dans une position pour intercepter et manipuler le trafic, similaire à la procédure de détournement GLBP. Cela met en évidence la vulnérabilité des protocoles de redondance comme HSRP et la nécessité de mesures de sécurité robustes.

Références

Tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE) Apprenez et pratiquez le hacking Azure : HackTricks Training Azure Red Team Expert (AzRTE)

Soutenir HackTricks