Registratie van RPKI-informatie voor een veilige routering

Registratie van RPKI-informatie voor een veilige routering

01-11-2018 14:46:58

rpki-veilige-routering.jpg
'Onder de motorkap' van het internet wordt al heel lang het BGP-protocol gebruikt om routeringsinformatie uit te wisselen tussen netwerken. De eerste versies van dit protocol stammen al uit 1989, toen het internet nog in de kinderschoenen stond. In de loop der jaren is er wel het nodige aan het protocol verbeterd, maar een van de basisprincipes is hetzelfde gebleven; er wordt uitgegaan van vertrouwen tussen netwerken. In grote mate vertrouwen netwerken de routeringsinformatie die zij met elkaar uitwisselen, zonder dat er een goede controle is op de correctheid en validiteit van deze informatie.

Inmiddels is het internet al lang geen academische proeftuin meer. We zijn er volledig afhankelijk van in ons dagelijks leven. Dit betekent helaas ook dat er dingen op het internet gebeuren die we liever niet zouden zien. Daarnaast is het aantal bedrijven (en daarmee mensen) dat verantwoordelijk is voor het operationeel beheer van deze netwerken zo groot, dat er geen sprake is van een 'inner circle' die elkaar kent en problemen onderling snel oplossen.

In de praktijk zien we twee problemen die zich regelmatig voordoen en gerelateerd zijn aan dit vertrouwen:

1. Onopzettelijke fouten in de configuratie van BGP op routers hebben tot gevolg dat netwerkbeheerders onbedoeld routes adverteren waar zij niet verantwoordelijk voor zijn. Het gevolg hiervan is dat het betreffende netwerk onbereikbaar wordt vanuit netwerken die deze foutieve route accepteren. Vaak betreft het hierbij typefouten van IP-adressen of subnetmasks, die dus verstrekkende gevolgen kunnen hebben.

2. Kwaadwillenden proberen opzettelijk verkeer naar bepaalde IP-adressen om te leiden door daar routes voor te adverteren. Gebruikers van die netwerken die deze routes accepteren zullen dan op een verkeerde plek uitkomen. Er zijn inmiddels al een aantal voorvallen bekend waarbij specifieke websites omgeleid werden om zo accountgegevens van bezoekers op te vangen, waarna er (digitaal) geld buitgemaakt werd. Ook worden dergelijke technieken regelmatig gebruikt om tijdelijk IP-adressen te 'lenen' om spam vanaf te kunnen versturen.

In de afgelopen jaren hebben we gezien dat de frequentie en impact van dergelijke incidenten sterk toegenomen is. Als BGP-sprekend netwerk kun je op twee manieren last ondervinden van deze zogenaamde 'BGP Hijacks':

1. Je leert ten onrechte routes, waardoor gebruikers van je netwerk omgeleid worden naar een netwerk dat zich voordoet als een ander netwerk.

2. Een ander netwerk adverteert ten onrechte IP-adressen van jouw netwerk, waardoor bezoekers niet meer bij jouw netwerk uitkomen, maar bij een (mogelijk kwaadwillend) ander netwerk.

De oplossing: RPKI

Het is daarom hoog tijd om routering op het internet veiliger te maken. Gelukkig is er inmiddels een oplossing om een groot deel van deze problemen te voorkomen, namelijk RPKI (Resource Public Key Infrastructure).

RPKI maakt het mogelijk om van eigenaren van IP-blokken te registreren bij welk netwerk (geïdentificeerd door een autonoom systeem (AS) nummer) ze horen en wat de omvang van het IP-blok in de routeringstabellen hoort te zijn. Deze registraties kunnen via een digitale handtekening op correctheid gecontroleerd worden. De regionale internet registries (RIPE in Europa, ARIN in Noord-Amerika, APNIC in Azië, etc), die verantwoordelijk zijn voor de toewijzing van IP-adressen aan ISP's, vervullen hierbij een cruciale rol. Zij zorgen ervoor dat het registreren van deze RPKI-informatie mogelijk is en dat deze gevalideerd kan worden door derden.

Het in gebruik nemen van RPKI bestaat voor een netwerk uit twee stappen:

1. Het registreren van RPKI-informatie van alle aan het netwerk toegewezen IP-blokken

2. Het controleren van RPKI-informatie voor alle routes die ontvangen worden van anderen netwerken en hierop handelen. Als een IP-blok niet voldoet aan de registratie (bijvoorbeeld omdat deze aan een ander netwerk toegewezen is) moet deze route niet geaccepteerd worden.

RPKI bij BIT

Alle aan BIT toegewezen IP-adressen zijn inmiddels voorzien van een RPKI-registratie. Dit verkleint de impact bij een hijack van deze IP-adressen, maar alleen als andere netwerken ook de tweede hierboven genoemde stap implementeren. De routers van BIT controleren daarom op RPKI-informatie en foutieve routes worden geweigerd.

Helaas is het overgrote deel van de IP-adressen die op internet gebruikt worden nog niet voorzien van een RPKI-registratie en kijkt een nog kleiner deel van de routers naar deze registraties, maar de groei is inmiddels ingezet. Nederland lijkt daarin voorop te lopen, mede dankzij de aandacht die RPKI kreeg op de NLNOG Dag 2018.

Problemen gerelateerd aan RPKI

Soms komt het voor dat de gepubliceerde RPKI-informatie niet overeenkomt met wat er door routers geadverteerd wordt, waardoor deze IP-adressen onbereikbaar zijn vanuit het netwerk van BIT, én ieder ander netwerk dat RPKI-validatie doet en ongeldige routes weigert.

Dit kan bijvoorbeeld gebeuren als gevolg van een netwerkmigratie waarbij twee netwerken samengevoegd zijn, of als IP-adressen van eigenaar wijzigen. Als de RPKI-registraties dan niet bijgewerkt worden, kan dit betekenen dat de validatie faalt en routes geweigerd worden.

Vanaf het aanzetten van RPKI-validatie op 18 september tot het moment van schrijven hebben wij vijf meldingen van klanten ontvangen over onbereikbaarheid van IP-adressen die te relateren zijn aan incorrecte RPKI-registraties. Drie hiervan zijn inmiddels door de eigenaar van de IP-adressen gecorrigeerd.

Natuurlijk zijn er op het internet ook diverse manieren om te controleren hoe "de wereld" de RPKI-status van een IP-reeks ziet, bijvoorbeeld bij RIPE en Hurricane Electric.

Meer weten?

Wil je meer weten over RPKI? Kijk dan eens naar de presentaties die gegeven werden op de NLNOG Dag 2018, waar RPKI één van de hoofdonderwerpen was. Ook is er veel informatie te vinden op de website van RIPE.

Beheer je zelf een netwerk dat via BGP routes uitwisselt? Overweeg dan om ook RPKI-validatie te implementeren om zo de kans op overlast door BGP-hijacks te voorkomen. Ben je eigenaar van eigen IP-adressen (zogenaamde PA-space bij RIPE)? Zorg dan dat er ROA's (Route Origin Authorization) aangemaakt worden. Dit is vrij simpel te regelen via de RIPE portal.


Door: Teun Vink