Núcleo de Informação e Coordenação do Ponto BR

Portal de Boas Práticas para a Internet no Brasil

Navegação global

Conteúdo

Entenda a necessidade do Antispoofing!

Muitas vezes, pacotes IP com endereços de origem incorretos são utilizados. Podem ser endereços reservados, ou endereços de redes de terceiros. Essa técnica é chamada de spoofing, ou falsificação de pacotes, e normalmente é utilizada em ataques de negação de serviços. Se os equipamentos na rede onde os pacotes se originam não verificam sua origem, qualquer ação posterior para identificá-los ou bloquá-los é muito dificultada. A figura abaixo exemplifica esse tipo de ataque:

Este texto contém recomendações aos operadores de redes para que implementem mecanismos que garantam que suas redes retransmitam somente pacotes IPs com endereços pertencentes a elas próprias, e é baseado principalmente nos documentos de boas práticas BCP 38: Network Ingress Filtering Defeating Denial of Service Attacks which employ IP Source Address Spoofing e BCP 84: Ingress Filtering for Multihomed Networks, da IETF.

Entendendo melhor o problema

Cada dispositivo conectado à Internet possui um endereço global único e roteável que lhe permite comunicar com outros dispositivos. E esse endereço é parte de um conjunto de endereços que define uma rede. A comutação de pacotes entre dispositivos é feita por roteadores, que em geral, analisam o endereço destino dos pacotes para tomar a decisão sobre para qual interface ou rede conectada o pacote deve ser encaminhado.

Pode ocorrer que, por erro ou intencionalmente, um dispositivo tente encaminhar pacotes cujo endereço de origem não esteja no espaço de endereços da rede a que esteja conectado. E um roteador, por sua vez, pode encaminhar esse pacote para o dispositivo destino, mesmo que o endereço de retorno (retorno sob o ponto de vista de quem receberá o pacote, origem sob o ponto de vista do roteador que o está encaminhando) esteja incorretamente configurado.

Quando isso é feito de forma intencional, normalmente tem por objetivo ataques a outras redes e serviços. Por utilizarem endereços de origem falsificados, sejam reservados ou privados ou pertencentes a outras redes, esses tipos de ataque tornam difícil o rastreamento até sua verdadeira origem. Portanto, ataques realizados dessa forma são de difícil identificação e por consequência tornam difícil qualquer ação para cessá-los.

Quando se utiliza de endereços válidos mas pertencentes a outras redes, o ataque pode também ser direcionado a essas outras redes que receberão as respostas dos pacotes enviados com endereço de origem falsificado. Há casos bem documentados de ataques que utilizam essa técnica associada a serviços cujo pacote de resposta é algumas vezes maior que o pacote de solicitação. Um exemplo desse tipo de ataque com amplificação é com serviço DNS sob UDP onde as consultas a certos “Resources Records” são pequenas, poucas dezenas de bytes, mas as repostas podem ser dezenas de vezes maiores. Essas respostas amplificadas seriam, nesse caso, enviadas para dispositivos na rede cujo endereço forjado foi utilizado como sendo origem das solicitações DNS. Existem relatos de ataques de amplificação utilizando-se também protocolo SNMP [1]. As solicitações nesse caso não têm grande impacto, mas as respostas conterão pacotes bem maiores, amplificados, que podem saturar enlaces ou serviços na rede atacada.

Impacto

Qualquer rede conectada à Internet pode ser vitima dos ataques aqui descritos. Mesmo com a implementação de filtros nas bordas da rede para descartar pacotes originados em redes privadas ou não alocadas, há ainda a possibilidade de ataques utilizando endereços públicos e roteados mas pertencentes a outras redes (spoofing).

Solução

A solução para evitar esse tipo de ataque demanda ações em conjunto entre operadores de redes conectadas a Internet. Equipamentos responsáveis pela comutação de pacotes IPs devem fazer controle do endereço de origem.

Utilizando filtros

filtro antispoofing

A recomendação descrita na BCP 38 (RFC 287 [2]) publicada pela IETF em 2000 é para que se filtrem pacotes na interface de entrada da rede do provedor de forma a permitir somente aqueles cujo endereço de origem seja parte da rede conectada àquela interface.

A recomendação menciona também filtros nos servidores de acesso remoto ou agregadores, pois em geral, nessas conexões haverá somente um dispositivo e não uma rede, sendo portanto possível ao servidor filtrar qualquer pacote cujo endereço origem não seja aquele atribuído ao dispositivo pelo servidor de acesso ou agregador.

É comum que a autenticação de clientes e a designação de endereços seja feita por agregadores que estão conectados ao centro/core da rede. Esses agregadores poderiam ter listas de acesso nas interfaces de conexão ao centro/core da rede de forma a permitir saída somente de pacotes cujo endereço de origem pertençam ao segmento de rede destinado a atender aqueles usuários.

A recomendação proposta demanda uma gerência de listas de controle e acesso em todos os equipamentos que dão acesso aos usuários/clientes, o que acaba sendo factível somente redes pequenas ou de baixa complexidade.

Embora seja de maior complexidade é uma solução efetiva para o problema.

Reverse Path Forwarding


Em redes de maior complexidade, com maior número de roteadores e usuários diversos, manter centenas ou milhares de listas de acesso em um grande número de equipamentos pode ser uma tarefa árdua e que induza a erros, possivelmente prejudicando usuários legítimos.

Para esses casos a recomendação a seguir é a descrita na BCP 84 (RFC 3704 [3]), que basicamente indica o uso de técnicas bastante comuns em roteadores denominadas RPF, ou “Reverse Path Forwarding”. Essa técnica faz com o roteador filtre qualquer pacote em uma interface cuja rota de retorno do pacote não seja através dessa mesma interface.

Dessa forma um pacote configurado com endereço incorreto seria descartado pela interface do roteador uma vez que a rota para a rede do endereço de origem não “apontaria” para essa mesma interface.

A configuração é mais simples, exige apenas habilitar essa funcionalidade nas interfaces dos roteadores de acesso as redes dos clientes sem necessidade de alterações na configuração a cada novo cliente, como ocorreria, por exemplo, com listas de controle/acesso.

A recomendação é que essa configuração seja feita nas interfaces que conectam as redes dos clientes ou de acesso de usuários. Em casos que um provedor tenha clientes multi homed conectados a sua rede, deve-se utilizar uma configuração específica de RPF.

Em casos não muito comuns de clientes utilizando IPs alocados por seus dois ou mais provedores, pode ocorrer que o tráfego saindo por uma interface/rede esteja com endereço de origem pertencente ao espaço alocado pelo outro provedor; e com implementação de RPF nessa interface o tráfego seria bloqueado. Uma possível solução para esse problema seria a implementação de mecanismos que garantam que o tráfego originado em um determinado espaço de endereços seja roteado para a interface do provedor que alocou esses endereços via esquemas de roteamento pela origem (source-routing).

Referências

[1] http://www.bitag.org/documents/SNMP-Reflected-Amplification-DDoS-Attack-Mitigation.pdf
[2] BCP38 / RFC 287 – https://tools.ietf.org/html/bcp38
[3] BCP84 / RFC 3704 – https://tools.ietf.org/html/bcp84

Publicado por: EquipeBCP

A equipe do sítio http://bcp.nic.br é composta por profissionais de diversas áreas do NIC.br, que procuram destacar neste blog boas práticas que devem ser adotadas na Internet no Brasil.

4 responses to “Entenda a necessidade do Antispoofing!”

  1. […] Os ataques de negação de serviço são aqueles em que o atacante utiliza um computador ou um conjunto deles para tirar de operação um serviço, computador ou rede. “Ativismo digital, extorsão, vandalismo e relação com jogos on-line constituem as principais motivações por trás desse tipo de ataque”, explica Cristine Hoepers, gerente do CERT.br.A maior parte das notificações recebidas foi relativa a servidores mal configurados no Brasil sendo abusados para amplificar ataques de negação de serviço. “Este tipo de ataque só funciona porque as redes abusadas não implementam uma técnica chamada Antispoofing. É importante que todos os provedores de conectividade e todas as empresas implementem esta técnica, para reduzir os impactos dos ataques“, complementa Cristine. Detalhes sobre esta boa prática podem ser encontrados em http://bcp.nic.br/entenda-o-antispoofing/. […]

  2. Superb website

    […]always a big fan of linking to bloggers that I love but don’t get a lot of link love from[…]…

  3. Wikia

    Wika linked to this website

Leave a Reply

You must be logged in to post a comment.