O que é sequestro de BGP?

O sequestro de BGP é um redirecionamento malicioso de tráfego da internet que explora a natureza confiável do BGP, o protocolo de roteamento da internet.

Objetivos de aprendizado

Após ler este artigo, você será capaz de:

  • Defina sequestro de BGP
  • Discutir alguns exemplos reais de sequestro de BGP
  • Descrever algumas contramedidas para evitar sequestros de BGP

Copiar o link do artigo

O que é sequestro de BGP?

O sequestro de BGP ocorre quando os invasores redirecionam o tráfego da internet de forma maliciosa. Os invasores conseguem isso anunciando falsamente a propriedade de grupos de endereços de IP, chamados de prefixos de IP, que eles não possuem, controlam ou direcionam. Um sequestro de BGP é como se alguém mudasse todos os sinais de um trecho de uma rodovia e redirecionasse o tráfego de automóveis para saídas incorretas.

Como o BGP é construído com base na suposição de que as redes interconectadas estão dizendo a verdade sobre quais endereços de IP elas possuem, o sequestro de BGP é quase impossível de parar – imagine se ninguém estivesse observando os sinais da autoestrada e a única maneira de saber se eles tinham sido alterados de forma maliciosa era observar que muitos automóveis estavam indo parar nos bairros errados. No entanto, para que um sequestro ocorra, os invasores precisam controlar ou comprometer um roteador habilitado para BGP que faz a ponte entre um sistema autônomo (AS) e outro, desta forma ninguém pode realizar um sequestro de BGP.

O que é BGP?

BGP significa Border Gateway Protocol e é o protocolo de roteamento da internet. Em outras palavras, ele fornece instruções para que o tráfego viaje de um endereço de IP para outro da forma mais eficiente possível. Um endereço de IP é o endereço da web real de um determinado site. Quando um usuário digita o nome de um site e o navegador o encontra e carrega, as solicitações e respostas vão e voltam entre o endereço de IP do usuário e o endereço de IP do site. Os servidores DNS (Domain Name System) fornecem o endereço de IP, mas o BGP fornece a maneira mais eficiente de alcançar esse endereço de IP. Grosso modo, se DNS é o catálogo de endereços da internet, então o BGP é o mapa rodoviário da internet.

Cada roteador BGP armazena uma tabela de roteamento com as melhores rotas entre sistemas autônomos. Estas são atualizadas quase que continuamente, pois cada AS* – muitas vezes um provedor de serviços de internet (ISP) – transmite novos prefixos de IP que possuem. O BGP sempre favorece o caminho mais curto e direto de AS para AS, a fim de alcançar os endereços de IP através do menor número possível de saltos através das redes. Saiba mais sobre o BGP >>

*Definição de um sistema autônomo (AS)

Um sistema autônomo é uma grande rede ou grupo de redes gerenciadas por uma única organização. Um AS pode ter muitas sub-redes, mas todas compartilham a mesma política de roteamento. Normalmente, um AS é um provedor ou uma organização muito grande com sua própria rede e várias conexões upstream dessa rede para ISPs (isso é chamado de "rede com hospedagem múltipla"). Cada AS recebe seu próprio Número de Sistema Autônomo, ou ASN, para identificá-lo facilmente. Saiba mais sobre sistemas autônomos >>

Por que o BGP é importante?

O BGP possibilita o crescimento em larga escala da internet. A internet é composta por várias grandes redes interconectadas. Por ser descentralizado, não há nenhum órgão governante ou guarda de trânsito estabelecendo as melhores rotas para que os pacotes de dados viajem para seus destinos de endereço de IP pretendidos. O BGP cumpre essa função. Se não fosse pelo BGP, o tráfego da web poderia levar muito tempo para chegar ao seu destino devido ao roteamento ineficiente ou nunca chegaria ao destino pretendido.

Como o BGP pode ser sequestrado?

Quando um AS anuncia uma rota para prefixos de IP que ele não controla de fato, esse anúncio, se não filtrado, pode se espalhar e ser adicionado às tabelas de roteamento em roteadores BGP na internet. A partir de então, até que alguém perceba e corrija as rotas, o tráfego para esses IPs será roteado para aquele AS. Seria como reivindicar território se não houvesse governo local para verificar e fazer cumprir as escrituras de propriedade.

O BGP sempre favorece o caminho mais curto e específico para o endereço de IP desejado. Para que o sequestro do BGP seja bem-sucedido, o anúncio da rota deve:

1) Oferecer uma rota mais específica, anunciando um intervalo menor de endereços de IP do que os outros sistemas autônomos haviam anunciado anteriormente.

2) Oferecer uma rota mais curta para certos blocos de endereços de IP. Além disso, ninguém pode anunciar as rotas BGP para a internet maior. Para que ocorra um sequestro de BGP, o anúncio deve ser feito pelo operador de um AS ou por um agente de ameaça que comprometeu um AS (o segundo caso é mais raro).

Pode parecer surpreendente que o operador de uma grande rede ou grupo de redes, muitas das quais são provedores, empreenda descaradamente tal atividade maliciosa. Mas, considerando que, de acordo com alguns cálculos, existem agora mais de 80.000 sistemas autônomos em todo o mundo, não é surpreendente que alguns sejam indignos de confiança. Além disso, o sequestro de BGP nem sempre é óbvio ou fácil de detectar. Atores mal-intencionados podem camuflar sua atividade por trás de outros sistemas autônomos ou podem anunciar blocos não utilizados de prefixos de IP que provavelmente não serão notados pelo radar.

O que acontece quando o BGP é sequestrado?

Como resultado do sequestro de BGP, o tráfego da internet pode ir para o lado errado, ser monitorado ou interceptado, se tornar "black hole" ou ser direcionado para sites falsos como parte de um ataque on-path. Além disso, os spammers podem usar o sequestro de BGP, ou a rede de um AS, que pratica o sequestro de BGP, para falsificar IPs legítimos para fins de spam. Da perspectiva do usuário, o tempo de carregamento da página aumentará porque as solicitações e respostas não seguirão a rota de rede mais eficiente e podem até viajar por todo o mundo desnecessariamente.

Na melhor das hipóteses, o tráfego apenas tomaria um trajeto desnecessariamente longo, aumentando a latência. Na pior das hipóteses, um invasor pode estar conduzindo um ataque on-path ou redirecionando os usuários para sites falsos a fim de roubar credenciais.

Sequestro de BGP no mundo real

Houve muitos exemplos do mundo real de sequestros de BGP deliberados. Por exemplo, em abril de 2018, um provedor russo anunciou uma série de prefixos de IP (grupos de endereços de IP) que realmente pertencem aos servidores Route53 Amazon DNS. Resumindo, o resultado final foi que os usuários que tentaram fazer login em um site de criptomoeda foram redirecionados para uma versão falsa do site controlada por hackers. Os hackers foram, portanto, capazes de roubar aproximadamente US$ 152.000 em criptomoedas. (Mais especificamente: por meio de sequestro de BGP, os hackers sequestraram as consultas de DNS da Amazon para que as consultas de DNS da myetherwallet.com fossem para os servidores que controlavam, retornassem o endereço de IP errado e direcionassem solicitações HTTP para o site falso . Leia mais em nossa postagem do blog: "Vazamentos de BGP e criptomoedas").

Instâncias inadvertidas de sequestro de BGP também prevalecem e podem ter um impacto negativo em toda a internet global. Em 2008, a Pakistan Telecom, de propriedade do governo paquistanês, tentou censurar o Youtube dentro do Paquistão atualizando suas rotas de BGP para o site. Aparentemente, por acidente, as novas rotas foram anunciadas aos provedores upstream da Pakistan Telecom e de lá transmitidas para toda a internet. De repente, todas as solicitações da web para o Youtube foram direcionadas para a Pakistan Telecom, resultando em uma interrupção de horas do site para quase toda a internet e sobrecarregando o provedor.

Como os usuários e as redes podem se defender do sequestro de BGP?

Além do monitoramento constante de como o tráfego da internet é roteado, os usuários e as redes podem fazer muito pouco para evitar sequestros de BGP.

Filtragem de prefixo de IP

A maioria das redes só deve aceitar declarações de prefixo de IP se necessário e deve declarar seus prefixos de IP apenas para certas redes, não para toda a internet. Isso ajuda a evitar o sequestro acidental de rota e pode impedir que o AS aceite declarações falsas de prefixo de IP; no entanto, na prática, isso é difícil de aplicar.

Detecção de sequestro de BGP

Latência aumentada, performance de rede degradada e tráfego de internet mal direcionado são todos possíveis sinais de um sequestro de BGP. Muitas redes maiores monitorarão as atualizações de BGP para garantir que seus clientes não enfrentem problemas de latência, e alguns pesquisadores de segurança monitoram de fato o tráfego da internet e publicam suas descobertas.

Tornando o BGP mais seguro

O BGP foi projetado para fazer a internet funcionar, e certamente faz isso. Mas o BGP não foi projetado com segurança em mente. Soluções de roteamento mais seguras para a internet como um todo (como o BGPsec) estão sendo desenvolvidas, mas ainda não foram adotadas. Por enquanto, o BGP é inerentemente vulnerável e permanecerá assim.

Como a Cloudflare usa o BGP?

A Cloudflare possui data centers em 270 cidades espalhadas pelo mundo, todas transmitindo um ASN (AS13335) e os mesmos prefixos de IP. Isso minimiza o número de redes que o tráfego precisa cruzar para chegar a endereços de IP hospedados pela Cloudflare. Como resultado, caminhos eficientes para endereços de IP de propriedade da Cloudflare estão disponíveis em quase qualquer lugar do mundo. Para um AS no Japão, o caminho mais curto para um IP da Cloudflare pode ser apenas alguns saltos de rede, terminando em um data center da Cloudflare em um local no Japão. Na Califórnia, o tráfego pode ir para o mesmo endereço de IP, hospedado no mesmo AS da Cloudflare e acabar chegando por meio de um data center californiano.