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

9.2 KiB

Ataques GLBP & HSRP

{% hint style="success" %} Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)

Apoya a HackTricks
{% endhint %}

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

Descripción general del secuestro de FHRP

Información sobre FHRP

FHRP está diseñado para proporcionar robustez a la red al fusionar múltiples enrutadores en una única unidad virtual, mejorando así la distribución de carga y la tolerancia a fallos. Cisco Systems introdujo protocolos destacados en esta suite, como GLBP y HSRP.

Información del Protocolo GLBP

La creación de Cisco, GLBP, funciona en la pila TCP/IP, utilizando UDP en el puerto 3222 para la comunicación. Los enrutadores en un grupo GLBP intercambian paquetes "hello" en intervalos de 3 segundos. Si un enrutador no envía estos paquetes durante 10 segundos, se presume que está fuera de línea. Sin embargo, estos temporizadores no son fijos y pueden ser modificados.

Operaciones y Distribución de Carga de GLBP

GLBP se destaca al permitir la distribución de carga entre enrutadores utilizando una única IP virtual junto con múltiples direcciones MAC virtuales. En un grupo GLBP, cada enrutador participa en el reenvío de paquetes. A diferencia de HSRP/VRRP, GLBP ofrece un equilibrio de carga genuino a través de varios mecanismos:

  • Equilibrio de Carga Dependiente del Host: Mantiene la asignación de direcciones MAC AVF consistente a un host, esencial para configuraciones NAT estables.
  • Equilibrio de Carga Round-Robin: El enfoque predeterminado, alternando la asignación de direcciones MAC AVF entre los hosts solicitantes.
  • Equilibrio de Carga Round-Robin Ponderado: Distribuye la carga en función de métricas de "Peso" predefinidas.

Componentes Clave y Terminología en GLBP

  • AVG (Puerta de enlace virtual activa): El enrutador principal, responsable de asignar direcciones MAC a los enrutadores pares.
  • AVF (Reenviador virtual activo): Un enrutador designado para gestionar el tráfico de red.
  • Prioridad GLBP: Una métrica que determina el AVG, comenzando en un valor predeterminado de 100 y variando entre 1 y 255.
  • Peso GLBP: Refleja la carga actual en un enrutador, ajustable manualmente o a través del Seguimiento de Objetos.
  • Dirección IP Virtual GLBP: Sirve como puerta de enlace predeterminada de la red para todos los dispositivos conectados.

Para las interacciones, GLBP utiliza la dirección multicast reservada 224.0.0.102 y el puerto UDP 3222. Los enrutadores transmiten paquetes "hello" en intervalos de 3 segundos, y se consideran no operativos si se pierde un paquete durante un período de 10 segundos.

Mecanismo de Ataque GLBP

Un atacante puede convertirse en el enrutador principal enviando un paquete GLBP con el valor de prioridad más alto (255). Esto puede llevar a ataques de DoS o MITM, permitiendo la interceptación o redirección del tráfico.

Ejecución de un Ataque GLBP con Loki

Loki puede realizar un ataque GLBP inyectando un paquete con prioridad y peso establecidos en 255. Los pasos previos al ataque implican recopilar información como la dirección IP virtual, la presencia de autenticación y los valores de prioridad del enrutador utilizando herramientas como Wireshark.

Pasos del Ataque:

  1. Cambiar a modo promiscuo y habilitar el reenvío de IP.
  2. Identificar el enrutador objetivo y recuperar su IP.
  3. Generar un ARP Gratuito.
  4. Inyectar un paquete GLBP malicioso, suplantando al AVG.
  5. Asignar una dirección IP secundaria a la interfaz de red del atacante, reflejando la IP virtual de GLBP.
  6. Implementar SNAT para una visibilidad completa del tráfico.
  7. Ajustar el enrutamiento para garantizar el acceso continuo a Internet a través del enrutador AVG original.

Siguiendo estos pasos, el atacante se posiciona como un "hombre en el medio", capaz de interceptar y analizar el tráfico de red, incluidos datos no cifrados o sensibles.

Para fines de demostración, aquí están los fragmentos de comando requeridos:

# 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

Explicación Pasiva del Secuestro de HSRP con Detalles de Comandos

Descripción General de HSRP (Protocolo de Router en Espera/Redundancia)

HSRP es un protocolo propietario de Cisco diseñado para la redundancia de la puerta de enlace de red. Permite la configuración de múltiples routers físicos en una unidad lógica única con una dirección IP compartida. Esta unidad lógica es gestionada por un router principal responsable de dirigir el tráfico. A diferencia de GLBP, que utiliza métricas como prioridad y peso para el equilibrio de carga, HSRP se basa en un único router activo para la gestión del tráfico.

Roles y Terminología en HSRP

  • Router Activo de HSRP: El dispositivo que actúa como la puerta de enlace, gestionando el flujo de tráfico.
  • Router en Espera de HSRP: Un router de respaldo, listo para tomar el control si el router activo falla.
  • Grupo de HSRP: Un conjunto de routers que colaboran para formar un único router virtual resistente.
  • Dirección MAC de HSRP: Una dirección MAC virtual asignada al router lógico en la configuración de HSRP.
  • Dirección IP Virtual de HSRP: La dirección IP virtual del grupo de HSRP, actuando como la puerta de enlace predeterminada para los dispositivos conectados.

Versiones de HSRP

HSRP viene en dos versiones, HSRPv1 y HSRPv2, difiriendo principalmente en capacidad de grupo, uso de IP multicast y estructura de dirección MAC virtual. El protocolo utiliza direcciones IP multicast específicas para el intercambio de información de servicio, con paquetes Hello enviados cada 3 segundos. Se presume que un router está inactivo si no se recibe ningún paquete dentro de un intervalo de 10 segundos.

Mecanismo de Ataque de HSRP

Los ataques de HSRP implican tomar el rol del Router Activo de forma forzada mediante la inyección de un valor de prioridad máximo. Esto puede llevar a un ataque de Hombre en el Medio (MITM). Los pasos esenciales previos al ataque incluyen recopilar datos sobre la configuración de HSRP, lo cual se puede hacer utilizando Wireshark para el análisis de tráfico.

Pasos para Evadir la Autenticación de HSRP

  1. Guardar el tráfico de red que contiene datos de HSRP en un archivo .pcap.
tcpdump -w hsrp_traffic.pcap
  1. Extraer los hashes MD5 del archivo .pcap utilizando hsrp2john.py.
python2 hsrp2john.py hsrp_traffic.pcap > hsrp_hashes
  1. Descifrar los hashes MD5 utilizando John the Ripper.
john --wordlist=mywordlist.txt hsrp_hashes

Ejecutando la Inyección de HSRP con Loki

  1. Iniciar Loki para identificar los anuncios de HSRP.
  2. Configurar la interfaz de red en modo promiscuo y habilitar el reenvío de IP.
sudo ip link set eth0 promisc on
sudo sysctl -w net.ipv4.ip_forward=1
  1. Utilizar Loki para apuntar al router específico, ingresar la contraseña de HSRP descifrada y realizar las configuraciones necesarias para hacerse pasar por el Router Activo.
  2. Después de obtener el rol del Router Activo, configurar la interfaz de red y las tablas IP para interceptar el tráfico legítimo.
sudo ifconfig eth0:1 10.10.100.254 netmask 255.255.255.0
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  1. Modificar la tabla de enrutamiento para dirigir el tráfico a través del antiguo Router Activo.
sudo route del default
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100
  1. Utilizar net-creds.py o una utilidad similar para capturar credenciales del tráfico interceptado.
sudo python2 net-creds.py -i eth0

Al ejecutar estos pasos, el atacante se coloca en una posición para interceptar y manipular el tráfico, similar al procedimiento para el secuestro de GLBP. Esto resalta la vulnerabilidad en protocolos de redundancia como HSRP y la necesidad de medidas de seguridad robustas.