OpenVPN vs IKEv2 vs PPTP vs L2TP / IPSec vs SSTP – Ultimate Guide to VPN encryptie

een Virtual Private Network (VPN) versleutelt alle gegevens als het reist tussen uw computer en een VPN-server. In deze complete gids voor VPN-versleuteling bekijken we gedetailleerd wat versleuteling is en hoe het wordt gebruikt in VPN-verbindingen.

misschien wel het belangrijkste, we zullen de reeks versleutelingstermen uitleggen die door VPN-diensten worden gebruikt. Het is onze hoop dat u na het lezen van deze gids meer inzicht krijgt in dit complexe onderwerp en dat u beter in staat zult zijn om de veiligheidsclaims van VPN-providers te beoordelen.

voorrondes

als je niet zeker weet wat een VPN is en wat men voor je kan doen, bekijk dan onze VPN ‘ s voor beginnershandleiding.

ons doel is om de belangrijkste functies van VPN-encryptie zo eenvoudig mogelijk te presenteren. Hoewel er geen ontkomen aan is, aan het feit dat encryptie een complex onderwerp is.

als zelfs de term encryptie ervoor zorgt dat je ogen beginnen te beglazen, maar je nog steeds wilt weten waar je op moet letten in een goede VPN-service, kun je direct naar samenvattingen springen met behulp van de inhoudsopgave.

Wat Is Versleuteling?

“Begin bij het begin,” zei de koning, zeer ernstig, “en ga door tot je aan het einde; dan stop.”

Lewis Carroll, Alice In wonderland

de eenvoudigste analogie is dat versleuteling een slot is. Als u de juiste sleutel heeft, is het slot gemakkelijk te openen. Als iemand niet beschikt over de juiste sleutel, maar wil toegang tot de inhoud van een strongbox (dat wil zeggen, uw gegevens) beschermd door dat slot, dan kunnen ze proberen om het slot te breken.

net zoals het slot dat een bankkluis beveiligt sterker is dan het slot dat een koffer beveiligt, is sommige versleuteling sterker dan andere versleuteling.

als u een VPN met de sterkste encryptie wilt, bekijk dan onze lijst met veiligste VPN ‘ s voor meer informatie.

de basis

heeft u als kind ooit het spel gespeeld waarin u een “geheim bericht” hebt aangemaakt door de ene letter van het bericht door een andere te vervangen? De vervanging is gemaakt volgens een formule die jij hebt gekozen.

u kunt bijvoorbeeld elke letter van het oorspronkelijke bericht hebben vervangen door een drie letters achter het alfabet. Als iemand anders wist wat deze formule was, of in staat was om het uit te werken, dan zouden ze in staat zijn om uw “geheime boodschap te lezen.”

in cryptografiejargon, wat je deed was het “versleutelen” van het bericht (data) volgens een zeer eenvoudig wiskundig algoritme. Cryptografen verwijzen naar deze formule als een “cipher.”Om het te decoderen, heb je de sleutel nodig. Dit is een variabele parameter die de uiteindelijke uitvoer van de cipher bepaalt. Zonder deze parameter is het onmogelijk om de cipher te decoderen.

als iemand een versleuteld bericht wil lezen maar de sleutel niet heeft, dan moet hij proberen de sleutel te” kraken”. Wanneer de encryptie maakt gebruik van een eenvoudige Letter substitutie cipher, kraken is gemakkelijk. De encryptie kan echter veiliger worden gemaakt door het wiskundige algoritme (de cipher) complexer te maken.

u kunt bijvoorbeeld elke derde letter van het bericht vervangen door een getal dat overeenkomt met de letter.

lengte van de coderingssleutel

moderne computercodes zijn zeer complexe algoritmen. Zelfs met behulp van supercomputers zijn deze zeer moeilijk te kraken, zo niet onmogelijk voor alle praktische doeleinden. De crudest manier om de sterkte van een cipher te meten is door de complexiteit van het algoritme dat wordt gebruikt om het te maken.

hoe complexer het algoritme is, hoe moeilijker het ontcijferen is met wat we een brute force aanval noemen.

een aanval met brute kracht als een zeer primitieve vorm van aanval (ook bekend als een exhaustieve sleutelzoektoets) is, dat in principe inhoudt dat elke combinatie van getallen mogelijk wordt geprobeerd totdat de juiste sleutel is gevonden.

Computers voeren alle berekeningen uit met behulp van binaire getallen: nullen en enen. De complexiteit van een cipher hangt af van zijn sleutelgrootte in bits – het ruwe aantal enen en nullen die nodig zijn om zijn algoritme uit te drukken, waarbij elke nul of een wordt vertegenwoordigd door een enkel bit.

Dit is bekend als de sleutellengte en vertegenwoordigt ook de praktische haalbaarheid van het succesvol uitvoeren van een brute-force-aanval op een gegeven cipher.

het aantal combinaties dat mogelijk is (en dus de moeilijkheid om ze te forceren) neemt exponentieel toe met de sleutelgrootte. Met behulp van de AES cipher (zie later):

Sleutelformaten

om dit in perspectief te plaatsen:

  • in 2011, de snelste supercomputer in het woord was de Fujitsu K. Deze was in staat om een Rmax pieksnelheid van 10.51 petaflops. Op basis van dit cijfer, het zou duren Fujitsu K 1.02 x 10^18 – ongeveer een miljard miljard (een quintillion) – jaar om een 128-bit AES (Advanced Encryption Standard) sleutel met geweld te kraken. Dit is ouder dan de leeftijd van het universum (13,75 miljard jaar).De meest krachtige supercomputer ter wereld (2017) is de Sunway TaihuLight in China. Dit beest is in staat tot een pieksnelheid van 93.02 petaflops. Dit betekent dat de krachtigste computer ter wereld nog ongeveer 885 biljard jaar nodig heeft om een 128-bit AES-sleutel brute kracht te geven.
  • het aantal bewerkingen dat nodig is om een 256-bit versleuteling te forceren is 3,31 x 10^56. Dit is ongeveer gelijk aan het aantal atomen in het universum!

computercodes

terwijl de lengte van de versleutelingssleutel verwijst naar de hoeveelheid ruwe getallen, zijn cijfers de wiskunde – de werkelijke formules of algoritmen – die wordt gebruikt om de versleuteling uit te voeren. Zoals we net hebben gezien, brute dwingen moderne computer cijfers is wild onpraktisch.

het zijn zwakke plekken (soms opzettelijk) in deze versleutelingsalgoritmen die kunnen leiden tot het breken van de versleuteling. Dit komt omdat de output van de (slecht ontworpen) cipher kan nog steeds onthullen sommige structuur van de oorspronkelijke informatie voor encryptie. Dit creëert een gereduceerde reeks mogelijke combinaties om te proberen, wat in feite de effectieve sleutellengte vermindert.

het Blowfish-cijfer is bijvoorbeeld kwetsbaar voor een aanval die de wiskunde achter het verjaardagsprobleem in de kansrekening benut. De studie van zwakheden in cryptografische algoritmen staat bekend als cryptoanalyse.

langere sleutellengtes compenseren dergelijke zwakke punten, omdat ze het aantal mogelijke resultaten aanzienlijk verhogen.

in plaats van de sleutel zelf aan te vallen, kan een tegenstander de sleutel zelf aanvallen. Dit kan invloed hebben op een bepaalde site of bepaalde software product. Maar de beveiliging van het versleutelalgoritme is nog steeds intact, en andere systemen die hetzelfde algoritme gebruiken, maar een veilige generatie sleutels hebben, worden niet beïnvloed door de breuk.

Cipher Key Length

hoe sterk een cipher is, hangt af van zowel de wiskunde van de cipher zelf, plus de sleutellengte zoals uitgedrukt in bits. Om deze reden, cijfers worden meestal beschreven samen met de sleutel lengte gebruikt.

dus AES-256 (het AES-cijfer met een 256-bit sleutellengte) wordt meestal als sterker beschouwd dan AES-128. Merk op dat ik meestal zeg omdat we hier te maken hebben met zeer complexe wiskunde (zie mijn aantekeningen over AES later).

Note Icon2 01 150X150

het is belangrijk op te merken dat de sleutellengte alleen geen goede indicator is voor de sterkte van een versleuteling. Het is de combinatie van sleutellengte en versleuteling die telt. Versleutelingscodes die bijvoorbeeld voor asymmetrische versleuteling worden gebruikt, gebruiken veel langere sleutelgroottes dan die welke voor symmetrische versleuteling worden gebruikt om een gelijkwaardige bescherming te bieden.

Key Size Comparison

deze tabel is een beetje verouderd, omdat er geen rekening wordt gehouden met nieuwere aanvallen die zijn ontdekt op RSA. Het is ook vermeldenswaard dat de elliptische kromme en Diffie-Hellman-varianten van RSA veel sterker zijn dan traditionele. Maar hopelijk krijg je het idee.

Note Icon2 01 150X150

een ding om op te merken is dat hoe hoger de sleutellengte, hoe meer berekening betrokken, dus hoe meer verwerkingskracht nodig. Dit beïnvloedt de snelheid waarmee gegevens kunnen worden versleuteld en gedecodeerd. VPN-providers en dergelijke moeten daarom beslissen hoe beveiliging het beste in evenwicht is in plaats van praktische bruikbaarheid bij het kiezen van versleutelingsschema ‘ s. Er zijn een aantal VPN-providers die erin zijn geslaagd om deze fijne balans goed te vinden. Bekijk voor meer informatie onze gids voor snelle VPN ‘ s.

we bespreken de belangrijkste cijfers die door verschillende VPN-protocollen worden gebruikt, maar de meest voorkomende cijfers die u waarschijnlijk zult tegenkomen zijn Blowfish en AES. Daarnaast wordt RSA gebruikt om sleutels van een cipher te versleutelen en te decoderen, en SHA-1 of SHA-2 wordt gebruikt als de hash-functie om gegevens te authenticeren.

asymmetrische encryptieasymmetrische encryptie

Perfect Forward Secrecy

Perfect Forward Secrecy (PFS) wordt ook wel aangeduid als het gebruik van vluchtige encryptiesleutels, of gewoon Forward Secrecy (FS) door degenen die zich ongemakkelijk voelen met het gebruik van het woord “perfect.”

de meeste moderne veilige online communicatie is afhankelijk van SSL / TLS. Het wordt gebruikt door HTTPS-websites en het OpenVPN-protocol. TLS (Transport Layer Security) is een asymmetrisch versleutelingsprotocol. Het gebruik van een asymmetrische cipher betekent dat gegevens worden beveiligd met behulp van een openbare sleutel, die voor iedereen beschikbaar wordt gesteld. Het kan echter alleen worden gedecodeerd door een beoogde ontvanger die de juiste persoonlijke sleutel heeft.

deze privésleutel moet geheim worden gehouden. Als het wordt gestolen of gekraakt door een tegenstander, dan kan die tegenstander gemakkelijk onderscheppen en elke communicatie beveiligd door het lezen.

helaas is het gebruikelijk dat servers of zelfs hele bedrijven slechts één private encryptiesleutel gebruiken om alle communicatie te beveiligen. Waarom? Omdat het makkelijk is. Echter, als die sleutel is gecompromitteerd dan kan een aanvaller toegang tot alle communicatie versleuteld met het.

deze private encryptiesleutel wordt daarom een “master key” die gebruikt kan worden om alle communicatie met een server of bedrijf te ontgrendelen. Het is bekend dat de NSA deze zwakte heeft uitgebuit om enorme hoeveelheden zogenaamd veilige gegevens te verzamelen.

de oplossing is Perfect Forward Secrecy. Dit is een systeem waarbij een nieuwe en unieke private encryptiesleutel wordt gegenereerd voor elke sessie. Het is een eenvoudig idee, zelfs als de Diffie-Hellman uitwisseling wiskunde is complex. Het betekent dat elke TLS-sessie zijn eigen set sleutels heeft. Vandaar de term “kortstondige sleutels” – ze worden één keer gebruikt en verdwijnen dan.

er is daarom geen “master key” die kan worden benut. Zelfs als een sessie gecompromitteerd is, is het alleen die sessie die gecompromitteerd is – niet alle andere sessies die iemand heeft met die server of dat bedrijf!

hoewel dit soms voorkomt, is het zelfs mogelijk om PFS-sleutels binnen een sessie te vernieuwen (bijvoorbeeld elk uur). Dit beperkt verder de hoeveelheid gegevens die kunnen worden onderschept door een tegenstander, zelfs als een private sleutel wordt gecompromitteerd.

toen ik een paar jaar geleden dit artikel over dit onderwerp schreef, was het gebruik van Perfect Forward Secrecy voor zowel HTTPS-websites als OpenVPN-verbindingen treurig zeldzaam. Gelukkig is deze situatie enigszins veranderd. Hoewel geenszins universeel, is het gebruik van vluchtige sleutels de laatste tijd sterk toegenomen.

VPN-versleutelingsprotocollen

een VPN-protocol is de set instructies (mechanisme) die worden gebruikt om een beveiligde versleutelde verbinding tussen twee computers te onderhandelen. Een aantal van dergelijke VPN-protocollen worden vaak ondersteund door commerciële VPN-diensten. De meest opvallende hiervan zijn PPTP, L2TP / IPSec, OpenVPN, SSTP en IKEv2.

ik kijk naar elk van deze hieronder, maar OpenVPN is nu de industrie standaard VPN-protocol gebruikt door commerciële VPN-diensten-voor een goede reden. Het is zeer veilig en kan worden gebruikt op bijna alle VPN-compatibele apparaten. Ik zal daarom extra digitale inkt besteden aan het bespreken van OpenVPN in detail.

PPTP

PROS

  • Client ingebouwd in bijna alle platforms
  • zeer eenvoudig in te stellen

CONS

  • zeer onveilig
  • zeker gecompromitteerd door de NSA
  • gemakkelijk geblokkeerd

Wat is PPTP?

het is alleen een VPN-protocol en is afhankelijk van verschillende verificatiemethoden om beveiliging te bieden. Onder commerciële VPN-providers is dit bijna altijd MS-CHAP v2. Het encryptie protocol (vergelijkbaar met een standaard cipher) gebruikt door PPTP is Microsoft Point-to-Point encryptie (MPPE).

Point-to-Point Tunneling Protocol (PPTP) is ontwikkeld door een consortium van Microsoft voor het maken van VPN via inbelnetwerken. Als zodanig is PPTP al lang het standaardprotocol voor zakelijke VPN-netwerken.

PPTP is standaard beschikbaar op zowat elk VPN-geschikt platform en apparaat. Het is eenvoudig op te zetten, zonder de noodzaak om extra software te installeren. Dit zorgt ervoor dat PPTP een populaire keuze blijft voor zowel zakelijke VPN ‘ s als commerciële VPN-diensten.

het heeft ook het voordeel dat een lage computationele overhead nodig is om te implementeren … dus het is snel!

helaas is PPTP niet veilig. Helemaal. Hoewel nu meestal alleen gevonden met behulp van 128-bit encryptiesleutels, in de jaren sinds het voor het eerst werd gebundeld met Windows 95 OSR2 terug in 1999, een aantal beveiligingsproblemen zijn aan het licht gekomen.

de ernstigste hiervan is de mogelijkheid van niet-ingekapselde MS-CHAP v2-authenticatie. Met behulp van deze exploit, PPTP is gekraakt binnen twee dagen. Microsoft heeft de fout gepatcht,maar heeft zelf een aanbeveling om L2TP/IPsec of SSTP in plaats daarvan.

het zal geen verrassing zijn dat de NSA vrijwel zeker standaard PPTP-versleutelde communicatie decodeert. Nog zorgwekkender is dat de NSA enorme hoeveelheden oudere gegevens verzameld die versleuteld waren toen PPTP als veilig werd beschouwd. Het kan bijna zeker decoderen deze legacy gegevens ook.

PPTP vereist zowel TCP-poort 1723 als het GRE-protocol. Het is gemakkelijk om GRE te firewall, waardoor het gemakkelijk is om PPTP-verbindingen te blokkeren.

L2TP/IPsec

PLUSPUNTEN

  • Meestal beschouwd als veilige
  • Eenvoudig in te stellen
  • Beschikbaar op alle moderne platformen
  • Sneller dan OpenVPN (misschien)

TEGENS

  • Kan worden aangetast door de NSA (onbewezen)
  • Waarschijnlijk opzettelijk verzwakt door de NSA (onbewezen)
  • Kan de strijd met beperkende firewalls
  • Vaak slecht geïmplementeerd

Wat is L2TP en IPsec?

Layer 2 Tunneling Protocol (L2TP) is ingebouwd in bijna alle moderne besturingssystemen en VPN-compatibele apparaten. Het is daarom net zo eenvoudig en snel in te stellen als PPTP.

alleen biedt L2TP geen versleuteling of vertrouwelijkheid voor verkeer dat er doorheen gaat, dus wordt het meestal geïmplementeerd met de IPSec authentication suite (L2TP/IPsec). Zelfs als een provider alleen verwijst naar L2TP of IPsec (zoals sommigen doen), betekent het vrijwel zeker eigenlijk L2TP/IPSec.

L2TP / IPsec kan de 3DES-of AES-cijfers gebruiken. 3DES is kwetsbaar voor ‘Meet-in-the-middle’ en ‘Sweet32 collision attacks’, dus in de praktijk is het onwaarschijnlijk dat je het deze dagen tegenkomt.

problemen kunnen zich voordoen omdat het L2TP / IPSec-protocol slechts een beperkt aantal poorten gebruikt. Dit kan complicaties veroorzaken bij gebruik achter NAT firewalls. Deze afhankelijkheid van vaste poorten maakt het protocol ook vrij gemakkelijk te blokkeren.

L2TP / IPsec inkapselt gegevens tweemaal, wat de zaken vertraagt. Dit wordt gecompenseerd door het feit dat versleuteling/decryptie plaatsvindt in de kernel en L2TP/IPsec maakt multi-threading mogelijk. OpenVPN niet. Het resultaat is dat L2TP/IPsec theoretisch sneller is dan OpenVPN.

L2TP / IPsec het gebruik van de AES cipher heeft geen grote bekende kwetsbaarheden, en indien correct geïmplementeerd kan het nog steeds veilig zijn. Echter, Edward Snowden ‘ s onthullingen hebben sterk laten doorschemeren dat de standaard wordt gecompromitteerd door de NSA.John Gilmore is een beveiligingsspecialist en stichtend lid van de Electronic Frontier Foundation. Hij legt uit, het is waarschijnlijk dat IPSec werd opzettelijk verzwakt tijdens de ontwerpfase.

een veel groter probleem is dat veel VPN-diensten L2TP/IPsec slecht implementeren. Specifiek, ze gebruiken pre-shared keys (PSK ‘ s) die vrij kunnen worden gedownload van hun websites.

deze PSK ‘ s worden alleen gebruikt om de verbinding te verifiëren, dus zelfs als ze gecompromitteerd zijn, blijven de gegevens veilig versleuteld met behulp van AES. Een aanvaller kan echter de vooraf gedeelde sleutel gebruiken om zich voor te doen als een VPN-server. Het kan dan afluisteren versleuteld verkeer, of zelfs injecteren kwaadaardige gegevens in de verbinding.

Note Icon2 01 150X150

samenvatting

ondanks enkele grotendeels theoretische problemen, wordt L2TP / IPsec over het algemeen als veilig beschouwd als openlijk gepubliceerde pre-gedeelde sleutels niet worden gebruikt. De ingebouwde compatibiliteit met een groot aantal apparaten kan het een zeer goede keuze maken.

SSTP

PROS

  • zeer veilig
  • volledig geïntegreerd in Windows
  • Microsoft-ondersteuning
  • kan de meeste firewalls

cons

  • eigen standaard die eigendom is van Microsoft

Wat is SSTP?

SSTP is een type encryptie dat SSL 3.0 gebruikt en vergelijkbare voordelen biedt als OpenVPN. Dit omvat de mogelijkheid om tcp-poort 443 te gebruiken om censuur te ontwijken. Strakke integratie met Windows kan het gemakkelijker maken om te gebruiken en stabieler dan OpenVPN op dat platform.

in tegenstelling tot OpenVPN is SSTP echter een eigen standaard die eigendom is van Microsoft. Dit betekent dat de code niet openbaar is. Microsoft ‘ s geschiedenis van de samenwerking met de NSA, en speculatie over mogelijke backdoors ingebouwd in het Windows-besturingssysteem, niet vertrouwen in de standaard te inspireren.

Secure Socket Tunneling Protocol (SSTP) werd geïntroduceerd door Microsoft in Windows Vista SP1. Hoewel het nu beschikbaar is voor Linux VPN ‘ s en zelfs voor Mac OS X, is het nog steeds voornamelijk een Windows-platform.

een ander probleem is dat SSL v3. 0 kwetsbaar is voor wat bekend staat als de poedel aanval, en daarom nu niet aanbevolen. Of dit probleem ook van invloed SSTP is onduidelijk, maar opnieuw, nauwelijks inspireert vertrouwen.

Note Icon2 01 150X150

samenvatting

op papier biedt SSTP veel van de voordelen van OpenVPN. Het feit dat een eigen Microsoft-standaard, echter, ernstig ondermijnt haar geloofwaardigheid.

IKEv2

PROS

  • snel
  • stabiel-vooral bij het wisselen van netwerk of opnieuw verbinden na een verloren internetverbinding
  • veilig (als AES wordt gebruikt)
  • eenvoudig in te stellen (ten minste aan het eind van de gebruiker!)
  • Protocol wordt ondersteund op Blackberry-apparaten

CONS

  • niet ondersteund op veel platforms
  • het implementeren van IKEv2 aan het server-einde is lastig, wat mogelijk kan leiden tot problemen bij het ontwikkelen van
  • alleen open source-implementaties vertrouwen

Wat is IKEv2?Internet Key Exchange version 2 (IKEv2) werd gezamenlijk ontwikkeld door Microsoft en Cisco. Het wordt native ondersteund door Windows 7+, Blackberry en iOS-apparaten. Daarom gebruiken veel iOS VPN-diensten IKEv2 in plaats van OpenVPN.

onafhankelijk ontwikkelde compatibele versies van IKEv2 zijn ontwikkeld voor Linux en andere besturingssystemen. Veel van deze iteraties zijn open source. Zoals altijd, Ik stel voor om op hun hoede voor iets ontwikkeld door Microsoft. Open source versies van IKEv2 zouden echter geen problemen moeten hebben.

IKEv2 maakt deel uit van de IPSec-protocolsuite. Het zorgt ervoor dat het verkeer veilig is door het attribuut SA (Security Association) binnen IPsec te overhandigen en verbetert IKEv1 op vele manieren. IKEv2 wordt daarom ook wel IKEv2/IPsec genoemd. IKEv1, aan de andere kant, wordt vaak gewoon aangeduid als IPsec.

VPN Connect genoemd door Microsoft, IKEv2 is bijzonder goed in het automatisch herstellen van een VPN-verbinding wanneer gebruikers Tijdelijk hun internetverbindingen verliezen. Bijvoorbeeld bij het betreden of verlaten van een treintunnel.Vanwege zijn steun voor het Mobility and Multihoming-protocol (MOBIKE) is IKEv2 ook zeer goed bestand tegen veranderende netwerken. Dit maakt IKEv2 een geweldige keuze voor mobiele telefoongebruikers die regelmatig schakelen tussen WiFi en mobiele verbindingen, of die regelmatig tussen hotspots.

IKEv2 is niet zo gebruikelijk als L2TP/IPSec omdat het op veel minder platforms wordt ondersteund (hoewel deze situatie snel verandert). Het wordt echter beschouwd als minstens zo goed als, zo niet superieur aan, L2TP/IPsec in termen van veiligheid, prestaties (snelheid), stabiliteit en de mogelijkheid om een verbinding tot stand te brengen (en te herstellen).

OpenVPN

PROS

  • zeer veilig (als PFS wordt gebruikt)
  • zeer configureerbaar
  • Open-source
  • kan firewalls omzeilen
  • heeft software van derden nodig

Wat is OpenVPN?

OpenVPN is een open-source technologie die gebruik maakt van de OpenSSL-bibliotheek en TLS-protocollen, samen met een amalgaam van andere technologieën, om een sterke en betrouwbare VPN-oplossing te bieden. Het is nu de industrie standaard VPN-protocol gebruikt door commerciële VPN-diensten-voor een goede reden.

een van de belangrijkste sterke punten van OpenVPN is dat het zeer configureerbaar is. Het wordt native ondersteund door geen platform, maar is beschikbaar op de meeste platforms via software van derden. Aangepaste OpenVPN-clients en apps zijn vaak beschikbaar bij individuele VPN-providers, maar de kern van de open source code is ontwikkeld door het OpenVPN-project.

veel ontwikkelaars en bijdragers aan het OpenVPN-project werken ook voor OpenVPN Technologies Inc., die toezicht houdt op het project.

OpenVPN werkt het beste op een UDP-poort, maar kan worden ingesteld om op elke poort te draaien (zie opmerkingen later). Dit geldt ook voor tcp-poort 443, die wordt gebruikt door normaal HTTPS-verkeer. Door OpenVPN via TCP-poort 443 te gebruiken, is het moeilijk om VPN-verbindingen te onderscheiden van het soort beveiligde verbindingen dat wordt gebruikt door banken, e-maildiensten en online retailers. Dit maakt OpenVPN erg moeilijk te blokkeren.

een ander voordeel van OpenVPN is dat de OpenSSL-bibliotheek die wordt gebruikt om versleuteling te bieden een aantal cijfers ondersteunt. In de praktijk worden echter alleen Blowfish en AES vaak gebruikt door commerciële VPN-diensten. Ik bespreek deze hieronder.

in het licht van informatie verkregen van Edward Snowden, lijkt het erop dat zolang Perfect Forward Secrecy wordt gebruikt, OpenVPN niet is gecompromitteerd of verzwakt door de NSA.

een recente crowdsourced audit van OpenVPN is nu voltooid, evenals een andere audit die wordt gefinancierd door particuliere internettoegang. Er zijn geen ernstige kwetsbaarheden ontdekt die de privacy van gebruikers beïnvloeden. Een paar kwetsbaarheden werden ontdekt die OpenVPN servers mogelijk open voor een Denial of Service (DoS) aanval, maar deze zijn gepatched in OpenVPN 2.4.2.

OpenVPN wordt meestal beschouwd als het meest veilige VPN-protocol beschikbaar en wordt breed ondersteund in de VPN-industrie. Ik zal daarom OpenVPN encryptie hieronder in detail bespreken.

OpenVPN-encryptie

OpenVPN – encryptie bestaat uit twee delen: Data channel-encryptie en control channel-encryptie. Data channel encryptie wordt gebruikt om uw gegevens te beveiligen. Control channel encryptie beveiligt de verbinding tussen uw computer en de VPN-server.

elke verdediging is slechts zo sterk als het zwakste punt, dus het is jammer dat sommige VPN-providers een veel sterkere encryptie gebruiken op het ene kanaal dan het andere (meestal sterker op het besturingskanaal).

het is bijvoorbeeld niet ongewoon dat een VPN-dienst wordt geadverteerd met een AES-256-versleuteling met RSA-4096 handshake-versleuteling en SHA-512 hash-authenticatie. Dit klinkt erg indrukwekkend totdat je je realiseert dat het alleen verwijst naar control channel encryptie en niet het data kanaal, dat is versleuteld met slechts Blowfish-128 met SHA1 hash authenticatie. Dit wordt alleen gedaan om marketing redenen.

Als verschillende versleuteling wordt gebruikt op de data-en besturingskanalen, dan wordt de ware sterkte van de OpenVPN-verbinding gemeten door de zwakkere gebruikte versleutelingssuite.

voor maximale beveiliging moet de versleuteling van gegevens en besturingskanalen zo sterk mogelijk zijn. Echter, hoe sterker de versleuteling gebruikt, hoe trager de verbinding zal zijn, dat is de reden waarom sommige providers bezuinigen op data channel encryptie.

controlekanaalversleuteling wordt ook TLS-versleuteling genoemd omdat TLS de technologie is die wordt gebruikt om veilig te onderhandelen over de verbinding tussen uw computer en de VPN-server. Dit is dezelfde technologie die uw browser gebruikt om veilig te onderhandelen over een verbinding met een HTTPS-versleutelde website.

  • besturingskanaalversleuteling bestaat uit een versleuteling, handshake-versleuteling en hash-authenticatie.
  • gegevenskanaalversleuteling bestaat uit een versleuteling en hash-authenticatie.

VPN-providers gebruiken vaak hetzelfde versleutelingsniveau voor zowel controle-als datakanalen. In onze reviews en” verkeerslicht ” – tabellen geven we ze alleen apart weer als voor elk kanaal verschillende waarden worden gebruikt.

als we stellen dat een provider een AES-256 cipher gebruikt, betekent dit dat een AES-256 cipher wordt gebruikt voor zowel de controle-als datakanalen.*

(*dit zou tenminste het geval moeten zijn. Sommige legacy reviews voldoen niet aan onze huidige richtlijnen, maar deze moeten op tijd worden afgebouwd).

cijfers

OpenVPN kan een aantal symmetrische sleutelcodes gebruiken om gegevens op zowel controle-als datakanalen te beveiligen. In de praktijk zijn de enige die door commerciële VPN-providers worden gebruikt Blowfish, AES en (zeer zelden) Camellia.

Blowfish

Blowfish-128 is de standaardcode die wordt gebruikt door OpenVPN. Sleutelgroottes kunnen in theorie variëren van 32 bits tot 448 bits, maar Blowfish-128 is de enige versie die je waarschijnlijk zult tegenkomen in het wild.

Blowfish wordt vaak als veilig genoeg beschouwd voor toevallige doeleinden, maar heeft bekende zwakheden. Het werd gemaakt door de beroemde cryptograaf Bruce Schneier, die in 2007 zei: “op dit punt, hoewel, ik ben verbaasd dat het nog steeds wordt gebruikt.”

naar onze mening is het gebruik van Blowfish-128 aanvaardbaar als een tweede verdedigingslinie op het OpenVPN-datakanaal. Het moet echter niet als veilig worden beschouwd wanneer het op het regelkanaal wordt gebruikt.

AES

AES is de VPN-industriebrede “gouden standaard” symmetrische sleutelcodering geworden. AES is NIST-gecertificeerd en wordt bijna algemeen beschouwd als zeer veilig. AES-256 wordt gebruikt door de Amerikaanse overheid voor het beschermen van “veilige” gegevens.

het feit dat het een 128-bit blokgrootte heeft in plaats van Blowfish ‘ s 64-bit blokgrootte betekent ook dat het grotere bestanden (meer dan 4 GB) beter kan verwerken dan Blowfish. Daarnaast profiteert de AES instructieset van ingebouwde hardwareversnelling op de meeste platforms.

AES is meestal beschikbaar in 128-bit en 256-bit sleutelgroottes (192-bit AES bestaat ook). AES-128 blijft veilig voor zover iedereen weet. Gezien wat we nu weten over de omvang van de aanval van de NSA op encryptie-normen, echter, de meeste deskundigen het erover eens dat AES-256 biedt een hogere veiligheidsmarge.

alleen al om ervoor te zorgen dat niemand dit onderwerp ooit te gemakkelijk vindt, is er enige discussie over deze kwestie. AES-128 heeft een sterker sleutelschema dan AES-256, wat sommige zeer eminente experts ertoe brengt te beweren dat AES-128 eigenlijk sterker is dan AES-256.

de algemene consensus is echter dat AES-256 sterker is.

Camellia

Camellia is een moderne veilige versleuteling en is minstens zo veilig en snel als AES. Het is verkrijgbaar in sleutelformaten van 128, 192 en 256 bits. Dankzij de NIST-certificering en het gebruik ervan door de Amerikaanse overheid wordt AES echter bijna altijd gebruikt in plaats van Camellia.

maar zoals ik hieronder bespreek, zijn er redenen om NIST-gecertificeerde cijfers niet te vertrouwen. Het feit dat Camellia is een niet-NIST cipher is de belangrijkste reden om te kiezen voor het boven AES. Deze optie is echter slechts zelden beschikbaar.

het is ook vermeldenswaard dat Camellia lang niet zo goed getest is op zwakte als AES.

Handshake-encryptie

om veilig te onderhandelen over een verbinding tussen uw apparaat en een VPN-server, gebruikt OpenVPN een TLS-handshake. Hierdoor kunnen de OpenVPN-client en de VPN-server de geheime sleutels vaststellen waarmee ze communiceren.

om deze handshake te beschermen, gebruikt TLS meestal het RSA public-key cryptosysteem. Dit is een algoritme voor versleuteling en digitale handtekening dat wordt gebruikt om TLS/SSL-certificaten te identificeren. Het kan echter ook gebruik maken van een Diffie-Hellman of ECDH sleutel uitwisseling in plaats daarvan.

RSA

RSA is een asymmetrisch versleutelingssysteem – een publieke sleutel wordt gebruikt om de gegevens te versleutelen, maar een andere private sleutel wordt gebruikt om het te ontcijferen. Het is de basis voor veiligheid op het internet voor de laatste 20 jaar of zo.

het is nu algemeen bekend dat RSA met een sleutellengte van 1024-bits (RSA-1024) of minder niet veilig is en vrijwel zeker door de NSA is gekraakt. Er is dan ook een gezamenlijke beweging tussen internetbedrijven om weg te migreren van RSA-1024.

helaas vinden we nog steeds dat sommige VPN-diensten RSA-1024 blijven gebruiken om handshakes te beschermen. Dit is niet goed.

RSA-2048 en hoger wordt nog steeds als veilig beschouwd. Op zichzelf biedt RSA geen Perfect Forward Secrecy (PFS). Dit kan echter worden geïmplementeerd door een Diffie-Hellman (DH) of elliptische curve Diffie-Hellman (ECDH) sleuteluitwisseling in zijn cipher suite op te nemen.

in dit geval maakt de sterkte van de DH-of ECDH-sleutel niet uit, omdat deze alleen wordt gebruikt om perfecte voorwaartse geheimhouding te bieden. De verbinding wordt beveiligd met behulp van RSA.

omdat het verwarring kan veroorzaken, zal ik ook opmerken dat de RSA cryptosysteem heeft niets te maken met de in ongenade US tech bedrijf RSA Security LLC. Dit bedrijf opzettelijk verzwakt zijn vlaggenschip BSAFE encryptie producten na wordt omgekocht $10 miljoen door de NSA.

Diffie-Hellman en ECDH

een alternatieve (rivaliserende) handshake-encryptie die soms wordt gebruikt door OpenVPN is de Diffie-Hellman (DH) cryptografische sleuteluitwisseling. Deze heeft meestal een sleutellengte van 2048-bits of 4096-bits. Merk op dat iets minder dan DH-2048 moet worden vermeden als gevolg van gevoeligheid voor de logjam aanval.

het belangrijkste voordeel van een Diffie-Hellman handshake over RSA is dat het van nature perfecte voorwaartse geheimhouding biedt. Zoals reeds opgemerkt, echter, het toevoegen van een DH-sleutel uitwisseling aan een RSA handshake bereikt een vergelijkbaar einde.Diffie-Hellman heeft grote controverse veroorzaakt over het hergebruik van een beperkte verzameling priemgetallen. Dit maakt het kwetsbaar om te worden gekraakt door een machtige tegenstander, zoals de NSA. Diffie-Hellman op zijn eigen, daarom, niet zorgen voor een veilige handshake encryptie. Het is prima, echter, wanneer gebruikt als onderdeel van een RSA cipher suite.

elliptische curve Diffie-Hellman (ECDH) is een nieuwere vorm van cryptografie die niet kwetsbaar is voor deze aanval. Dit komt omdat het de eigenschappen van een bepaald type algebraïsche kromme gebruikt in plaats van grote priemgetallen om verbindingen te versleutelen.

ECDH kan worden gebruikt als onderdeel van een RSA-handshake om perfecte Forward Secrecy te bieden, of kan een handshake op zichzelf veilig versleutelen (met een ECDSA-handtekening). Dit biedt ook PFS.

ecdh-sleutellengte begint bij 384-bits. Dit wordt als veilig beschouwd, maar als het op zichzelf wordt gebruikt om een TLS-handshake te beveiligen, hoe langer hoe beter (in termen van veiligheid, toch).

SHA Hash Authentication

dit wordt ook wel data authentication of hash message authentication code (HMAC) genoemd.

Secure Hash Algorithm (Sha) is een cryptografische hash-functie die onder andere wordt gebruikt om gegevens en SSL/TLS-verbindingen te verifiëren. Dit geldt ook voor OpenVPN-verbindingen.

het creëert een unieke vingerafdruk van een geldig TLS-certificaat, die door elke OpenVPN-client kan worden gevalideerd. Zelfs de kleinste verandering is waarneembaar. Als er met het certificaat wordt geknoeid, wordt dit onmiddellijk gedetecteerd en wordt de verbinding geweigerd.

dit is belangrijk bij het voorkomen van een man-in-the-middle (MitM) aanval, waarbij een tegenstander probeert om uw OpenVPN-verbinding om te leiden naar een van zijn eigen servers in plaats van uw VPN-provider. Het kan dit doen, bijvoorbeeld door het hacken van uw router.

als een tegenstander de hash van het echte TLS-certificaat van uw provider kan kraken, kan het de hash omkeren om een vervalst certificaat te maken. Uw Open VPN-software zou dan de verbinding authenticeren als echt.

is SHA veilig?

wanneer SHA-1 wordt gebruikt om HTTPS-websites te beschermen, is deze verbroken. Dit is al enige tijd bekend. SHA-1 websites zijn nog steeds te vinden, maar worden uitgefaseerd. De meeste browsers zullen nu een waarschuwing wanneer u probeert om verbinding te maken met een website beveiligd met SHA-1.

SHA-2 en SHA-3 hash functies worden nu aanbevolen in plaats daarvan, en zijn veilig. SHA – 2 bevat SHA-256, SHA-384 en SHA-512. Echter …

OpenVPN gebruikt alleen SHA voor HMAC. Ik denk niet dat het nuttig om te gaan in te veel detail hier, maar SHA hash authenticatie is onderdeel van het HMAC algoritme. Het aanvallen van HMAC ingebed met SHA-1 is veel moeilijker dan alleen het aanvallen van de SHA-1 hash functie zelf.

met andere woorden, HMAC SHA-1 zoals gebruikt door OpenVPN wordt als veilig beschouwd en er is mathematisch bewijs van dit. Natuurlijk zijn HMAC SHA-2 en HMAC SHA-3 nog veiliger! Inderdaad, de recente OpenVPN audit erkent dat HMAC SHA-1 is veilig, maar raadt de overgang naar HMAC SHA-2 of HMAC SHA-3 Plaats.

noten

NIST

AES, RSA, SHA-1 en SHA-2 werden allemaal ontwikkeld en/of gecertificeerd door het United States National Institute of Standards and Technology (NIST). Dit is een orgaan dat naar eigen zeggen nauw samenwerkt met de NSA bij de ontwikkeling van haar cijfers.

gezien wat we nu weten van de systematische pogingen van de NSA om achterdeuren te verzwakken of in te bouwen in internationale versleutelingsnormen, is er alle reden om de integriteit van NIST-algoritmen in twijfel te trekken.

NIST weerlegt dergelijke beweringen natuurlijk sterk:

” NIST zou een cryptografische standaard niet opzettelijk verzwakken.”

het heeft ook het publiek uitgenodigd deel te nemen aan een aantal voorgestelde versleutelingsstandaarden, in een poging het vertrouwen van het publiek te versterken.De New York Times beschuldigde de NSA echter van het omzeilen van NIST-goedgekeurde versleutelingsstandaarden door ofwel niet-detecteerbare achterdeuren in te voeren of het publieke ontwikkelingsproces te ondermijnen om de algoritmen te verzwakken.

dit wantrouwen werd verder versterkt toen RSA Security (een afdeling van EMC) privé klanten vertelde om te stoppen met het gebruik van een encryptie-algoritme dat naar verluidt een fout bevat ontworpen door de NSA. Dit algoritme was ook goedgekeurd door NIST.

verder is Dual_EC_DRBG (Dual Elliptic Curve Deterministic Random Bit Generator) een versleutelingsstandaard ontworpen door NIST. Het staat al jaren bekend als onzeker.

in 2006 merkte de Technische Universiteit Eindhoven op dat een aanval op de computer eenvoudig genoeg was om te starten op “een gewone PC.”Microsoft ingenieurs ook gemarkeerd een vermoedelijke achterdeur in het algoritme.

ondanks deze bezorgdheid volgt de industrie waar NIST de leiding heeft. Microsoft, Cisco, Symantec en RSA bevatten allemaal het algoritme in de cryptografische bibliotheken van hun product. Dit is voor een groot deel omdat de naleving van de NIST-normen een voorwaarde is voor het verkrijgen van overheidscontracten in de VS.

NIST-gecertificeerde cryptografische standaarden zijn vrijwel overal wereldwijd aanwezig, in alle sectoren van de industrie en het bedrijfsleven die afhankelijk zijn van privacy. Dit maakt de hele situatie nogal huiveringwekkend.

misschien juist omdat zoveel afhankelijk is van deze normen, zijn cryptografiedeskundigen niet bereid geweest het probleem onder ogen te zien.

AES-CBC vs AES-GCM

tot voor kort was AES-CBC (Cipher Block Chaining) de enige AES-codering die u waarschijnlijk tegenkwam in de VPN-wereld. Dit verwijst naar de block cipher mode, een complex onderwerp dat niet echt de moeite waard is om hier op in te gaan. Hoewel CBC theoretisch een aantal kwetsbaarheden kan hebben, is de algemene consensus dat CBC veilig is. CBC wordt inderdaad aanbevolen in de openvpn handleiding.

OpenVPN ondersteunt nu ook AES-GCM (Galios/Counter Mode).

  • GCM biedt authenticatie, waardoor de noodzaak voor een HMAC SHA hashing functie wordt verwijderd.
  • het is ook iets sneller dan CBC omdat het hardwareversnelling gebruikt (door threading naar meerdere processorkernen).

AES-CBC blijft de meest voorkomende modus in algemeen gebruik, maar we beginnen nu AES-GCM “in het wild tegen te komen.”Gezien de voordelen van GCM zal deze trend waarschijnlijk alleen maar doorzetten. Vanuit een cryptografisch perspectief, tho9ugh, zowel AES-CBC, en AES-GCM zijn zeer veilig.

OpenVPN UDP vs.OpenVPN TCP

OpenVPN kan draaien over TCP (Transmission Control Protocol) of UDP (User Datagram Protocol).

  • TCP = betrouwbaar. Wanneer een computer een netwerkpakket verzendt met behulp van TCP, wacht hij op bevestiging dat het pakket is aangekomen voordat hij het volgende pakket verzendt. Als er geen bevestiging wordt ontvangen, zal het pakket opnieuw worden verzonden. Dit staat bekend als foutcorrectie. Er is “gegarandeerde levering” van alle gegevens, maar het kan vrij traag zijn.
  • UDP = fast. Met UDP wordt een dergelijke foutcorrectie niet uitgevoerd. Pakketten worden eenvoudig verzonden en ontvangen zonder bevestigingen of pogingen. Dit maakt UDP veel sneller dan TCP, maar minder betrouwbaar.

als u de keuze hebt, stel ik voor het snellere UDP-protocol te gebruiken, tenzij u verbindingsproblemen ondervindt. Dit is de standaardstrategie van de meeste VPN-providers.

versla censuur met OpenVPN op tcp-poort 443

een van de grote voordelen van OpenVPN is dat het over elke poort kan worden uitgevoerd, inclusief TCP-poort 443. Dit is de poort die wordt gebruikt door HTTPS, het versleutelde protocol dat alle beveiligde websites beveiligt.

zonder HTTPS zou geen enkele vorm van online handel, zoals winkelen of bankieren, mogelijk zijn. Het is dan ook zeer zeldzaam dat deze haven wordt geblokkeerd.

als bonus kan VPN-verkeer op tcp-poort 443 binnen de TLS-versleuteling worden gerouteerd op dezelfde manier als wordt gebruikt door HTTPS. Dit maakt het veel moeilijker om te herkennen met behulp van geavanceerde Deep Packet inspectie technieken. TCP-poort 443 is daarom de favoriete poort voor het ontwijken van VPN-blokken.

veel VPN-providers bieden de mogelijkheid om het poortnummer te wijzigen dat door OpenVPN wordt gebruikt met behulp van hun aangepaste software.

zelfs als de jouwe dat niet doet, ondersteunen veel VPN-providers OpenVPN met tcp-poort 443 op serverniveau. U kunt overschakelen naar het met een eenvoudige bewerking naar uw OpenVPN configuratie (.ovpn) bestand. Het is daarom de moeite waard om uw VPN-provider hierover te vragen.

het is vermeldenswaard dat netwerkingenieurs een hekel hebben aan deze tactiek omdat TCP over TCP zeer inefficiënt is. Als het gaat om het verslaan van censuur, echter, het werkt vaak.

SSTP gebruikt standaard TCP-poort 443.

samenvattingen

VPN-protocollen

  • PPTP is zeer onzeker en moet worden vermeden. Hoewel het installatiegemak en platformonafhankelijke compatibiliteit aantrekkelijk zijn, heeft L2TP/IPsec dezelfde voordelen en is het veel veiliger.
  • L2TP / IPsec is een goede VPN-oplossing voor niet-kritisch gebruik. Dit geldt vooral voor oudere apparaten die geen OpenVPN ondersteunen. Het is echter ernstig gecompromitteerd door de NSA.
  • SSTP biedt de meeste voordelen van OpenVPN, maar is voornamelijk slechts een Windows-protocol. Dit betekent wel dat het beter is geïntegreerd in het besturingssysteem, maar het wordt slecht ondersteund door VPN-providers dankzij deze beperking. In aanvulling op deze, de eigen aard en het feit dat het is gemaakt door Microsoft betekenen dat ik, voor een, niet vertrouwen.
  • IKEv2 is een zeer goed (veilig en snel) protocol. Mobiele gebruikers, in het bijzonder, kan zelfs de voorkeur aan OpenVPN vanwege de verbeterde mogelijkheid om opnieuw verbinding te maken wanneer een internetverbinding wordt onderbroken. Voor Blackberry-gebruikers, het is vrijwel de enige optie beschikbaar. Gebruik open-source versies waar mogelijk.
  • OpenVPN is onder de meeste omstandigheden het aanbevolen VPN-protocol. Het is snel, betrouwbaar, veilig en open source. Het heeft geen echte nadelen, per se., maar om echt veilig te zijn is het belangrijk dat het goed wordt uitgevoerd. Dit betekent sterke encryptie met perfecte Forward Secrecy.

OpenVPN-versleuteling

als het gaat om versleuteling, zit de duivel in de details. Het is gebruikelijk om VPN-providers te zien zeggen dat ze “ultra-sterke 256-bit” AES OpenVPN-versleuteling gebruiken, maar dit vertelt ons in werkelijkheid niet veel. AES-256 is inderdaad een sterke cipher, maar als andere aspecten van de gebruikte encryptie suite zwak zijn, dan zullen uw gegevens niet veilig zijn.

  • Cipher-dit beschermt uw werkelijke gegevens. AES-256 is nu de industriestandaard en wordt aanbevolen.
  • Handshake – hiermee beveiligt u uw verbinding met de VPN-server. RSA-2048 + of ECDH-384 + zijn veilig. Belangrijk is dat RSA-1024 en Diffie-Hellman handdrukken dat niet zijn.
  • Hash – authenticatie: hiermee maakt u een unieke vingerafdruk aan, die wordt gebruikt om gegevens en TLS-certificaten te valideren (dat wil zeggen om te controleren of de server waarmee u verbinding maakt echt de server is waarmee u denkt verbinding te maken). HMAC SHA-1 is absoluut prima, maar HMAC SHA-2 (SHA-256, SHA-384 en SHA-512) en HMAC SHA-3 zijn nog veiliger! Merk op dat hash authenticatie niet vereist is als de AES-GCM cipher wordt gebruikt.
  • Perfect Forward Secrecy (PFS) – dit zorgt ervoor dat er voor elke sessie nieuwe versleutelingssleutels worden aangemaakt. OpenVPN mag niet als veilig worden beschouwd tenzij PFS is geïmplementeerd. Dit kan gedaan worden door een Diffie-Hellman of ECDH sleutel uitwisseling in een RSA handshake, of een DH of ECDH handshake.
  • versleuteling is alleen zo veilig als het zwakste punt. Dit betekent dat versleutelingsinstellingen sterk moeten zijn op zowel de data-als besturingskanalen.
  • het gebruik van hogere bitlengtes voor cijfers en sleutels is bijna altijd veiliger, maar dit kost snelheid.

OpenVPN onderhandelt naar believen over cijfers tussen client en server. Tenzij zeer specifieke parameters worden gedefinieerd, kan OpenVPN standaard zwakke instellingen. Op zijn minst, OpenVPN zal standaard naar Blowfish-128 cipher, RSA-1024 handshake zonder PFS, en HMAC SHA-1 hash authenticatie.

conclusie

hopelijk hebt u nu een beter begrip van wat zorgt voor een veilige VPN-verbinding. Als het gaat om het correct configureren van een VPN, echter, encryptie is slechts de helft van het verhaal. De andere helft is ervoor te zorgen dat er geen verkeer binnenkomt of verlaat uw computer buiten de VPN-verbinding.

om hier meer over te weten te komen, kijk dan op onze complete gids voor IP-lekken.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.