Yandex présente RPKI

Salut, je m'appelle Alexander Azimov. Chez Yandex, je développe divers systèmes de surveillance, ainsi que l'architecture des réseaux de transport. Mais aujourd'hui, nous allons parler de BGP.



Il y a une semaine, Yandex a inclus des ROV (Route Origin Validation) aux jonctions avec tous les partenaires pairs, ainsi qu'avec les points d'échange de trafic. Pour savoir pourquoi cela a été fait et comment cela affectera l'interaction avec les opérateurs de télécommunications, lisez ci-dessous.

BGP et ce qui ne va pas


Vous savez probablement que BGP a été conçu comme un protocole de routage interdomaine. Cependant, au cours du voyage, le nombre de cas d'utilisateurs a réussi à augmenter: aujourd'hui BGP, grâce à de nombreuses extensions, s'est transformé en un bus de messages, couvrant les tâches du VPN de l'opérateur au SD-WAN désormais à la mode, et a même trouvé une utilisation comme transport pour le contrôleur de type SDN, qui tourne vecteur de distance BGP dans quelque chose de similaire au protocole d'état des liens.


Fig. 1. BGP SAFI

Pourquoi BGP a-t-il reçu (et continue-t-il de recevoir) autant d'utilisations? Il y a deux raisons principales:

  • BGP est le seul protocole qui fonctionne entre les systèmes autonomes (AS);
  • BGP prend en charge les attributs au format TLV (type-length-value). Oui, le protocole n'est pas le seul, mais comme il n'y a rien pour le remplacer au niveau des articulations entre opérateurs télécoms, il est toujours plus rentable d'y attacher un élément fonctionnel de plus que de supporter un protocole de routage supplémentaire.

Qu'est-ce qui ne va pas avec lui? En bref, le protocole manque de mécanismes intégrés pour vérifier l'exactitude des informations reçues. Autrement dit, BGP est un protocole de confiance a priori: si vous voulez dire au monde que vous possédez maintenant un réseau de Rostelecom, MTS ou Yandex, s'il vous plaît!

Filtre IRRDB - Le meilleur des pires


La question se pose - pourquoi dans cette situation, Internet fonctionne toujours? Oui, cela fonctionne la plupart du temps, mais il explose périodiquement, rendant des segments nationaux entiers inaccessibles. Malgré le fait que l'activité de piratage dans BGP augmente également, la plupart des anomalies se produisent toujours en raison d'erreurs. Un exemple de cette année est l' erreur d'un petit opérateur biélorusse qui, pendant une demi-heure, a rendu une partie importante d'Internet inaccessible aux utilisateurs de MegaFon. Un autre exemple - l' optimiseur BGP enragé a cassé l'un des plus grands réseaux CDN au monde.


Fig. 2. Interception du trafic Cloudflare

Mais encore, pourquoi de telles anomalies se produisent-elles tous les six mois, et pas tous les jours? Parce que les opérateurs de télécommunications utilisent des bases de données d'informations de routage externes pour vérifier ce que leurs voisins obtiennent de BGP. Il existe de nombreuses bases de données de ce type, certaines sont gérées par des bureaux d'enregistrement (RIPE, APNIC, ARIN, AFRINIC), certains sont des acteurs indépendants (le plus célèbre - RADB), et il existe également tout un ensemble de bureaux d'enregistrement appartenant à de grandes entreprises (Level3, NTT, etc.). Grâce à ces bases de données, le routage inter-domaines maintient la relative stabilité de son travail.

Cependant, il y a des nuances. Les informations d'itinéraire sont vérifiées sur la base des objets ROUTE-OBJECTS et AS-SET. Et si le premier implique une autorisation de la part de l'IRRDB, alors l'autorisation est absente en tant que classe pour la deuxième classe. Autrement dit, n'importe qui peut ajouter n'importe qui à ses ensembles et ainsi contourner les filtres des fournisseurs supérieurs. De plus, l'unicité de la dénomination AS-SET entre les différentes bases IRR n'est pas garantie, ce qui peut entraîner des effets étonnants avec une perte soudaine de connectivité chez l'opérateur télécom, qui n'a pour sa part rien changé.

Un problème supplémentaire est le modèle d'utilisation AS-SET. Il y a deux points:

  • Lorsqu'un opérateur a un nouveau client, il l'ajoute à son AS-SET, mais ne le supprime presque jamais;
  • Les filtres eux-mêmes sont configurés uniquement aux jonctions avec les clients.

En conséquence, le format moderne des filtres BGP dégrade progressivement les filtres aux interfaces avec les clients et a priori la confiance dans ce qui vient des partenaires peer-to-peer et des fournisseurs de transit IP.

Qu'est-ce qui remplace les filtres de préfixe basés sur AS-SET? La chose la plus intéressante est qu'à court terme - rien. Mais il existe des mécanismes supplémentaires qui complètent le fonctionnement des filtres basés sur IRRDB, et tout d'abord c'est bien sûr RPKI.

RPKI


Simplifié, vous pouvez imaginer l'architecture RPKI comme une base de données distribuée dont les enregistrements peuvent être vérifiés cryptographiquement. Dans le cas de ROA (Route Object Authorization), le propriétaire de l'espace d'adressage est le signataire, et l'enregistrement lui-même est un triple (préfixe, asn, max_length). En fait, cette entrée postule ce qui suit - le propriétaire du préfixe $ de l'espace adresse a permis à l'AS avec le numéro $ asn d'annoncer des préfixes d'une longueur ne dépassant pas $ max_length. Et les routeurs, à l'aide du cache RPKI, peuvent vérifier la conformité avec une paire de haut-parleurs à préfixe prioritaire lors de leurs déplacements .


Figure 3. Architecture RPKI

Les objets ROA sont standardisés depuis longtemps, mais jusqu'à récemment, en fait, ils n'étaient restés que sur le papier du journal de l'IETF. À mon avis, la raison de cela semble effrayant - un mauvais marketing. Une fois la normalisation terminée, il a été avancé comme une incitation à protéger les ROA contre le détournement de BGP - et ce n'était pas vrai. Les attaquants peuvent facilement contourner les filtres ROA en insérant le bon numéro de haut-parleur au début du chemin. Et dès que cette prise de conscience est venue, la prochaine étape logique a été le rejet de l'utilisation du ROA. Et vraiment, pourquoi avons-nous besoin de la technologie si elle ne fonctionne pas?

Pourquoi est-il temps de changer d'avis? Parce que ce n'est pas toute la vérité. Le ROA ne protège pas contre les activités de piratage dans BGP, mais protège contre le détournement accidentel du trafic , par exemple, contre les fuites statiques dans BGP, qui devient de plus en plus courant. De plus, contrairement aux filtres basés sur IRR, le ROV peut être utilisé non seulement aux interfaces avec les clients, mais également aux interfaces avec les pairs et les fournisseurs supérieurs. Autrement dit, avec l'introduction de RPKI, BGP laisse progressivement confiance a priori.

Désormais, la vérification des itinéraires basée sur le ROA est progressivement introduite par les principaux acteurs: les plus grands IX européens rejettent déjà les itinéraires incorrects, parmi les opérateurs de niveau 1, il convient de souligner AT&T, qui a activé les filtres aux jonctions avec ses partenaires d'homologation. De plus, les plus grands fournisseurs de contenu conviennent au shell. Et des dizaines d'opérateurs de transports en commun de taille moyenne l'ont déjà mis en œuvre discrètement, sans en parler à personne. Pourquoi tous ces opérateurs mettent-ils en œuvre RPKI? La réponse est simple: pour protéger votre trafic sortant des erreurs des autres. C'est pourquoi Yandex est l'un des premiers de la Fédération de Russie à inclure le ROV à la frontière de son réseau.

Que se passera-t-il ensuite?


Maintenant, nous avons inclus la vérification des informations de routage aux jonctions avec les points d'échange de trafic et le peer-to-peer privé. Dans un avenir proche, la vérification sera également incluse avec les fournisseurs de trafic en amont.



Qu'est-ce que cela change pour vous? Si vous souhaitez augmenter la sécurité du routage du trafic entre votre réseau et Yandex, nous vous recommandons:

  • La signature de votre espace d'adressage sur le portail RIPE est facile, cela prend en moyenne 5 à 10 minutes. Cela protégera notre connectivité au cas où quelqu'un détournerait involontairement votre espace d'adressage (et cela se produira tôt ou tard);
  • Mettre un des caches RPKI open source ( valideur de maturité , routinateur ) et activer la vérification de l'itinéraire à la frontière du réseau prendra plus de temps, mais cela ne causera pas de problèmes techniques, encore une fois.

Yandex prend également en charge le développement d'un système de filtrage basé sur le nouvel objet RPKI - ASPA (Autonomous System Provider Authorization). Les filtres basés sur des objets ASPA et ROA peuvent non seulement remplacer les AS-SET «qui fuient», mais également fermer les attaques MiTM à l'aide de BGP.

Je parlerai en détail de l'ASPA dans un mois à la conférence Next Hop. Il y aura également des collègues de Netflix, Facebook, Dropbox, Juniper, Mellanox et Yandex. Si vous êtes intéressé par la pile réseau et son développement dans le futur - venez, l' inscription est ouverte .

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


All Articles