Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Validação de endereço MAC do cliente DHCPv6 para evitar o sequestro de sessão

A partir do Junos OS Release 18.2R1, existe um mecanismo não configurado para servidores locais DHCPv6 e agentes de transmissão para soltar pacotes de um cliente com um endereço MAC desconhecido para evitar que um cliente malicioso sequestra uma sessão. Quando um servidor local dhCPv6 ou agente de retransmissão recebe uma mensagem de solicitação de um cliente para estabelecer uma sessão, ele extrai o endereço MAC do cliente (endereço da camada de link) da mensagem e a adiciona a uma tabela local que mapeia endereços MAC para endereços ou prefixos IPv6 do cliente. O servidor ou agente de retransmissão usa esta tabela para comparar os endereços MAC recebidos em mensagens subseqüentes do cliente para validar se o cliente é conhecido; se não, assume-se que é malicioso e o pacote de controle é descartado. Como o pacote falhou na validação MAC, o contador de validação Client MAC foi incrementado.

Nota:

A suposição aqui é que o cliente que envia a mensagem inicial de solicitação é benigno. Neste caso, a validação de endereço MAC do cliente protege contra um cliente mal-intencionado que tenta seqüestrar uma sessão de cliente que já está estabelecida ou em processo de criação. A validação do endereço MAC do cliente não protege contra um cliente malicioso que envia a mensagem inicial de solicitação.

Quando nenhum agente de retransmissão estiver presente; o servidor local compartilha um link ou nó de acesso com o cliente. Neste caso, o servidor local extrai o endereço MAC do cliente diretamente do cabeçalho de Camada 2 do pacote de controle DHCPv6 e valida o endereço em relação à tabela.

Quando um agente de retransmissão está presente, a validação é realizada pelo agente de retransmissão. RFC 6939, opção de endereço de camada de enlace do cliente no DHCPv6, permite que agentes de retransmissão DHCPv6 conectados ao mesmo link que um cliente DHCPv6 extraam o endereço MAC do cliente do cabeçalho Ethernet (Camada 2) no pacote de controle DHCPv6 recebido. O pacote inclui o endereço da camada de enlace do cliente como endereço MAC de origem em seu cabeçalho Ethernet. O agente de retransmissão valida o endereço MAC em relação ao valor deste cliente que está armazenado em sua tabela local. Se o endereço não for compatível, ele derruba o pacote.

Se o endereço for validado pelo agente de retransmissão e o pacote não for descartado, o agente de retransmissão também inclui esse endereço MAC na opção 79 (Endereço de camada de link do cliente) no cabeçalho da mensagem de encaminhamento de transmissão DHCPv6 que o agente de retransmissão envia para o servidor local. Quando o servidor local DHCPv6 recebe uma mensagem de retransmissão de um agente de retransmissão, o servidor examina automaticamente a mensagem para a presença da opção 79. Quando a opção está presente, o servidor local extrai o endereço MAC e o valida em relação ao valor armazenado na tabela para este cliente. Se a opção 79 não estiver presente, o servidor local não poderá realizar a validação.

No entanto, como o agente de retransmissão já validou o endereço, o servidor local não deve descobrir nenhuma incompatibilidade de endereço.

Os cenários a seguir descrevem possíveis configurações de agentes de retransmissão e suas implicações para a validação do servidor:

  • Um único agente de retransmissão DHCPv6 leve (LDRA; Camada 2) está conectada entre o cliente e o servidor. Se o LDRA não tiver adicionado a opção 79 ao cabeçalho, o servidor local extrai o endereço MAC do cliente diretamente do cabeçalho de Camada 2 do pacote de controle DHCPv6 e valida o endereço em relação à tabela.

  • Um ou mais agentes de retransmissão DHCPv6 de Camada 3 estão conectados entre o cliente e o servidor. Neste caso, o servidor verifica a opção 79 no cabeçalho da mensagem de transmissão mais interna enviada pelo agente de transmissão. O cabeçalho mais interno é visto porque é o cabeçalho modificado pelo primeiro agente de retransmissão alcançado pelo cliente. Outros cabeçalhos são adicionados por agentes de retransmissão subsequentes no caminho. Esses agentes não adicionam a opção 79 e não podem extrair o endereço MAC do cabeçalho de Camada 2 do primeiro agente de retransmissão, porque esse agente altera o endereço em seu próprio endereço, assim como cada agente de retransmissão subsequente.

  • Uma combinação de um agente de retransmissão de Camada 2 (LDRA) voltado para o cliente, seguido por um ou mais agentes de transmissão DHCPv6 de Camada 3 está conectado entre o cliente e o servidor. O servidor verifica a opção 79 no cabeçalho mais interno da mensagem de encaminhamento de retransmissão enviada pelo agente de transmissão. Se a LDRA não tiver adicionado a opção 79 ao cabeçalho, provavelmente não será capaz de alterar o endereço MAC no cabeçalho para o próprio. Consequentemente, o servidor verifica o segundo cabeçalho mais interno para a opção, porque o primeiro agente de retransmissão de Camada 3 pode ter extraído o endereço MAC e adicionado a opção 79 para transmitir o endereço.

Nenhuma configuração é necessária para permitir a validação de endereços MAC do cliente. Você pode ver quantos pacotes de controle foram descartados por causa de uma falha de validação emitindo o show dhcpv6 server statistics comando.

Benefícios da validação de endereço MAC do cliente

  • A validação do endereço MAC do cliente permite que você impeça um cliente DHCPv6 com um endereço MAC desconhecido de seqüestrar uma sessão estabelecida por um cliente conhecido. O uso de endereços MAC do cliente DHCPv6 provavelmente aumentará, pois é conveniente correlacionar clientes DHCPv4 e DHCPv6 em um ambiente de pilha dupla.

Tabela de histórico de mudanças

O suporte de recursos é determinado pela plataforma e versão que você está usando. Use o Feature Explorer para determinar se um recurso é suportado em sua plataforma.

Soltar
Descrição
18.2R1
A partir do Junos OS Release 18.2R1, existe um mecanismo não configurado para servidores locais DHCPv6 e agentes de transmissão para soltar pacotes de um cliente com um endereço MAC desconhecido para evitar que um cliente malicioso sequestra uma sessão.