Wat is het WireGuard VPN-protocol?

WireGuard is een open-source open source beveiligd tunneling VPN-protocol ontwikkeld door Jason Donenfeld. Het is een Layer 3 beveiligde netwerktunnel voor IPv4 en IPv6 die gebruikt "conservatieve moderne cryptografische protocollen". Het is gebaseerd op UDP en heeft stealth ingebouwd, waardoor het door firewalls kan dringen. Het authenticatiemodel voor WireGuard is gebaseerd op de authenticated_keys van SSH.

In vergelijking met gevestigde VPN-tunnelingprotocollen zoals IPSec en OpenVPN, is WireGuard klein. Met een gewicht van slechts 3782 coderegels (vergeleken met 329.853 voor OpenVPN) maakt de economische omvang van WireGuard het veel eenvoudiger om te controleren. Dit betekent dat het controleren van de beveiliging van het platform veel minder duur is en in een middag door slechts één persoon kan worden gedaan.

WireGuard is ontworpen als een algemene VPN voor gebruik op ingesloten interfaces. Hoewel WireGuard oorspronkelijk was ontworpen voor de Linux-kernel, is het nu geïmplementeerd voor Android, MacOS en Windows. WireGuard wordt zelfs geprezen als een mobiele VPN-applicatie - omdat de stealth-functies ervoor zorgen dat het nooit pakketten verzendt tenzij er feitelijke gegevens zijn om te verzenden. Het resultaat is dat, in tegenstelling tot andere VPN-protocollen, die veel stroom verbruiken, WireGuard de batterij niet constant leeg maakt.

Wireguard 2

Wat is er anders aan WireGuard?

De ontwikkelaar van WireGuard, Jason Donenfeld, is de oprichter van Edge Security. Hij sneed zijn tanden in de beveiligingsindustrie en werkte in offensieve en defensieve toepassingen. Hij ontwikkelde exfiltratiemethoden voor routekits waarmee hij binnen een netwerk kon blijven zonder te worden gedetecteerd.

“Als je in een netwerk bent en een rode team-beoordeling en penetratietest doet, wil je de persistentie in het netwerk kunnen behouden gedurende de opdracht. U wilt gegevens op een heimelijke manier kunnen exfiltreren - zodat u detectie kunt voorkomen - en de gegevens op een veilige en niet-gedetecteerde manier weghalen. "

Donenfeld zegt dat hij zich tijdens zijn beveiligingswerk bewust werd dat zijn methoden ook konden worden geïmplementeerd voor veilige communicatie:

“Ik realiseerde me dat veel van dezelfde technieken die ik nodig had voor veilige exfiltratie eigenlijk perfect zijn voor een defensieve VPN. Dus WireGuard heeft veel van deze leuke stealth-functies ingebouwd waar je er niet naar kunt zoeken op internet, het is niet detecteerbaar tenzij je weet waar het is. Het reageert niet op niet-geverifieerde pakketten. "

Het resultaat is volgens Donenfeld een VPN-tunnel die betrouwbaarder is dan zijn voorgangers en die gebaseerd is op nieuwe code in tegenstelling tot wat hij "gedateerde technologieën uit de jaren negentig" noemt..

Zeer kleine Wireguard

Waarom is Wireguard zo klein?

Een van de belangrijkste doelen van Donenfeld bij het ontwikkelen van WireGuard was om de code eenvoudig te houden. Volgens Donenfeld was dit geïnspireerd door zijn algemene gebrek aan vertrouwen in de enorme omvang van bestaande VPN-protocollen. Over OpenVPN en IPsec gesproken, legde Donenfeld uit:

"Zelfs na zoveel beoordelingen en teams die deze codebases controleren, vinden mensen nog steeds bugs, omdat ze gewoon te groot en complex zijn."

Donenfeld zegt dat zijn wens om WireGuard minimaal en eenvoudig te houden, heeft geleid tot de ontwikkeling van protocolcryptografie met een 'kleine implementatie', met minder mogelijke exploits en kwetsbaarheden:

“Alle velden in het protocol hebben bijvoorbeeld een vaste lengte, dus we hoeven geen parsers te hebben. En als er geen parsers zijn, zijn er geen bugs in de parser. "

Om over de cryptografie zelf te spreken, implementeren WireGuard (en WireGuard-clients zoals TunSafe) beproefde moderne primitieven zoals Curve25519 (voor elliptische curve Diffie Hellman), ChaCha20 (voor hashing), Poly1305 en BLAKE2 (voor geverifieerde codering) en SipHash2-4 (voor de hashtabellen). Donenfeld zegt dat "belangrijker is dat er geen behendigheid is voor cijfers". Dit is een belangrijk onderdeel van het protocol dat het veiliger maakt dan zijn voorgangers.

"Als het cijfer is gebroken, upgrade je en sta je geen gebroken cijfers toe op je netwerk. Op dit moment zijn deze [primitieven] de leukste, maar als ze op enig moment verouderd raken, zullen we ze veranderen."

Een ander interessant ding over Wireguard is dat het de doorvoer tot zes keer verhoogt in vergelijking met OpenVPN. In theorie betekent dit dat het veel beter is voor gegevensintensieve taken zoals gamen of streaming in HD.

Grote plannen

Grote plannen voor WireGuard op Linux

Momenteel is WireGuard een out-of-tree-module voor de Linux-kernel - dus wanneer u een Linux-distributie koopt, wordt deze niet vooraf geladen zoals XFS of andere stuurprogramma's. Dit betekent dat als u WireGuard wilt gebruiken, u de bron moet opsporen en zelf moet compileren - of een betrouwbare bron moet zoeken die deze al heeft gecompileerd voor uw Linux-kernelversie.

Donenfeld wil dat veranderen. De ontwikkelaar van WireGuard wil dat Linux de code standaard aan de kernel toevoegt, zodat alle Linux-distro's worden meegeleverd. Als het voorstel dat Donenfeld afgelopen dinsdag heeft ingediend, succesvol is, zou een set patches aan de Linux-kernel worden toegevoegd om de veilige VPN-tunnelingcode te integreren als een officieel netwerkstuurprogramma.

Vraagtekens

Kun je verwachten dat WireGuard binnenkort in een commerciële VPN-client wordt geïmplementeerd??

Voorlopig is WireGuard nog onbewezen. Hoewel het is onderworpen aan enige formele verificatie voor zijn cryptografische implementatie, wordt het nog niet als veilig beschouwd. Dit betekent dat het nog een weg te gaan heeft voordat het OpenVPN zal uitdagen.

Zelfs ontwikkelaars van WireGuard geven toe dat:

“WireGuard is nog niet compleet. Vertrouw niet op deze code. Het heeft geen goede beveiligingscontroles ondergaan en het protocol kan nog worden gewijzigd. We werken aan een stabiele 1.0-release, maar die tijd is nog niet gekomen. "

Bovendien is het afhandelen van sleuteluitwisseling door WireGuard een probleem voor commerciële VPN's, die hun API nodig hebben om op een veilige en efficiënte manier gedeelde sleutels tussen meerdere servers over de hele wereld te kunnen verwerken.

Desondanks is het praten over het toevoegen van WireGuard aan het Linux-kernelproject spannend en laat zien dat er veel hoop is op dit nieuwe VPN-protocol. Voorlopig blijft het waarschijnlijk aan de rand - alleen gebruikt door mensen die de extra beveiliging wensen bij het opzetten van hun eigen VPN-knooppunt.

Emanuel Morgan, CIO bij NordVPN, zegt dat hij WireGuard zeer interessant vindt, maar vertelde ProPrivacy.com dat commerciële VPN-providers moeten "wachten totdat het voldoende is gerijpt" voordat ze overwegen het te implementeren:

“Momenteel ontbreken er te veel onderdelen om het op schaal in te zetten en er is geen standaardmanier om sleutels te distribueren. Zonder sleuteldistributie is WireGuard minder wenselijk als een commerciële VPN-toepassing.

"Gebruikers moeten er zeker van zijn dat ze verbinding maken met een legitieme VPN-server en de servercertificaten van OpenVPN lossen dit probleem op een eenvoudige, veilige en efficiënte manier op. ”

Afbeelding credits: Nieuwe ontwerpillustraties / Shutterstock.com, tanewpix / Shutterstock.com, file404 / Shutterstock.com

Brayan Jackson
Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me