[GTER] O lado negro do eBGP multi-hop
Henrique de Moraes Holschuh
henrique.holschuh at ima.sp.gov.br
Mon Jul 16 17:45:11 -03 2012
On 16-07-2012 16:37, Eduardo Schoedler wrote:
> 2012/7/16 Rodrigo Augusto<rodrigo at 1telecom.com.br>
>> Essas rotas recebidas podem ser repassadas para downstreams? Isto
>> e, isto e uma boa ideia?!
>
> Não, são rotas de bogon. Marque todas como no-export no route-map
> in.
Na verdade, precisa mais que isso.
O problema não é a Cymru. É alguém sequestrar o controle do peer BGP ou
da sessão eBGP.
Uso responsável de blacklist de bogons via eBGP multi-hop:
1. Faça o download da lista manualmente, vete-a, e crie um prefix-list a
partir dela. Listas de bogons nunca adicionam redes, apenas removem.
Como muitas vezes isso cria prefixos mais específicos, a prefix-list
deve permitir mais específicos de cada prefixo.
2. Use esse prefix-list para filtrar os anúncios recebidos da Cymru.
Isso significa que eles não poderão adicionar outras redes, apenas
remover redes da lista de bogons. Se for a full-bogons, vai consumir
bastante recurso.
3. Use route-map para marcar como NO_ADVERTISE ou NO_EXPORT (dependendo
se você quer que propague no iBGP ou não), force o NEXT_HOP para um IP
de descarte implementado em *todos* os roteadores iBGP da rede
(NO_EXPORT) ou pelo roteador local (NO_ADVERTISE), etc.
e, finalmente:
0. Considere se o risco de uma sessão eBGP extra atravessando meia
Internet (ainda por cima sem MD5), e a perda da filtragem de bogons caso
a sessão caia, é aceitável.
Não se engane, essa sessão eBGP multi-hop é uma porta direta para atacar
o plano de controle do roteador. Como não tem MD5, um hijack de sessão
BGP[1] permite inserir qualquer mensagem que se queira. Feito o hijack,
sem a filtragem mencionada em (2) fica trivial de causar estrago. Com a
filtragem mencionada em (2), ainda dá para "desfiltrar" os bogons (basta
derrubar a sessão), ou enviar pacotes que explorem algum bug no routing
engine (que pode inclusive permitir a invasão do roteador).
Se fosse protegida com MD5, daria para consumir CPU do roteador à
vontade (poucas caixas/NICs computam TCP MD5 em hardware) via DDoS com
origem forjada.
Ou seja, em muitos casos é melhor gerar essa lista via script, e ou
injetar no roteador como configuração (filter-list, ACL, etc) ou injetar
via iBGP (por exemplo, usando exabgp) com NEXT_HOP apontando para um IP
de descarte ou para uma darknet.
[1] hijack de sessão TCP. Não é sempre que é possível, nem costuma ser
trivial, mas é bom lembrar que existem formas de se criar as condições
favoráveis em muitos casos.
--
Henrique de Moraes Holschuh <hmh at ima.sp.gov.br>
IM@ - Informática de Municípios Associados
Engenharia de Telecomunicações
TEL +55-19-3755-6555/CEL +55-19-9293-9464
Antes de imprimir, lembre-se de seu compromisso com o Meio Ambiente
e do custo que você pode evitar.
More information about the gter
mailing list