Complementando la seguridad de Internet con IRR: protección ante anuncios de rutas incorrectas

Fecha de publicación 04/07/2024
Autor
INCIBE (INCIBE)
Portada blog IRR

En las etapas iniciales de Internet, durante la década de 1980, la red se caracterizaba por ser un entorno sencillo y experimental. Durante esos primeros años, la gestión del enrutamiento no necesitaba abordar la extensa y heterogénea malla de sistemas autónomos y políticas que caracteriza a la Internet actual. Sin embargo, el escenario comenzó a cambiar drásticamente a mediados de la década de 1990, cuando Internet experimentó una expansión sin precedentes, tanto en términos de usuarios, como de redes participantes, comenzando a requerir mecanismos dedicados y eficientes para la administración del enrutamiento en toda la red global.

Fue en este punto de inflexión donde el Registro de Enrutamiento de Internet (IRR) fue concebido, complementando a otros protocolos, como BGP. Mientras que BGP facilita el intercambio de información de rutas entre sistemas autónomos, el IRR proporciona un marco que permite a los operadores de red documentar, compartir, y validar esta información. Esto no solo refuerza la seguridad y fiabilidad del enrutamiento global de Internet, sino que también promueve una gestión y coordinación más coherente y colaborativa entre los operadores de red en la comunidad de Internet global.

El IRR consiste en un repositorio distribuido y globalmente accesible, para documentar la información de rutas entre los diversos operadores de red, asegurando la coherencia y fiabilidad del enrutamiento a través de todo Internet. La colaboración en esta iniciativa es diversa y amplia, involucrando a una variedad de actores de diferentes sectores y regiones para mejorar la coordinación y seguridad de las rutas en Internet, como los Registros de Recursos de Internet (RIR) o algunos grandes ISP.

Esta colaboración ayuda a mejorar el filtrado de anuncios de rutas en la red permitiendo identificar y descartar anuncios que no coincidan con las rutas y políticas registradas. Este mecanismo de filtrado es crucial para prevenir problemas, como el secuestro de prefijos y las fugas de rutas, ya que ayuda a asegurar que solo los anuncios de rutas válidas y autorizadas sean aceptados y propagados a través de la red. Además, los datos del IRR son replicados y puestos a disposición en varias ubicaciones alrededor del mundo, permitiendo un acceso robusto y redundante a la información de enrutamiento.

Funcionamiento básico

Políticas de enrutamiento

Las políticas de enrutamiento son cruciales para comunicar y establecer cómo las redes interactúan y cómo el tráfico es dirigido a través de Internet. Las políticas se pueden crear utilizando el Routing Policy Specification Language (RPSL) basado en los RFC 2622 y RFC 2650. Para ello, lo primero es definir los objetos de encaminamiento funcionales, esencialmente, objetos de entidad y objetos de ruta.

El objeto principal utilizado para describir las políticas de un AS en RPSL es el objeto aut-num. Este objeto incluye atributos que describen las políticas de importación y exportación del AS, entre otros detalles. Veamos un ejemplo para el AS64500:

Donde:

  • aut-num: identifica el ASN, en este caso, AS64500.
  • as-name: un nombre simbólico para el AS.
  • descr: una breve descripción del AS.
  • import: define las políticas de importación de rutas. En este caso, AS64500 acepta todos los anuncios de rutas (accept ANY ) desde AS64501.
  • export: define las políticas de exportación de rutas. AS64500 anuncia rutas de su propio AS-set (announce AS-EXAMPLENET) a AS64501.
  • admin-c y tech-c: contacto administrativo y técnico, respectivamente.
  • created: registro de creación.
  • last-modified: registro de última modificación.
  • source: identifica a qué IRR pertenece este objeto.

A su vez, los objetos de ruta (route) formalizan los anuncios de un prefijo IP en Internet, como se observa en el siguiente ejemplo.

Donde:

  • route: es el prefijo IP que se está anunciando en la red. En este caso, es 203.0.113.0/24. Este campo indica la red que se está anunciando en BGP.
  • descr: proporciona una descripción para el objeto de ruta. Es útil para proporcionar información contextual sobre el uso del prefijo, por ejemplo, si es utilizado por un cliente específico o para una red específica dentro de tu infraestructura.
  • origin: es el ASN desde el cual se origina el anuncio de la ruta. En este caso, AS64500 está anunciando el prefijo 203.0.113.0/24. Esto significa que cualquier anuncio BGP para este prefijo debería provenir de AS64500 para ser considerado legítimo.
  • source: este campo identifica el IRR en el que se registra el objeto.

Elementos de autenticación y autorización adicionales

Para evitar un uso no autorizado o descontrolado de los objetos dentro del IRR, existen atributos de autenticación que establecen un marco de control estricto sobre quién puede modificar y representar las políticas de enrutamiento y los objetos relacionados. Su uso es fundamental para establecer un principio de confianza entre los pares que intercambian la información.

  • Maintained By (mnt-by): identifica a la autoridad para crear, modificar o eliminar un objeto en la base de datos y asegura que cualquier cambio en un objeto específico sea realizado únicamente por entidades autorizadas.
  • Maintained Lower (mnt-lower): especifica quién tiene la autoridad para crear objetos más específicos (subredes o subconjuntos) bajo un objeto existente en la base de datos, previniendo creaciones no autorizadas y ayudando a mantener una jerarquía de enrutamiento coherente y segura.
  • Maintained Routes (mnt-routes): define quién tiene la autoridad para especificar rutas dentro de un objeto de rango de direcciones IP. Y asegura que los anuncios de rutas asociadas a bloques de direcciones IP específicos sean administrados únicamente por operadores de red autorizados.

La asignación de estas autoridades pasa por la definición de un objeto fundamental, el mantenedor (mntner) que se utiliza para proteger otros objetos, asegurando que sólo las entidades autorizadas puedan realizar cambios en los objetos que están bajo su mantenimiento. Utiliza métodos de autenticación, como contraseñas o cifrado PGP, para verificar las entidades que realizan cambios.
 

Ciclo de la publicación de objetos de enrutamiento

Publicar un objeto de enrutamiento, generalmente, involucra crear un objeto en la base de datos del IRR correspondiente. Cada uno puede tener sus propias interfaces y requerimientos específicos para la creación de objetos, no obstante, a continuación, se presenta un proceso general que podría aplicarse en la mayoría de los casos:

  1. Crear una cuenta en el IRR: antes de poder publicar información de enrutamiento, se requiere crear una cuenta o identidad en el registro (por ejemplo, RADB, ARIN, RIPE, etc.).
  2. Asegurar la autenticación y la autorización: consiste en crear un objeto mantenedor (Mntner) que contenga tu información de autenticación y autorización. Hay que asegurarse de tener la autorización necesaria para publicar los objetos y rutas para los bloques IP y números de sistema autónomos relevantes.
  3. Crear los objetos de ruta: define un objeto de entidad (IP o AS) o ruta que especifique el prefijo de la red que se desea anunciar. Generalmente, se suele utilizar la interfaz web o herramientas de línea de comandos proporcionadas por cada IRR para publicar los objetos de ruta y políticas asociadas.
Interfaz web del IRR de AFRINIC para registrar objetos

- Interfaz web del IRR de AFRINIC para registrar objetos. Fuente -

  1. Validar el registro: se debe comprobar que los objetos se han publicado correctamente y que la información de enrutamiento es accesible. En la práctica, los operadores de red pueden realizar consultas manuales sobre una dirección IP o un Sistema Autónomo (AS) a los repositorios de IRR que elijan, utilizando el comando whois o alguna de las varias herramientas web con esta funcionalidad.
  2. Configurar los routers después de haber registrado la información de enrutamiento es un paso crucial para garantizar que las políticas sean aplicadas efectivamente en la red. IRRToolSet es una suite de herramientas que se utiliza para ayudar a los operadores de red a configurar los routers de acuerdo con la información almacenada en el IRR.

    La suite incluye varias herramientas, entre ellas peval, rtconfig, y rpslcheck, que permiten a los usuarios consultar los IRR y generar configuraciones de router basadas en las políticas expresadas en RPSL.

  3. Mantenimiento: si las políticas o los prefijos anunciados cambian, se deben actualizar los objetos de ruta. Además, es recomendable verificar regularmente la exactitud de la información en el IRR y hacer los ajustes necesarios.

El siguiente diagrama proporciona una representación visual del proceso de publicación y validación de rutas en el IRR, destacando los pasos críticos:

Esquema de funcionamiento de publicación y verificación de ruta entre AS

- Esquema de funcionamiento de publicación y verificación de ruta entre AS. -

Conclusión

La operatividad de Internet reside en su capacidad para gestionar de manera eficiente y segura las políticas y anuncios de rutas, un aspecto crítico al que contribuye el IRR, proporcionando un marco de seguridad y confiabilidad en la transferencia de los paquetes de datos a través de Internet que ayuda en la prevención de los ataques de spoofing. Además, los IRR se conciben como una plataforma donde los operadores pueden colaborar, fomentando un ecosistema de Internet más transparente y confiable.

El IRR es un sistema de seguridad y confiabilidad compatible con otros, como RPKI (Resource Public Key Infrastructure). Mientras que el IRR ofrece un mecanismo de documentación detallada de las políticas y prefijos de enrutamiento de manera estructurada, el RPKI proporciona un nivel adicional de seguridad al utilizar criptografía para validar la autenticidad de los anuncios de rutas BGP. De este modo, la combinación y coexistencia de IRR y RPKI posibilitan la creación de un entorno de enrutamiento de Internet más seguro y verificable, dando un paso significativo hacia la mitigación de incidentes en Internet.