CGNAT frustreert alle IP-adres-gebaseerde technieken
IPv4 kraakt in alle voegen
IPv4 kraakt in alle voegen
CGNAT is de redding voor alle internet-providers die geen IPv4-adressen meer aan hun klanten kunnen uitdelen, maar tegelijkertijd de pest voor politiediensten en security-gereedschappen. Waar men er vroeger van uit kon gaan dat er maximaal één klant op een IP-adres zat, zijn dat er nu soms vele duizenden. Dat betekent dat veel IP-adres-gebaseerde technologieën en technieken niet goed meer werken.
De grote access providers zijn de afgelopen jaren massaal overgestapt op Carrier-Grade NAT (CGNAT). Daarbij worden meerdere NAT-lagen gecombineerd om nog meer internetgebruikers via een beperkt aantal publieke IPv4-adressen het net op te laten gaan. De technische aanduiding NAT444 geeft al aan hoe een en ander in zijn werk gaat: De eindgebruiker krijgt net als bij traditioneel NAT (NAT44) een niet-gerouteerd adres uit de private reeksen gedefinieerd in RFC 1918 toegekend. Maar waar hij eerder aan de uplink-zijde van zijn modem een "echt" publiek IPv4-adres had, komt hij nu eerst op een tussenliggend netwerk van zijn access provider terecht. Speciaal daarvoor heeft IANA het adresblok 100.64.0.0/10 vrijgemaakt (in RFC 6598). Dat kan gebruikt worden door alle access providers en wordt dus ook alleen lokaal gerouteerd. In dit netwerk bevinden zich zowel de routers (CPE's) van de eindgebruikers, die nu aan beide kanten een privaat adres hebben, als de CGNAT gateways die voor die CPE routers als poort naar het echte internet fungeren. Hoewel de vertaalslagen tussen de 3 adresruimten uit performance-overwegingen niet helemaal willekeurig zijn – CGNAT gateways kennen vaak vaste externe poortreeksen toe aan de achterliggende NAT44 routers – is het veel moeilijker geworden om een adres/poort-combinatie (een verbinding) zoals gezien aan de buitenkant te vertalen naar een specifieke gebruiker op het achterliggende netwerk. Daarvoor moet de provider de vertaalslagen die op de 2 verschillende NAT-lagen worden gemaakt immers met elkaar combineren.
Hoewel IPv4 inmiddels kraakt in alle voegen, hebben we het afscheid met CGNAT weer even voor ons uit weten te schuiven. Behalve beperkingen in applicaties veroorzaakt doordat gebruikers niet meer vanaf het internet benaderbaar zijn en daardoor met name problemen ondervinden bij het opzetten van peer-to-peer-verbindingen [1, 2], levert CGNAT ook veiligheidsproblemen op. Identificatie, filtering en configuratie gebeurt traditioneel immers op basis van IP-adres, en niet op basis van adres/poort-combinatie. Zo maakt CGNAT het voor overheidsdiensten veel moeilijker om criminelen achter een IPv4-adres te achterhalen. Volgens Europol blijken access providers niet meer aan hun wettelijke verplichting te kunnen voldoen om de abonneegegevens achter een verbinding aan te leveren. In sommige gevallen wordt een IPv4-adres met duizenden anderen gedeeld. Daardoor moeten volgens de dienst bij onderzoeken regelmatig de verbindingen van veel meer mensen dan eigenlijk noodzakelijk worden opgevraagd of afgetapt.
Een ander voorbeeld van veiligheidsproblemen gelieerd aan CGNAT vinden we in de gaming-wereld. Daar blijken fanatieke spelers soms een DDoS-aanval te bestellen om hun tegenstander uit te schakelen. In opkomende landen zoals Brazilië, waar IPv4-adressen uiterst schaars zijn, kan een blacklisting echter tot gevolg hebben dat een hele ISP niet meer bereikbaar is. Dergelijke "resolutieproblemen" spelen over de gehele breedte van systemen voor blacklisting/whitelisting en reputatie-management: bij vrijwel al deze tools is het IP-adres de primaire ingang. Dat betekent dat de DDoS-, spam- of scan-actie van een enkel persoon (of een besmet apparaat) kan leiden tot de blokkade van een hele groep mensen die allemaal datzelfde IP-adres delen. Maar het kan ook andersom: als een groot aantal mensen een online dienst benadert vanaf hetzelfde, gedeelde IP-adres, kunnen al die afzonderlijke verzoeken gezamenlijk gezien worden als een aanval, waarna de toegang voor iedereen wordt geblokkeerd door een anti-spam/abuse-systeem. Ons laatste voorbeeld betreft de filterdienst van OpenDNS. Hun dashboard laat je filters instellen voor het IP-adres waarvandaan je je DNS queries stuurt. Zit je met andere gebruikers achter een gedeeld IPv4-adres, dan blijken verschillende configuraties echter met elkaar te interfereren. De DNS resolvers hebben immers geen manier om verschillende gebruikers achter dat publieke IPv4-adres van elkaar te onderscheiden. Zo kun je bijvoorbeeld queries van anderen in je dashboard terugvinden en mogelijk ook de dienst voor hen verstoren.
Het moge duidelijk zijn dat IPv4 inmiddels op zijn laatste benen loopt. Ondanks alle goede technische en economische redenen om de transitie naar IPv6 te versnellen, verwachten we dat met name het veiligheidsargument overheden in beweging zal brengen. Op Europees niveau gebeurt dat via de cybersecurity-strategie van de Europese Commissie. In hun brief 'Resilience, Deterrence and Defence: Building strong cybersecurity for the EU' kunnen we lezen hoe de EU de adoptie van IPv6 wil stimuleren. Doel is om uiteindelijk maar één gebruiker per IP-adres te hebben om zo onderzoek door politie- en veiligheidsdiensten te vergemakkelijken. Daarvoor maakt de Commissie gebruik van aanbestedingsbeleid, onderzoeks- en projectfinanciering, en convenanten. Hier in Nederland kijkt men bij het ministerie van Economische Zaken op dit moment wat er gedaan kan worden om onze achterstand op gebied van IPv6 aan te pakken.