# Roteador

### O que é?

O roteador é um dispositivo de interconexão que opera na **Camada 3 (Rede)** do modelo OSI. Diferente do switch, que conecta dispositivos em uma mesma rede local (LAN), o roteador é responsável por conectar redes diferentes entre si (ex: sua LAN com a Internet).

### Para que serve?

Sua função é determinar a melhor rota para que um pacote de dados saia de uma rede de origem e chegue a uma rede de destino. Ele serve como o **Gateway Padrão** de uma rede, atuando como o ponto de saída para qualquer tráfego que não seja local.

### Como funciona?

O funcionamento do roteador baseia-se na **Tabela de Roteamento**:

1. **Recebimento:** O roteador recebe um pacote e analisa o endereço IP de destino.
2. **Consulta:** Ele verifica sua Tabela de Roteamento para encontrar uma entrada que corresponda à rede de destino.
3. **Encaminhamento (Forwarding):** Se encontrar uma rota, ele encaminha o pacote para a interface de saída correspondente ou para o "próximo salto" (Next Hop).
4. **Descarte:** Se não houver uma rota correspondente e nem um *Gateway of Last Resort* (Rota Padrão) configurado, o pacote é descartado e uma mensagem ICMP "Destination Unreachable" é enviada à origem.

### Por que funciona?

Funciona porque o roteador utiliza protocolos de comunicação e algoritmos de busca para manter um mapa das redes conectadas. Ele não se importa com o endereço físico (MAC) final até o último salto; ele se preocupa com a **hierarquia de endereçamento IP**, o que permite que a internet escale globalmente sem que cada dispositivo precise conhecer o endereço de todos os outros.

***

## Componentes e Funções Críticas

#### 1. Gateway Padrão (Default Gateway)

É o endereço IP do roteador na rede local. Todos os dispositivos da LAN enviam para este endereço qualquer pacote destinado a uma rede externa. No Pentest, o Gateway é o alvo principal para ataques de **Man-in-the-Middle**.

#### 2. NAT (Network Address Translation)

Como os IPs públicos são escassos, o roteador usa o NAT para traduzir múltiplos IPs privados da rede interna em um único IP público.

* **Implicação de Segurança:** O NAT atua como uma barreira inicial, impedindo que dispositivos externos iniciem conexões diretas com máquinas internas (a menos que haja Port Forwarding).

#### 3. Tabelas de Roteamento (Estática vs Dinâmica)

* **Estática:** Definida manualmente pelo administrador.
* **Dinâmica:** O roteador "aprende" rotas falando com outros roteadores através de protocolos como **OSPF, BGP ou RIP**.

***

## Roteadores no Cenário de Pentest

Para um atacante, o roteador é o "ponto de estrangulamento" da rede. Se o roteador for comprometido, toda a segurança das camadas inferiores (VLANs, Switches) pode ser anulada.

#### Possíveis Ataques:

1. **DoS (Denial of Service):** Inundar a tabela de roteamento ou processamento do roteador para derrubar a conectividade de toda a empresa.
2. **Route Poisoning (Injeção de Rota):** Enviar atualizações de roteamento falsas para fazer o roteador enviar o tráfego da empresa para um servidor controlado pelo atacante.
3. **Exploração de Serviços de Gerência:** Muitos roteadores deixam interfaces Web, Telnet ou SSH expostas com credenciais padrão (`admin:admin`).
4. **DNS Hijacking:** Se o atacante alterar as configurações de DNS no roteador, ele pode redirecionar todos os usuários da rede para sites de phishing sem precisar tocar nos computadores das vítimas.

***

## Modelos de Roteadores

### O que é?

Os roteadores são classificados de acordo com sua posição na topologia da rede e sua capacidade de processamento de pacotes. Eles variam desde dispositivos de consumo simples até infraestruturas críticas que sustentam a internet global.

### Para que serve?

* **SOHO (Small Office/Home Office):** Serve para conectar residências e pequenas empresas à internet. Integra Wi-Fi, Switch e Roteador em um só hardware (Também conhecido como 3 em 1).
* **Enterprise (Corporativo):** Serve para conectar filiais a sedes (VPNs) e gerenciar grandes volumes de dados internos com alta segurança.
* **Core/Edge (Borda):** Serve para interconectar diferentes Provedores de Internet (ISPs) e gerenciar as tabelas de roteamento globais.

### Como funciona?

* **Roteadores de Software (SOHO/Domésticos):** Funcionam baseados em uma CPU de propósito geral e um sistema operacional simplificado (geralmente Linux customizado). O roteamento é feito via software, o que limita a velocidade, mas permite muitas funções extras (Firewall, Parental Control, USB Sharing).
* **Roteadores de Hardware (Enterprise/Core):** Utilizam **ASICs** e **NPUs (Network Processing Units)** dedicados. O processamento de pacotes não passa pela CPU principal; o hardware "sabe" para onde enviar o bit assim que ele entra no conector.
* **Roteadores Virtuais (vRouter):** Funcionam como instâncias dentro de nuvens (AWS/Azure) ou hipervisores. Eles emulam o comportamento do hardware para gerenciar o tráfego de máquinas virtuais.

### Por que funciona?

Funciona devido à especialização do plano de controle (**Control Plane**) e do plano de dados (**Data Plane**). Em modelos menores, esses planos compartilham os mesmos recursos. Em modelos de grande porte, eles são fisicamente separados: se a CPU do roteador travar por excesso de acessos (DoS no plano de controle), o tráfego de dados continua passando normalmente pelo hardware.

***

#### Comparativo para Pentesters

| Categoria      | Exemplo de Hardware      | SO Comum          | Vetor de Ataque Comum                    |
| -------------- | ------------------------ | ----------------- | ---------------------------------------- |
| **SOHO**       | TP-Link, D-Link, Netgear | BusyBox / OpenWrt | Vulnerabilidades Web, UPnP, WPS          |
| **Enterprise** | Cisco ISR, Juniper SRX   | IOS, Junos OS     | Túneis VPN mal configurados, SNMP        |
| **Core/ISP**   | Cisco ASR, Huawei NE     | IOS-XR, VRP       | Sequestro de BGP, DDoS de infraestrutura |
| **Virtuais**   | VyOS, Cisco CSR1000v     | Linux-based       | Escalação de privilégio no Hipervisor    |

***

## Conceitos Avançados: ICMP, TTL e ACL

### O que é?

* **ICMP (Internet Control Message Protocol):** Um protocolo auxiliar da Camada 3 utilizado para enviar mensagens de erro e informações operacionais (ex: "Host inalcançável").
* **TTL (Time to Live):** Um campo de 8 bits no cabeçalho do pacote IPv4 que define o "tempo de vida" do pacote em termos de saltos (hops).
* **ACL (Access Control List):** Filtros aplicados nas interfaces do roteador para permitir ou negar pacotes.

### Para que serve?

No cenário de infraestrutura e pentest:

1. **TTL:** Serve para evitar que um pacote fique circulando eternamente na internet em caso de loop de roteamento.
2. **ICMP:** Serve para diagnosticar a rede. O comando `ping` usa ICMP Echo, e o `traceroute` usa as mensagens de erro ICMP geradas pelo limite de TTL.
3. **ACL:** Serve para blindar o roteador, impedindo que scanners externos mapeiem a rede interna através de ICMP.

### Como funciona?

A interação entre esses três elementos é o que permite o mapeamento de uma rede:

1. **Decremento do TTL:** Toda vez que um pacote passa por um roteador, o valor do TTL é subtraído em **1**.
2. **TTL Exceeded:** Se o TTL chegar a **0**, o roteador descarta o pacote e envia uma mensagem **ICMP Type 11 (Time Exceeded)** de volta para a origem. É assim que o `traceroute` descobre cada salto do caminho.
3. **Intervenção da ACL:** Se houver uma ACL no roteador configurada como `deny icmp any any`, o roteador ainda descartará o pacote com TTL 0, mas **não enviará** a resposta ICMP de volta. Para o atacante, o alvo parecerá "morto" ou invisível.

### Por que funciona?

Funciona porque o cabeçalho IP é padronizado. O roteador é obrigado por norma (RFC 792) a processar o TTL e, por padrão, reportar erros via ICMP. A ACL funciona como uma "interrupção" nesse processo: ela é consultada antes do processador do roteador gerar a resposta ICMP, permitindo que o administrador silencie o dispositivo.

***

#### Comportamento em Pentest (Reconhecimento)

| Técnica                    | Mecanismo                                                | Resposta Esperada                                                         |
| -------------------------- | -------------------------------------------------------- | ------------------------------------------------------------------------- |
| **Traceroute**             | Envia pacotes com TTL incremental (1, 2, 3...)           | Receber ICMP Type 11 de cada roteador no caminho.                         |
| **OS Fingerprinting**      | Analisa o valor inicial do TTL (Windows: 128, Linux: 64) | Identificar o SO do alvo sem invasão, apenas pelo TTL inicial.            |
| **Firewall/ACL Detection** | Envia pacotes para portas específicas                    | Se receber `ICMP Type 3 (Destination Unreachable)`, há uma ACL filtrando. |

***

#### Exemplo de Configuração de Segurança (ACL para ICMP)

Para evitar que sua rede seja mapeada por estranhos, configura-se o roteador para ignorar solicitações de eco e ocultar o TTL:

```bash
# Bloqueia PING (Echo Request) vindo da Internet
access-list 105 deny icmp any any echo
# Bloqueia mensagens de destino inalcançável (evita revelar topologia)
access-list 105 deny icmp any any unreachable
# Permite o restante do tráfego IP
access-list 105 permit ip any any

interface GigabitEthernet0/0
 ip access-group 105 in
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://0xmorte.gitbook.io/bibliadopentestbr/conceitos/redes/dispositivos-de-rede/roteador.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
