Você está na página 1de 21

Vulnerabilidades

da Pilha TCP/IP:
Camada 3
Prof. Marcelo Veiga Neves
marcelo.neves@pucrs.br
Segurança na camada 3 (Rede)
• Até a camada 2, ataques só eram possíveis vindos
da rede interna
• Camada 3 para cima, ameaças podem vir também
da Internet
Camada de rede
• Protocolos IP, ICMP, RIP, OSPF, etc.
• Roteamento e repasse de datagramas IP entre
redes
• Implementada nos roteadores, switches L2/L3 e
sistema operacional
Principais vulnerabilidades da
camada 3
• Privacidade/confidencialidade
• Não há criptografia, por padrão, na camada (possível usar
IPSec)
• Possibilidade de "sniffar” a rede
• Autenticidade
• Possibilidade de “falsificar” quadros para enganar protocolos
• Spoofing = falsificar o remetente do pacote
• Integridade
• Possibilidade de alterar o conteúdo de pacotes envidados por
outros hosts
• Disponibilidade
• Possibilidade de derrubar um host ou até mesmo a rede toda
• Também possível deixar a rede mais lenta
Principais tipos de ataque
• Packet sniffing
• IP Spoofing (Falsificação de endereço IP)
• Routing (RIP) attacks
• Ataques ao ICMP
• Ping Flood (ICMP Flood)
• Ataque a fragmentação (Teardrop attack)
• Ataque ao Neighbor Discovery Protocol
IP Spoofing
• Falsificação do endereço IP de origem
• Pode ser utilizado para:
• Esconder a identidade de remetente
• Combinado técnicas de varredura, pode-se descobrir
endereço IP confiáveis e enviar novos pacotes em nome
desse IP
• Caso famoso: Mitnick hackeando Tsutomu
Shimomura (Takedown) em 1994
• Combinação de IP Spoofing com predição de TCP SEQ
number
• Ataque aos UNIX "r-services" (rsh, rlogin)
IP Spoofing (proteção)
• Utilização de funcionalidade de segurança
implementadas nos equipamentos switches e
roteadores
• Switches com função “IP Source Guard” restringe o
tráfego IP em portas untrusted para clientes que já
possuam IP atribuído
• Roteadores com funcionalidade Unicast Reverse Path
Forwarding (uRPF) que evita spoofing verificando as
tabelas de roteamento
Ataque ao RIP
• Routing Information Protocol (RIP)
• Distribuir informações de roteamento entre as redes
(vetor-distância)
• Anuncia as redes que estão conectadas localmente
• A versão original do RIP não suporta autenticação
• Atacante pode enviar pacotes RIP forjados para
modificar as rotas
• Exemplo: fazer o tráfego passar pelo computador do
atacante
Formato pacote RIP

• Command: 1 para request, 2 para response


• Version: 1 para RIPv1, 2 para RIPv2
• AFI (Address Family ID): 2 para IP
• Até 25 entradas de rotas
Ataque ao RIP (proteção)
• A partir da versão 2 do RIP, existe a possibilidade de
configurar autenticação simples por senha
• Problema: como não é obrigatório, muitos
administradores de rede simplesmente ignoram essa
opção
• Possibilidade de configurar IPSec VPN para
comunicação entre os roteadores
ICMP Flood
• ICMP/ping Flood
• Envio de ICMP echo request a uma taxa muito alta para
sobrecarregar um host alvo (pode ser potencializado se
o ataque for distribuído)

• ICMP é enviado sempre para o host de origem


• O IP do host de origem pode facilmente ser falsificado
• Um atacante pode espalhar pacotes que gerem uma
mensagem "ICMP Destination Unreachable” pela rede,
causando uma inundação host de origem falsificado
ICMP Flood (proteção)
• Desabilitar o suporte a ICMP em servidores,
roteadores ou bloquear via firewall
• Exemplo no Linux :
• echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
• Caso seja necessário ter a funcionalidades de ICMP,
é possível limitar a taxa máxima de resposta
• Pode ser configurado nos hosts ou no roteador
• Exemplo no Linux :
• echo 10 > /proc/sys/net/ipv4/icmp_ratelimit
ICMP Redirect
• Mensagem ICMP que avisa um host sobre a
existência de uma rota melhor para um destino
• Útil em algumas topologias com múltiplos roteadores e
redes internas
• Pode ser explorado para alterar o ”default gateway”
de um host alvo
• Implementar um ataque do tipo man-in-the-middle
• Derrubar um host da rede
ICMP Redirect
• Mudança de gateway usando ICMP redirect

Imagem: http://www.brainwork.com.br/2009/11/16/o-que-icmp-redirects/
Pacote ICMP Redirect
• Type
• 5 - redirect
• Code:
• Código que especifica a razão do redirecionamento
• IP Address: endereço do novo gateway
ICMP Redirect (proteção)
• Desabilitar o suporte a ICMP redirect em
roteadores e hosts
• Exemplo no Linux :
• echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirect
• Utilizar equipamentos de rede que bloqueiam
mensagem ICMP redirect vindas de portas não
confiáveis
Outros usos do ICMP
• Possibilidade de descobrir/mapear toda a topologia
de uma rede
• Envio de ICMP echo request para descobrir hosts ativos
• Enviado de pacotes IP com TTL variável para descobrir
roteadores intermediários (recebe ICMP de erro como
resposta)
• Uso de ICMP timestamp para descobrir o
horário/relógio de computadores alvo
• Pode ser usado explorar vulnerabilidades em aplicações
que usam o tempo do sistema como semente para
números aleatórios, por exemplo.
Ataques a fragmentação IP
• Pacotes IP fragmentados são montados apenas no
host de destino
• O host espera um tempo limite até a chegada de
todos os fragmentos
• Caso um fragmento não seja recebido, o pacote é
descartado e uma mensagem ICMP é retornada ao host
de origem
• Possibilidade de inundar um host destino com
fragmentos incompletos (timeout default no Linux
é 30 segundos)
• Teardrop Attack
Neighbor Discovery Protocol
• Ataque ao NDP do IPv6
• Possível enviar mensagens de anuncio falsas

• Principais mensagens de anúncio:


• Neighbor Advertisement:
• enviada por um host como resposta à mensagem Neighbor
Solicitation (similar ao ARP replay)
• Router Advertisement:
• roteadores enviam essa mensagem para anunciar sua presença
na rede. O envio pode ser periódico ou em resposta a uma
mensagem Router Solicitation.

Obs: Router Advertisements podem conter informações como prefixo de endereço,


MTU, limite de hops, etc.).
Neighbor Advertisement
• Type: 136
• Code: 0
• Checksum: da mensagem ICMP
• Flags: R (Router flag), S (Solicited flag), O (Override flag)
• Target Address: Endereço IP de origem (isto é, de quem envia esta
mensagem)
• Options: inclui o endereço MAC de origem

Type Code Checksum


R S O Reserved

Target Address

Options..
Neighbor Discovery Protocol
(Protecão)
• Utilizar equipamentos com suporte a Secure
Neighbor Discovery (SEND)
• Utiliza autenticação para os vizinhos

Você também pode gostar