mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-19 01:24:50 +00:00
149 lines
10 KiB
Markdown
149 lines
10 KiB
Markdown
# Ataques GLBP & HSRP
|
|
|
|
<details>
|
|
|
|
<summary><strong>Aprenda hacking no AWS do zero ao herói com</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Outras formas de apoiar o HackTricks:
|
|
|
|
* Se você quer ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
|
* Adquira o [**material oficial PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
|
|
* **Junte-se ao grupo** 💬 [**Discord**](https://discord.gg/hRep4RUj7f) ou ao grupo [**telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
|
* **Compartilhe suas técnicas de hacking enviando PRs para os repositórios github** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|
|
|
|
|
|
## Visão Geral do Sequestro de FHRP
|
|
|
|
### Entendendo FHRP
|
|
First Hop Redundancy Protocol (FHRP) é um conjunto de protocolos que garante a resiliência da rede combinando múltiplos 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 (Gateway Load Balancing Protocol) opera no topo da pilha TCP/IP, utilizando 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 múltiplos 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 do AVF, preservando configurações de NAT.
|
|
- **Round-Robin:** O modo padrão onde os endereços MAC do AVF são distribuídos alternadamente.
|
|
- **Round-Robin Baseado em Peso:** Balanceia a carga com base em uma métrica de "Peso" pré-definida.
|
|
|
|
### Papéis e Terminologia do Domínio GLBP
|
|
- **AVG (Active Virtual Gateway):** O roteador primário, distribuindo endereços MAC para outros roteadores.
|
|
- **AVF (Active Virtual Forwarder):** Um roteador que lida com o tráfego de rede.
|
|
- **Prioridade GLBP:** Decide o AVG, com um padrão de 100 e variação de 1 a 255.
|
|
- **Peso GLBP:** Indica o nível de carga do roteador, ajustável manualmente ou via Object Tracking.
|
|
- **Endereço IP Virtual GLBP:** Atua como 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 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 primário 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 do tráfego.
|
|
|
|
### Executando um Ataque GLBP com Loki
|
|
[Loki](https://github.com/raizo62/loki_on_kali) pode realizar um ataque GLBP injetando um pacote com prioridade e peso definidos para 255. As etapas pré-ataque envolvem coletar informações como o endereço IP virtual, presença de autenticação e valores de prioridade do roteador usando ferramentas como o Wireshark.
|
|
|
|
Etapas do Ataque:
|
|
1. Mude para o modo promíscuo e habilite o encaminhamento de IP.
|
|
2. Identifique o roteador alvo e recupere seu IP.
|
|
3. Gere um ARP Gratuito.
|
|
4. Injete um pacote GLBP malicioso, se passando pelo AVG.
|
|
5. Atribua um endereço IP secundário à interface de rede do atacante, espelhando o IP virtual GLBP.
|
|
6. Implemente SNAT para visibilidade completa do tráfego.
|
|
7. Ajuste o roteamento para garantir o acesso contínuo à internet através do roteador AVG original.
|
|
|
|
Seguindo essas etapas, 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 comandos necessários:
|
|
```bash
|
|
# 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
|
|
```
|
|
Monitoramento e interceptação de tráfego podem ser realizados usando net-creds.py ou ferramentas similares para capturar e analisar dados que fluem através da rede comprometida.
|
|
|
|
### Explicação Passiva do Sequestro de HSRP com Detalhes de Comandos
|
|
|
|
#### Visão Geral do HSRP (Hot Standby Router/Redundancy Protocol)
|
|
HSRP é um protocolo proprietário da Cisco projetado para redundância de gateway de rede. Ele permite a configuração de múltiplos roteadores físicos em uma única unidade lógica com um endereço IP compartilhado. Esta 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, HSRP depende de um único roteador ativo para gerenciamento de tráfego.
|
|
|
|
#### Papéis e Terminologia no HSRP
|
|
- **HSRP Active Router**: O dispositivo atuando como gateway, gerenciando o fluxo de tráfego.
|
|
- **HSRP Standby Router**: Um roteador de backup, pronto para assumir se o roteador ativo falhar.
|
|
- **HSRP Group**: Um conjunto de roteadores colaborando para formar um único roteador virtual resiliente.
|
|
- **HSRP MAC Address**: Um endereço MAC virtual atribuído ao roteador lógico na configuração do HSRP.
|
|
- **HSRP Virtual IP Address**: O endereço IP virtual do grupo HSRP, atuando como gateway padrão para dispositivos conectados.
|
|
|
|
#### Versões do HSRP
|
|
HSRP vem em duas versões, HSRPv1 e HSRPv2, diferindo principalmente na capacidade do grupo, uso de IP multicast e estrutura do endereço MAC virtual. O protocolo utiliza endereços IP multicast específicos para troca de informações de serviço, com pacotes Hello enviados a cada 3 segundos. Um roteador é presumido inativo se nenhum pacote for recebido dentro de um intervalo de 10 segundos.
|
|
|
|
#### Mecanismo de Ataque ao HSRP
|
|
Ataques ao HSRP envolvem tomar à força o papel do Roteador Ativo injetando um valor de prioridade máximo. Isso pode levar a um ataque Man-In-The-Middle (MITM). Passos pré-ataque essenciais incluem coletar dados sobre a configuração do HSRP, o que pode ser feito usando Wireshark para análise de tráfego.
|
|
|
|
#### Passos para Bypassar a Autenticação do HSRP
|
|
1. Salve o tráfego de rede contendo dados do HSRP como um arquivo .pcap.
|
|
```shell
|
|
tcpdump -w hsrp_traffic.pcap
|
|
```
|
|
2. Extraia hashes MD5 do arquivo .pcap usando hsrp2john.py.
|
|
```shell
|
|
python2 hsrp2john.py hsrp_traffic.pcap > hsrp_hashes
|
|
```
|
|
3. Quebre os hashes MD5 usando John the Ripper.
|
|
```shell
|
|
john --wordlist=mywordlist.txt hsrp_hashes
|
|
```
|
|
|
|
**Executando Injeção de HSRP com Loki**
|
|
|
|
1. Inicie o Loki para identificar anúncios de HSRP.
|
|
2. Defina a interface de rede para modo promíscuo e habilite o encaminhamento de IP.
|
|
```shell
|
|
sudo ip link set eth0 promisc on
|
|
sudo sysctl -w net.ipv4.ip_forward=1
|
|
```
|
|
3. Use o Loki para mirar no roteador específico, insira a senha HSRP quebrada e realize as configurações necessárias para se passar pelo Roteador Ativo.
|
|
4. Após ganhar o papel de Roteador Ativo, configure sua interface de rede e tabelas IP para interceptar o tráfego legítimo.
|
|
```shell
|
|
sudo ifconfig eth0:1 10.10.100.254 netmask 255.255.255.0
|
|
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
|
|
```
|
|
5. Modifique a tabela de roteamento para direcionar o tráfego através do antigo Roteador Ativo.
|
|
```shell
|
|
sudo route del default
|
|
sudo route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.10.100.100
|
|
```
|
|
6. Use net-creds.py ou uma utilidade similar para capturar credenciais do tráfego interceptado.
|
|
```shell
|
|
sudo python2 net-creds.py -i eth0
|
|
```
|
|
|
|
Executar esses passos coloca o atacante em posição de interceptar e manipular o tráfego, de maneira similar ao procedimento para 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
|
|
- [https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9](https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9)
|
|
|
|
<details>
|
|
|
|
<summary><strong>Aprenda hacking no AWS do zero ao herói com</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Outras maneiras de apoiar o HackTricks:
|
|
|
|
* Se você quiser ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
|
* Adquira o [**material oficial do PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
|
|
* **Junte-se ao grupo** 💬 [**Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
|
* **Compartilhe suas dicas de hacking enviando PRs para os repositórios do GitHub** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|