Saltar al contenido

¿Qué mecanismos de seguridad se utilizan en BGP y por qué fallan?

Nuestro team de trabajo ha estado largas horas buscando para dar resolución a tu búsqueda, te brindamos la solución por esto esperamos resultarte de mucha ayuda.

Solución:

Una palabra sobre BGP

BGP es el protocolo de enrutamiento que hace que Internet funcione. La revisión actual es BGP v4 y ha estado en uso desde 1995. Los proveedores de servicios de Internet (ISP) controlan una o varias redes y utilizan BGP para anunciar sus redes a sus pares intercambiando información de enrutamiento (rutas de Internet) sobre la red que controlan. Esas redes son dominios de enrutamiento independientes denominados sistemas autónomos (AS). A cada AS se le atribuye un identificador único (Número de AS o ASN), y actualmente se asignan alrededor de 40.000 ASN. El proceso de enrutamiento entre esos AS se denomina enrutamiento entre dominios y BGP es el protocolo utilizado para lograrlo.

Cada enrutador BGP contiene una base de información de enrutamiento (RIB) que almacena la información de enrutamiento. Cuando un enrutador decide actualizar su RIB, posteriormente propagará esta información a todos los demás enrutadores BGP vecinos a los que está conectado diciendo “Oye, puedo enrutarme a la red 1.2.3.0/12 a través de los números AS X, Y, Z“. Ellos, a su vez, decidirán si actualizan sus propias tablas y propagan más la información.

Tenga en cuenta que no hay un descubrimiento automático de pares en BGP, sino que los pares deben configurarse manualmente para intercambiar información de enrutamiento.

Exposición de BGP a ataques

El protocolo BGP en sí mismo no proporciona muchos mecanismos de seguridad.

El diseño de BGP no incluía protecciones específicas contra ataques o errores deliberados provenientes de pares o de personas externas que podrían causar interrupciones en el comportamiento de enrutamiento. Ejemplos de tales ataques incluyen:

  • Como se indica en BGP-VULN (RFC4272), No existen mecanismos internos de BGP que protejan contra ataques que modifiquen, eliminen, falsifiquen o reproduzcan datos., cualquiera de los cuales tiene el potencial de interrumpir el comportamiento general del enrutamiento de la red. Como protocolo TCP / IP, BGP está sujeto a todos los ataques TCP / IP, por ejemplo, suplantación de IP, robo de sesión, etc. Cualquier persona externa puede inyectar mensajes BGP creíbles en la comunicación entre pares BGP y, por lo tanto, inyectar información de enrutamiento falsa;
  • Cuando un enrutador anuncia nueva información de enrutamiento, BGP no se asegura de que use el número AS que se le ha asignado, lo que significa que un enrutador BGP puede anunciar rutas con cualquier número AS;
  • Un AS puede anunciar un prefix del espacio de direcciones no asignado o perteneciente a otro AS. Se llama prefix secuestro y se puede utilizar para realizar un ataque de hombre en el medio que inicialmente fue demostrado en DefCon 16 por Alex Pilosov y Anton “Tony” Kapela;
  • BGP no proporciona una vista global compartida de la información de enrutamiento correcta que facilitaría mucho la detección de rutas no válidas o maliciosas.

En resumen, BGP está altamente expuesto a false anuncios de ruta y hoy no hay ningún plan para remediar esta situación.

Protecciones de seguridad BGP

Así que se ve bastante mal desde el punto de vista de la seguridad. Pero, por otro lado, también hay algunos aspectos de seguridad positivos en BGP:

  • Las asociaciones de pares de BGP tienden a ser duraderas y static. Esto significa que esas asociaciones entre pares y la publicidad de ruta se pueden monitorear de manera eficiente y permite una reacción rápida de las diversas partes interesadas en caso de un secuestro de Internet. Hay muchos servicios que brindan monitoreo de BGP (algunos productos comerciales, de código abierto y gratuitos);
  • Los enrutadores BGP pueden implementar el filtrado de rutas, lo que permite realizar la selección de anuncios entrantes, aunque no existe un estándar ampliamente implementado para eso y depende de cada ISP decidir si desea implementarlo y cómo hacerlo;
  • BGP implementa una opción de firma TCP MD5 (un MAC, como se define en RFC 2385) para proteger las sesiones de BGP contra los ataques de TCP Reset (RST) Dos. Actualmente es compatible con la mayoría de los fabricantes de enrutadores (por ejemplo, Cisco) y sistemas operativos de código abierto (por ejemplo, FreeBSD). Pero esta protección solo cubre un número limitado de ataques y se basa en tecnologías débiles;
  • La falta de medidas de protección de seguridad engorrosas también permite reacciones rápidas contra DDoS y la propagación de malware a través de sumideros y enrutamiento de agujeros negros.

Mejoras futuras

Los esfuerzos recientes dentro de los organismos de estándares y en la comunidad de investigación han intentado proporcionar nuevas arquitecturas para la seguridad de BGP. Esto incluye:

  • Uso de infraestructura de clave pública para compartir criptografía pública keys
    entre pares y permitir que los enrutadores establezcan la integridad de los anuncios de BGP a escala global, así como atestiguar que una entidad está autorizada a anunciar un recurso en particular;
  • Usar IPsec para asegurar la sesión BGP y los mensajes que se pasan entre pares;
  • Establecer una autoridad independiente para validar la información de rutas entre dominios. Los enrutadores BGP utilizarían esta autoridad de terceros para verificar los anuncios que reciben.

Se necesitaría una actualización importante de BGP para remediar esos problemas y ofrecer un nivel adecuado de protección contra ataques sofisticados de BGP. RFC 4278, un estudio de madurez de los mecanismos de seguridad de BGP, considera que el beneficio marginal de tales esquemas en esta situación sería bajo y no valdría la pena el esfuerzo de transición.


Recursos adicionales que pueden resultarle interesantes:

Implementación de la opción de autenticación TCP TCP-AO y la opción de autenticación TCP RFC

¿Cuál es el propósito de la seguridad BGP TTL?

BGP Looking Glass: según su sitio web:

Los servidores de BGP Looking Glass son servidores en Internet a los que se puede acceder de forma remota con el fin de ver información de enrutamiento. Básicamente, el servidor actúa como un portal limitado de solo lectura para los enrutadores de cualquier organización que esté ejecutando el servidor Looking Glass. Por lo general, los ISP o NOC administran los servidores Looking Glass de acceso público.

Creo que el artículo “Una encuesta sobre problemas y soluciones de seguridad de BGP” es muy útil para responder a su pregunta.

BGP es especialmente vulnerable a los ataques relacionados con el enrutamiento, especialmente cuando los ISP configuran incorrectamente su anuncio de ruta. Los incidentes notables que no tienen intenciones maliciosas incluyen Pakistan Telecom bloquea YouTube, ISP malasio bloquea Yahoo o ISP turco se apodera de Internet, etc. Dichos incidentes podrían paralizar toda Internet y los atacantes pueden utilizarlos para causar daño.

Por lo tanto, los chicos de seguridad conocen bien las vulnerabilidades de BGP y están trabajando en una solución. Por ejemplo, según la encuesta, el gobierno de Estados Unidos cita la seguridad de BGP como parte de la estrategia nacional para proteger el ciberespacio. Además, el Grupo de Trabajo de Ingeniería de Internet (IETF) está trabajando en un nuevo borrador para asegurar BGP.

En BGP, un enrutador (o altavoz BGP) envía un anuncio de ruta cuando hay una nueva ruta disponible y un mensaje de retiro cuando la ruta ya no existe. Cada sistema autónomo (AS) agrega su número de AS al comienzo de la ruta de AS antes de anunciar la ruta al siguiente AS. En otras palabras, BGP es un protocolo de vector de ruta que anuncia las posibles rutas para llegar a ciertos destinos.

Para decidir la ruta de reenvío, cada enrutador IP dará prioridad al más largo (y más específico) prefix que coincide con la dirección IP de destino. Por ejemplo, un anuncio de ruta de 211.120.132.0/22 ​​es más específico que 211.120.0.0/12. Por lo tanto, si quiero que el tráfico pase a través de mi enrutador por alguna razón, puedo anunciar cientos de rutas más específicas. El filtrado de anuncios de BGP sospechosos es una forma sencilla de prevenir estos ataques de enrutamiento. Los ISP pueden filtrar las rutas de los clientes por prefijos que el cliente no posee, limitar el número de prefijos que cada enrutador vecino puede anunciar o bogons, etc. Pero el filtrado por sí solo es insuficiente, ya que no todos los ISP aplicarán las “mejores prácticas comunes” para filtrar rutas. Entonces, todavía puedes recibir false rutas de otros ISP que, sin saberlo, las reenvían.

Secure BGP (S-BGP) es una de las soluciones notables para los problemas de enrutamiento actuales, pero no se implementa ampliamente debido a sus grandes gastos generales de cómputo criptográfico y la cooperación de los registros de Internet. En S-BGP, PKI y certificados se utilizan para autenticar la propiedad de los prefijos y la información de ruta especificados. Básicamente, esto evita que un ISP falsifique un anuncio de ruta que no es de su propiedad. Por lo tanto, se deben dar más incentivos para promover el despliegue de S-BGP en Internet.

Solo me he centrado en el enrutamiento de ataques relacionados. Sin embargo, todavía existen otros ataques contra la confidencialidad, la integridad de los mensajes o DoS que se pueden encontrar en la encuesta.

Hay dos problemas de seguridad potenciales con BGP: puede estar hablando con el dispositivo incorrecto o el dispositivo correcto puede estar diciendo algo incorrecto.

Hablar BGP con el dispositivo incorrecto puede ser tan dramático como que alguien redireccione el cable hacia su vecino BGP hacia un enrutador diferente, y luego hacer que ese enrutador se haga pasar por su vecino BGP. El riesgo más mundano consiste en los ataques de restablecimiento de TCP. Las sesiones de TCP pueden permanecer activas indefinidamente y también pueden estar inactivas durante largos períodos de tiempo. Por lo tanto, está lejos de ser inconcebible que cuando los sistemas A y B tienen una sesión TCP y el sistema A se reinicia, A recibe paquetes TCP de B después del reinicio. Obviamente, A entonces ya no tiene una sesión TCP activa. Por lo tanto, envía a B un paquete de “reinicio de TCP”, que le pide a B que cancele la sesión.

Como TCP no tiene características de seguridad sólidas, un tercero puede enviar un restablecimiento de TCP falsificado a A que parece provenir de B. A continuación, A eliminará su sesión de TCP y, por lo tanto, la sesión de BGP que se ejecuta en esa sesión de TCP, interrumpiendo el flujo de tráfico entre A y B hasta que se pueda configurar una nueva sesión. El atacante debe enviar un paquete con las direcciones IP, los números de puerto y el número de secuencia TCP correctos. Las direcciones IP generalmente no son demasiado difíciles de encontrar y un número de puerto es 179 (el número de puerto BGP). Entonces, el atacante simplemente envía paquetes con todos los posibles puertos restantes y números de secuencia, y dentro de un minuto más o menos encontrarán la combinación correcta y usted podrá despedirse de esa sesión de BGP.

Hay tres mecanismos de seguridad que pueden proteger contra esto: la contraseña BGP TCP MD5, BGPsec y el Mecanismo de seguridad TTL generalizado (GTSM).

El sistema de contraseñas BGP TCP MD5 se describe en RFC 2385, publicado en 1998. Con solo seis páginas, es una RFC muy corta, por lo que si nunca antes ha leído una RFC, 2385 es una buena opción para empezar.

Si te sientes impulsado, eres capaz de dejar un post acerca de qué le añadirías a esta noticia.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *