Voor het routeren van dataverkeer tussen netwerken, maken internetserviceproviders (isp’s) gebruik van het border gateway protocol (bgp). Daarmee staat het protocol aan de basis van internet. Nu blijkt dat het bgp ernstige beveiligingslekken bevat en daarmee kwetsbaar voor cybercriminelen.
BGP werd enkele decennia geleden ontwikkeld voor een handvol netwerken die gegevens met elkaar uit gingen wisselen. In die dagen kenden de operators elkaar persoonlijk. Je zou dus kunnen zeggen dat het protocol door netwerkbeheerders met de beste intenties en voor onschuldige netwerken is geschreven.
Veiligheid is iets anders. Het is namelijk mogelijk voor een netwerk om zich voor een ander netwerk voor te doen door de ip-adressen van het andere netwerk te adverteren. Dit wordt bgp-, prefix- of route-hijacking genoemd.
Aan isp’s worden publieke IP-adressen toegekend door een regionaal internetregister (RIR). Je zou denken dat dit een garantie is dat zij de enige partij zijn die deze ip-adressen kan gebruiken. Het probleem is echter dat iedereen met een netwerk dat gebruikmaakt van het bgp deze ip-adressen al dan niet opzettelijk naar andere netwerken kan adverteren. Dus zelfs als deze ip-adressen aan isp’s zijn toegekend, kunnen anderen die nog altijd gebruiken. En erger: dit maakt het mogelijk je voor een andere partij uit te geven.
Per ongeluk
Een bekend geval vond circa tien jaar geleden plaats. Een nationaal telecombedrijf begon per ongeluk met het adverteren van een bepaalde reeks van ip-adressen in een poging een specifieke dienst in dat land te blokkeren. De upstream transit provider stond het bedrijf toe deze ip-reeks te adverteren en gaf die door aan de rest van internet. Daarmee werd een hoop dataverkeer omgeleid. Maar omdat geen van de organisaties de juiste filters gebruikte, resulteerde een ‘simpele’ wijziging van de routering per ongeluk in een wereldwijde kaping.
Een meer recent voorval is de kaping van ip-adressen van DNS-servers van Amazon. Hierbij was sprake van een gerichte aanval. De kapers leidden MyEtherWallet-verkeer om via een namaakportaal, zodat ze cryptomunten konden buitmaken. Dit was eenvoudig te voorkomen geweest als de betrokken netwerken gebruik hadden gemaakt van prefix-filters.
Basisfilters
Een veiliger en stabieler internet is niet iets wat één isp van de ene op de andere dag kan realiseren. Met de toepassing van basisfilters is echter een hoop te bereiken.
De volgende stap voor isp’s is om als hun eigen ip-adressen te ondertekenen (het creëren van route origin authorisations (roa)) en het Resource Public Key Infrastructure (RPKI)-systeem in staat te stellen om de ontvangen en de geadverteerde routes te verifiëren. RPKI is een door de gemeenschap ondersteund kader waaraan alle Regional Internet Registry (RIR)-organisaties en softwareontwikkelaars en prominente routerfabrikanten deelnemen.
Het RPKI-systeem maakt gebruik van een validator met een database van roa’s die een router in staat stellen de ontvangen routes te controleren. Als de route volgens de database ongeldig is, wordt die uit de routeringstabel verwijderd. Door het ondertekenen van hun eigen routes en het controleren van de ontvangen routes dragen de deelnemers dus bij aan het bewerkstelligen van een veilige routeringstabel. De verificatie van alle ontvangen routes op ongeldige vermeldingen zorgt er bovendien voor dat die niet worden doorgegeven aan andere isp’s, internetknooppunten en klanten.
Afwijzen
Een aantal (grote) operators zoals Cloudflare, Fusix Networks, Coloclue en Atom86 hebben RPKI reeds binnen hun netwerk geïmplementeerd en wijzen actief ongeldige routes af. Iedere operator kan handleidingen op internet vinden waarin wordt uitgelegd hoe een RPKI binnen het netwerk is toe te passen. Op de websites van RIR’s valt hier ook een hoop informatie over te vinden. Verder bieden de meeste netwerkleveranciers op hun website informatie over het configureren van hun routers aan. Een goed voorbeeld hiervan is dit artikel op de website van Juniper Networks.
Deze aanpak kan vragen opwerpen over het ontbreken van een deel van de routeringstabel. Het is zeker waar dat het actief afwijzen van routes met RPKI ervoor zorgt dat op dit moment ongeveer 0,79 procent van internet in de tabel ontbreekt. Dat komt neer op een paar duizend routes.
De vraag is echter of er iemand überhaupt gebruik zou willen maken van deze ongeldige routes. Op de keper beschouwd valt er geen enkele goede reden te bedenken om ongeldige routes te willen gebruiken. Zeker gezien de potentiële schade die deze routes kunnen opleveren, is het niet verstandig om je geluk te proberen.
Ons advies: begin met de installatie van een validator, verifieer de routes die door routers worden ontvangen en wijs actief ongeldige vermeldingen af.