Eliminando oportunidades de seqüestro de tráfego


Esquema bonito para conexão BGP à rede de filtragem Qrator

Uma pequena visão histórica


  • Seqüestros de BGP - quando um ISP origina um anúncio do espaço de endereço que não pertence a ele;
  • Vazamentos na rota do BGP - quando um ISP anuncia prefixos recebidos de um provedor ou ponto para outro provedor ou ponto.

Nesta semana, passaram 11 anos desde o memorável incidente no YouTube BGP , provocado pela propagação global de um anúncio de prefixo mais específico, originado pela Pakistan Telecom, levando a uma interrupção no tráfego de quase duas horas de duração na forma de redirecionar o tráfego de legítimos caminho para o falso. Poderíamos adivinhar se esse evento foi intencional, e mesmo uma resposta correta não nos ajudaria a impedir completamente que tais incidentes aconteçam hoje. Enquanto você lê isso, um vazamento de rota ou um seqüestro está se espalhando pelas redes. Porque Como o BGP não é fácil, a configuração correta e segura é ainda mais difícil (ainda).

Nestes onze anos, o seqüestro de BGP se tornou um vetor de ataque bastante prejudicial devido ao posicionamento do BGP na arquitetura da Internet moderna. Graças ao BGP, os roteadores não apenas adquirem informações de pares e, portanto, todas as rotas da Internet - eles são capazes de calcular o melhor caminho para o tráfego até seu destino através de muitas redes intermediárias (trânsito), cada uma representando um AS individual. Um único AS é apenas um grupo de redes IPv4 e / ou IPv6 que operam sob uma única política de roteamento externo.

E graças ao BGP em seu estado atual, os atacantes são capazes de conduzir roubos maciços de tráfego, seqüestrando eficientemente os prefixos da rede-alvo, colocando-se no meio. E isso é apenas o começo - na era dos atores cibernéticos patrocinados pelo Estado, é evidente que a pedra angular do Border Gateway Protocol, que é a confiança, não é mais suficiente o suficiente para impedir a ocorrência de ataques maliciosos de incidentes de roteamento, deliberados ou não. . Como o BGP desempenha um papel essencial na existência da Internet como a conhecemos (é o único protocolo de gateway externo para controlar o fluxo de tráfego entre diferentes provedores de serviços de Internet em todo o mundo), por uma década vimos tentativas de corrigir as coisas.

Definição de problema


A complexidade geral de gerenciar um AS que trabalha com o protocolo BGP não diminui com tempo e esforço. Os operadores nos mercados em desenvolvimento, onde o ISP e os mercados de operadoras crescem dramaticamente a cada ano, não estimam corretamente as possíveis conseqüências do AS ajustado de forma inadequada. Nenhuma medida de segurança poderia se defender contra um erro interno. A ausência de automação no BGP torna impossível para os novos jogadores, com menos experiência, lidar adequadamente com o AS em situações de alto estresse, como após a criação de vazamentos na rota ou sob o seqüestro.

Infelizmente, devido ao lugar na vida humana que a Internet ocupava, é difícil para muitos operadores de AS acompanhar o número crescente. Exemplo simples: em 1997, o número de sistemas autônomos era 3000, em 2005 - 17000, no início de 2019 - 63678. As tabelas de roteamento (armazenadas nos roteadores BGP) aumentaram de 50 mil entradas em 1997 e 180 mil em 2005 para impressionantes 850 mil no início de 2019.

Tanto o vazamento de rota quanto o seqüestro têm efeitos semelhantes nas operações do ISP - eles redirecionam o tráfego, resultando em maior latência, perda de pacotes ou possíveis ataques MITM. No entanto, o nível de risco depende significativamente da propagação dessas anomalias do BGP. Por exemplo, um seqüestro que é propagado apenas para clientes pode concentrar o tráfego do cone de um determinado provedor de serviços de Internet. Se a anomalia for espalhada por pares, upgreams ou alcançar redes de Nível 1, distribuindo globalmente, o tráfego poderá ser redirecionado no nível de países inteiros e / ou fornecedores globais. A capacidade de restringir a propagação de anomalias de BGP a fluxos de fluxo e pares, sem a necessidade de suporte da fonte da anomalia (o que é crítico se uma fonte tiver intenção maliciosa), deve melhorar significativamente a segurança do roteamento entre domínios e resolver a maioria dos problemas. .

Ao apenas dar uma rápida olhada nos eventos citados na Wikipedia relacionados como "BGP Hijacking" , vemos um aumento de sua frequência nos últimos dois anos. Porque Porque existem muitas maneiras de organizar um ataque ao BGP e muito pouca probabilidade de se desconectar. No entanto, as empresas que são conhecidas como atores ruins estão perdendo suas conexões upstream no final, pois isso prejudica a reputação. E ainda assim, esses incidentes ocorrem porque ainda não há como impedir um vazamento de rota ou um seqüestro de prefixo com 100% de precisão.

Centenas de incidentes de roteamento ocorrem diariamente, a maioria dos quais é resultado de uma simples configuração incorreta. Esses sequestros realmente perigosos e maliciosos geralmente são enganosos e direcionados com precisão, o que os torna mais difíceis de encontrar e consertar. E apenas uma pequena porcentagem deles obteve cobertura da mídia porque, devido à natureza do BGP, todos os incidentes precisam se propagar para um nível mais significativo (em todo o país) para serem notados - e as empresas que monitoram suas redes podem impedir essa propagação.

Como o conceito de seqüestro de BGP gira em torno da localização de um ISP que não está filtrando os anúncios do BGP (e existem muitos provedores), sempre há um suspeito. Para cada incidente de BGP nos últimos dois anos, houve um ou vários ASs específicos responsáveis.

Você deve pensar que, devido a um enorme potencial de dano colateral a uma parte tão vital da vida moderna, as empresas devem morrer de medo e tomar todas as medidas possíveis para impedir esses eventos em primeiro lugar. Bem, isso parece bom demais para ser verdade.

No final de 2018, 7% dos ISPs de trânsito no IPv4 e 1% dos ISPs de trânsito no mundo do roteamento IPv6 aceitaram vazamentos fora do cone do cliente. Você pode dizer que os números não são tão altos, mas vamos dar uma olhada nos resultados classificados pelo "tamanho" do ISP:



Sem surpresa, todos os níveis 1 são afetados, com mais de 50% dos 400 principais ISPs IPv4. O IPv6 parece um pouco mais saudável, mas não vamos esquecer que ele tem menos prefixos e provedores de suporte. Portanto, o problema existe e não está sendo resolvido com eficiência suficiente - tentaremos explicar o porquê.

Tentativas de aplicar um patch


Na verdade, houve um esforço significativo para melhorar a segurança do BGP. Atualmente, a técnica mais comum é usar filtros de entrada (de entrada) criados com base nos dados de registros de roteamento da Internet . A idéia é simples: use objetos de rota "aprovados" e AS-SETs para criar filtros nos links do cliente. Um problema subjacente é que os AS-SETs e os objetos de rota variam de um IRR para outro e, às vezes, objetos diferentes podem existir com o mesmo identificador em IRRs separados. E, é claro, as políticas de TIR não são obrigatórias - elas são voluntárias para serem implementadas, levando-nos a uma situação em que grande parte do IPv4 e IPv6 não possui nenhum objeto registrado ou incorreto. Além daqueles errados. Portanto, muitos objetos de IRR são mal mantidos e até mesmo algumas redes enormes de nível 2 não conseguem configurar seus filtros corretamente.


Hierarquia de certificado de recurso RPKI

Existe outra opção interessante para filtrar anúncios inadequados - a Validação de Origem baseada em ROA pode ser usada para detectar e filtrar origens incorretas acidentais. Embora essas atualizações de BGP sejam bastante úteis, elas ainda dependem de atributos transitivos de BGP - AS_Path, que o invasor pode e irá manipular.

O RPKI (ROA Foundation) é baseado em uma hierarquia de certificados de recursos, alinhada à estrutura de alocação de recursos de número da Internet. O certificado do recurso está vinculado, por exemplo, ao registro RIPE NCC . Isso ocorre porque apenas enquanto alguém for membro do RIPE NCC e tiver uma relação contratual com o RIPE NCC, poderá ser declarado com autoridade quem é o detentor de um recurso individual de número da Internet. O certificado tem validade de 18 meses, mas é renovado automaticamente a cada 12 meses. O RPKI é estruturado de maneira a que cada certificado de recurso atual corresponda a uma alocação ou atribuição de recursos atual - um momento crucial para o ASPA também.

Vale ressaltar que 2018 foi um ano essencial para a segurança do BGP, com muitos eventos notáveis. O BGPSec é finalmente um padrão, embora ninguém espere que ele seja totalmente implementado devido aos seus complexos requisitos de suporte. A uma taxa de adoção de 100%, o BGPSec resolve seqüestros maliciosos com precisão muito alta, mas os custos de computação da validação criptográfica AS_Path rigorosa são insuportáveis ​​para a maioria dos jogadores, exceto talvez os operadores de AS mais ricos do mundo. E, novamente - para funcionar adequadamente, o BGPSec precisa ser implementado em todas as redes que gerenciam sua própria rota anunciada.

Todos os eventos recentes tornam evidente que o gênio da manipulação de BGP está fora da garrafa, tornando realidade os desejos de alguém. Mal podemos esperar por mais uma década para chegar a uma conclusão que tínhamos 10 anos atrás - isso deve ser interrompido agora, fornecendo medidas técnicas eficazes para validação de prefixo, entrada e saída.

Abordagem ASPA


Anteriormente, nossa empresa tinha como objetivo melhorias de protocolo para diminuir erros e, em 2018, nos concentramos no combate a atividades maliciosas - especificamente seqüestros de BGP. Esse vetor é poderoso como já vimos em várias ocasiões, e os invasores não hesitam em empregá-lo na tentativa de interromper o serviço ou roubar dados do usuário. O principal problema é que, com exceção do monitoramento, atualmente não há nada para impedir invasões de caminho no próprio protocolo. Como já dissemos, o BGPSec não mudará nada até que seja implementado nos provedores de rede mais significativos (ou, reformulando, na maioria das redes), o que já poderia ter acontecido se o protocolo fosse adequado.

Nossa resposta é a abordagem hacker - ASPA, onde as ferramentas atuais são usadas para combater os problemas mais graves do mundo do roteamento BGP. A implementação é fácil, embora a solução resultante responda a quase todas as ameaças relacionadas. O fato de não haver necessidade de esperar pela adoção completa do ASPA é o principal motivo para apoiar nossa abordagem. Em 2018, vimos vazamentos significativos de rotas, sequestros sérios e muitos outros eventos envolvendo o BGP, que é a principal razão pela qual precisamos encontrar algo que funcione nos meses mais próximos, sem esperar 10 anos pela implementação do BGPSec.

O aprimoramento da Autorização de Caminho do Sistema Autônomo para o protocolo BGP em que nossos engenheiros estão trabalhando, em colaboração com outras pessoas, pode resolver de maneira eficiente e, o mais importante, rapidamente o problema global de seqüestros. O ASPA se concentra na automação da detecção e prevenção de seqüestros maliciosos (em conjunto com o ROA) e vazamentos de rotas.

Para atingir esse objetivo específico, é definido um novo procedimento de verificação AS_PATH, que ajuda a detectar automaticamente AS_PATHs malformados em anúncios recebidos de clientes e colegas. O procedimento em si usa um banco de dados assinado e compartilhado de relacionamentos cliente-provedor (C2P), sendo construído com um novo objeto RPKI - ASPA (Autorização de Provedor de Sistema Autônomo). É leve e rápido de implantar, detectando AS_PATHs inválidos logo após a implementação.

ASPAs são objetos assinados digitalmente que atestam que um CAS (AS) do Cliente autorizou um PAS (Provedor AS) específico a propagar os anúncios de rota IPv4 ou IPv6 BGP do Cliente em diante - para upstream ou pares do Provedor. Para se aprofundar nos detalhes, você deve dar uma olhada no perfil de registro ASPA.

Portanto, se uma rota válida for recebida de um cliente ou de um par, DEVE ter apenas pares C2P em seu AS_PATH. Depois, se tivermos um banco de dados validado de pares cliente-provedor, poderemos verificar as rotas recebidas de clientes e colegas! Obviamente, essa não é uma bala de prata - é apenas uma ferramenta útil para impedir que a anomalia se espalhe mais perto de sua origem.



Este esquema simples mostra como essa verificação baseada em ASPA funciona. ASes verdes representam pares assinados e o vermelho representa o atacante. Neste exemplo, o AS1 possui um objeto RPKI ROA no lugar.

AS_PATH: AS4
O canto 1 mostra que, se o AS mais próximo do AS_PATH não for o ASN vizinho do receptor, o procedimento será interrompido com o resultado "inválido". Além disso, se em um dos segmentos AS_SEQ houver um par "inválido", o procedimento também será interrompido com o resultado "inválido";

AS_PATH: AS4 AS1
O canto 2 mostra o mesmo que se o atacante tentasse formar um novo par não validado, o resultado também seria "inválido";

AS_PATH: AS4 AS2 AS1
O canto 3 ilustra que qualquer tentativa de anunciar um par não validado resultaria em rota "inválida" e, portanto, descartada.

AS_PATH: AS2 AS1
No último canto 4 , voltamos à condição inicial em que, se o AS mais próximo no AS_PATH não for o ASN vizinho do receptor, esse procedimento será mantido como "inválido".

Detalhes detalhados sobre o procedimento de verificação AS_PATH podem ser encontrados no rascunho correspondente da IETF . Pode parecer um pouco complicado, mas é leve, funciona com a infraestrutura RPKI existente e produz efeitos no estado de uma adoção parcial, com boa relação custo-benefício. Em outras palavras, poderia funcionar agora, ajudando-nos a levar vazamentos e sequestros de rotas BGP à beira da extinção!

Por que você deve nos apoiar na melhoria da segurança do BGP


Como sabemos, em primeiro lugar, que o RPKI ROA é adequado para esse papel? Vamos dar uma olhada nas estatísticas atuais sobre sua adoção.

No IPv4 para prefixos 938526, 95272 têm entradas válidas de RPKI ROA ou ~ 10%. No mundo IPv6 para os prefixos 80480 10593, tem entradas válidas RPKI ROA ou ~ 12%

Esses dígitos não são tão altos quanto gostaríamos, mas crescem a cada dia! Como o número de ROAs validados não é muito grande, é evidente que apenas os principais responsáveis ​​os mantêm diariamente. E embora não confiemos inteiramente nos dados da TIR, assinar o anúncio do BGP com o ROA já é útil e está em vigor. Há progresso entre as operadoras de Internet Exchange, bem como os maiores provedores de serviços de Internet do mundo. E com relação aos “usuários comuns da Internet” - seu próprio ISP pode ser o próximo se estiver motivado o suficiente para manter seus dados seguros.

Se você está tão interessado em eliminar as oportunidades de seqüestro de tráfego como nós, assine ROAs e apoie a adoção do ASPA na lista de correspondência da IETF, conforme esperamos em sua transição para o estágio RFC no futuro observável!

Source: https://habr.com/ru/post/pt442264/


All Articles