lunes, 9 de febrero de 2009

Proyecto Bogon Server

Hace algunos meses nos embarcamos en la difícil tarea de tratar de evangelizar a la gente de los ISP en cuanto a diversas técnicas de filtrado de basura y mitigación de ataques para que cada empresa tome conciencia acerca de los males que sus propios abonados pueden generar, ya sea consciente o inconscientemente.

Uno de los proyectos más lindos que salieron es el del bogon server, en ese momento yo elaboré un pequeño FAQ para explicar a la gente lo que tratábamos de hacer.

Si sumamos esto a una configuración de Bogon con BGP y Mikrotik que realicé para el Team Cymru, tenemos una poderosa herramienta disponible gratuitamente para poder limpiar mucho el tráfico de internet, ya sea entrante o saliente.

En términos de IP, ¿Qué es un Bogon?


“Bogon” es el nombre informal de un paquete IP en la red pública (internet) que dice ser originado en un área del espacio IP que está reservado, es privado o bien no está asignado o delegado por ninguna entidad de administración a nivel mundial (IANA, RIR’s).

¿Qué es un RIR?


Un RIR (Regional Internet Registry) es una entidad sin fines de lucro que se encarga de administrar las direcciones IP públicas y los números de Sistema Autónomo en una determinada área geográfica.

En el caso de Latinoamérica tenemos a LACNIC, que es una entidad con sede en Uruguay que se encarga de evaluar los requerimientos de las empresas y los ISP para luego aprobar (o no) la entrega de direcciones IP y números de AS públicos.

¿Qué es un Número de Sistema Autónomo?


Un ASN (Autonomous System Number), a veces llamado simplemente AS es un número entre 0 y 65535, que define unívocamente a una entidad, a sus equipos, direcciones públicas y a sus políticas de enrutamiento y manejo de tráfico.

Generalmente los ISP’s que están conectados a varios proveedores mayoristas distintos tienen un ASN, o bien las corporaciones grandes con sedes en varios países.

Al igual que las direcciones IP, hay ASN públicos (que aprueba y otorga el RIR) y privados que pueden ser utilizados al mismo tiempo en varias redes, siempre y cuando no publiquen información a la Internet.

Una aplicación normal de un ASN en el ámbito laboral cotidiano es referirse a “Las redes o publicaciones del ASN1234” en vez de enumerar todas ellas (200.x.x.0/24, 200.x.y.0/24, etc...).

¿Por qué es importante filtrar los Bogons?


Según el conocimiento popular, se sabe que si se usa la conexión de un ISP para realizar tareas malintencionadas tales como hacer SPAM, escanear puertos, hacer ataques de denegación de servicio, etc., las autoridades pueden identificarme porque saben concretamente que esa IP desde donde realicé el ataque pertenece a un único ISP (o sistema autónomo).Entonces podrían rastrearme obligando al ISP a dar los datos del cliente que tenía esa IP en el momento del ataque, generalmente mediante acciones legales.

Ahora bien, como se sabe que los rangos IP publicados en el BOGON aún no son de nadie, contando con la infraestructura necesaria pueden adueñarse temporalmente de un rango libre, realizar el ataque y luego liberarlo, haciendo más difícil el rastreo (aunque no imposible).

Esto es debido a la negligencia de los mayoristas que no se fijan en las redes que publican sus clientes, pero eso es una cuestión más avanzada de BGP que por ahora no nos interesa.

Actualmente debemos saber que mientras más empresas dispongamos de filtros de Bogon, más dificil va a ser enviar basura a estos agresores que ganan millones a cuesta de nuestros servicios.

La práctica de filtrado trae como consecuencia en que vamos a disminuír la cantidad de ancho de banda gastado en "basura", vamos a entregar un enlace a internet más "limpio" a nuestros abonados y vamos a asegurar que nuestro servicio no cause molestias al resto de internet.

¿Cómo puedo filtrar el tráfico desde/hacia las redes Bogon?


Depende de la implementación de cada equipo de nuestro router de borde, se pueden filtrar utilizando un firewall o bien forzando que los mismos vayan por una ruta que no llega a ningún lado.
El problema principal es que de vez en cuando, alguna red que estaba en Bogon se entrega a un determinado AS, por lo que todo el mundo debería "desfiltrar" esa red para que el tráfico desde ella no se pierda. Esto trae la problemática de que las listas deben chequearse periódicamente para verificar que no se esté bloqueando tráfico legítimo, con la consecuente carga administrativa que esta labor define

Todo esto termina en que cada ISP tiene Bogons desactualizados o bien incompletos, y la solución termina siendo parcial.

¿Cómo podemos mantener actualizadas nuestras reglas de Bogon


en forma automática?


Una de las propuestas planteadas es usar el protocolo de enrutamiento dinámico llamado BGPv4 para conectarnos con un único responsable de la actualización de las reglas, que tenga contacto directo con cada RIR para enterarse al instante de los rangos que son entregados a los AS.

Este responsable propuesto es una organización sin fines de lucro llamada "Team Cymru" que permite que nos  conectemos a ellos para enviarnos las listas actualizadas mediante el protocolo antes mencionado.

¿Qué es BGPv4?


Sin entrar en demasiados detalles, es el protocolo de enrutamiento que hoy hace andar internet. Este hace que cada sistema autónomo intercambie información de sus redes con sus "vecinos".

Por su naturaleza se asemeja bastante a lo que es una VPN, en donde un equipo se conecta a otro sin importar la cantidad de redes que haya en el medio. Obviamente, no se intercambia tráfico de datos, sino actualizaciones de enrutamiento para que cada equipo sepa que redes existen en el otro lado.

¿Qué necesito para usar BGPv4?



  1. Uno o más routers que soporten BGPv4 con direcciones IP estáticas y políticas de ruteo correctamente configuradas.

  2. Un ASN público o privado (asignado por nosotros).

  3. Conectividad de ida y vuelta hasta el router vecino (neighbor) con el que vamos a establecer la conexión. No  vale hacer NAT.


¿Qué pretendemos hacer con este proyecto?


La idea de este proyecto es que algunas empresas con una visión clara del problema y con recursos suficientes podamos dar acceso a las listas de bogons, obviamente utilizando un ASN privado. Tampoco pensamos dejar afuera a la gente que tenga IP dinámica, por lo que seguramente soportaremos la conexión vía VPN para hacer BGPv4
con IP's privadas.

Nuevamente, la idea es mantener filtradas las amenazas que andan por la red de redes, mientras más nodos, mejor.

Diagrama:


Proyecto Bogon Server Team Cymru


En este proyecto, los ISP/Empresas que dispongamos de los recursos como para conectarnos al Team Cymru vamos a recibir las listas para luego permitir que otros ISP/Empresas se conecten a nosotros para recibir la misma información.


Por una cuestión de redundancia y calidad en el servicio es deseable que cada equipo se conecte a dos “Bogon Servers” remotos que en lo posible van a estar geográficamente separados.


Entre ellos también se podrá realizar un enlace virtual intermedio, que facilitará que (si así lo desean estos) se pueda proveer el servicio a clientes de un tercer nivel.



¿Qué recursos de hardware y de ancho de banda necesito para tener el servicio?


La sesión de BGP opera sobre TCP, por lo que es una conexión cliente‐servidor tal cual una sesión de Telnet.

Según los laboratorios hechos, cada sesión de BGP (que se mantiene abierta enviando paquetes de keepalive) consume hasta 3 kbps salvo una ráfaga de unos pocos kbps más cuando se envían las actualizaciones (cuando se cambia la lista de Bogon).

En cuanto a recursos de CPU y de memoria, debemos notar que la lista de Bogon tiene menos de 50 redes al día de la fecha (09/10/2008), y que lógicamente va en disminución a medida que se asignan, por lo que el consumo de CPU y memoria del equipo que hace BGP es despreciable.

Dicen que configurar BGP es difícil y/o peligroso para la estabilidad de mi red. ¿Es cierto eso?


Configurar las sesiones de BGP no es peligroso ni inestable si se configura adecuadamente contemplando la seguridad en ambos extremos. En caso de negligencia o configuración parcial pueden crearse algunos problemas.

En cuanto a la dificultad, es casi nula, porque proveeremos las configuraciones necesarias para “copiar y pegar” aparte de realizar un análisis previo de requisitos especiales del cliente.

¿Este servicio tiene o va a tener costo?


No.

Mientras más basura filtren todos (remota y propia), menos basura me va a llegar a mí.

Es un compromiso de ambas partes. Así debería funcionar internet. Obviamente y dado que es un servicio gratuito que involucra ancho de banda, equipos complejos y varias horas de trabajo mental sin ninguna recompensa material, no podemos asegurar un SLA o una calidad de servicio determinada.

¿Qué formas de filtrado podemos usar?


Hasta ahora vimos dos variantes:

  1. Se reciben las rutas por BGP y se ingresan en la tabla de enrutamiento, mediante un filtro a cada ruta se le cambia el Next‐Hop hacia una IP que tiene una ruta estática a una interface que dropea el tráfico (Estilo Null0 o Blackhole).

  2. Se reciben las rutas por BGP y se ingresan en la tabla de enrutamiento, mediante un filtro a cada ruta se le pone un Routing‐Mark que luego una regla de filtrado usa para descartar el tráfico.


¿Si yo ya tengo BGP configurado contra mi(s) proveedor(es), esto va a afectar mi servicio?


No.  Solo se evaluará el caso antes de proponer la configuración a ingresar en el equipo.

¿Las redes Bogon incluyen las definidas en RFC1918?


Si, y debido a esto es recomendable que si el cliente usa direccionamiento privado en su red (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) se haga alguna corrección en la configuración de filtros de BGP.

Consultar antes de habilitar.

4 comentarios:

Blog tech-nico.com » Limpiemos internet entre todos: Proyecto bogon server dijo...

[...] para que mas o menos entiendan como funciona y de que se trata). Para mas detalles pueden acceder a Capaocho.net que hay un how to muy bien [...]

k dijo...

Hola Ariel, queria consultarte si el proyecto sigue funcionando. Un gran saludo. Nicolas de tech-nico.com

Bruno dijo...

Hola Ariel, mucho tiempo despues tengo la misma consulta que Nicolas. Sigue en pie el proyecto?

Ariel S. Weher dijo...

15 años después, pueden ver el avances de todas estas ideas aquí: https://www.team-cymru.com/community-services

Hoy en día hay cosas mucho más interesantes y gratuitas :-)

Publicar un comentario