Quels sont les protocoles qu'utilise un VPN ?

02 mars 2021 à 17h00
0

Garants de la sécurité et de la transmission efficace des données, les protocoles VPN sont essentiels à la stabilité et à la fiabilité du service utilisé.

Protocole de tunneling, clé de chiffrement 256 bits, DNS, obfuscation, Kill Switch, fingerprinting… La liste des termes techniques gravitant autour des VPN est longue et parfois incompréhensible pour le grand public.
Lire la suite

Souvent configuré par défaut au sein des applications VPN grand public, le protocole est une donne à ne surtout pas négliger au regard d’une connexion anonyme et sécurisée. Il en existe aujourd’hui des dizaines, standardisés, open source ou propriétaires, qu’il faut impérativement étudier avant d’utiliser. Car tous n’atteignent pas le même niveau de sécurité et n’offrent pas les mêmes conditions de confidentialité.

Qu’est-ce qu’un protocole VPN ?

Commençons par le commencement. Un VPN – ou réseau privé virtuel – est une technologie permettant de générer un tunnel de connexion privé sur un réseau de télécommunication public. Pour mettre en place ce chemin alternatif, le VPN repose sur un protocole de tunneling permettant à la fois de chiffrer et de faire circuler les données émises et reçues par un utilisateur.

Concrètement, lorsque l’on envoie une requête à un serveur distant – pour accéder à une page web ou au réseau intranet de son entreprise, par exemple – le trafic est chiffré à la source et isolé du reste du trafic public en empruntant un canal virtuel qui le conduit à sa cible. En clair, se connecter à un serveur ou à un réseau distant à l’aide d’un VPN simule une connexion directe privée entre l’appareil source et le système cible.

Dans cette configuration, le protocole de tunneling, ou protocole VPN, est l’élément qui permet de réaliser le tunnel virtuel, de chiffrer et d’encapsuler les données (paquets) à la source, de les transporter, de les décapsuler et de les déchiffrer une fois réceptionnées.

De l’importance de bien choisir son protocole VPN

Dans la mesure du possible, on ne choisit pas un protocole de tunnelisation par défaut. Toutes les technologies existantes ne se valent pas, certaines étant aujourd’hui considérées comme obsolètes, d’autres comme peu fiables au regard du nombre de paquets (non-)acheminés. Sans parler des protocoles ne proposant aucun chiffrement. Il convient donc d’identifier les caractéristiques propres à chacun puisqu’elles sont garantes de la sécurité et de l’intégrité des données, mais également de la vitesse des transferts.

Un tel prérequis peut effrayer les utilisateurs les moins expérimentés, d’autant plus lorsque les spécifications techniques ressemblent à un charabia indigeste. Point rassurant : la plupart des fournisseurs dominant le marché des VPN domestiques font sensiblement appel aux mêmes protocoles reconnus comme sécurisés.

Néanmoins, parce qu’on n’est jamais mieux informé que par soi-même, connaître les quelques protocoles à privilégier, ainsi que ceux à éviter, ne peut pas faire de mal. Bien au contraire.

Les protocoles VPN à privilégier

Les protocoles présentés ici peuvent être considérés comme fiables et sécurisés. Tous ne recourent pas aux mêmes algorithmes de chiffrement ni ne conviennent à tous les dispositifs connectés. Cette liste n’est pas exhaustive, mais elle regroupe les protocoles les plus couramment utilisés.

OpenVPN

Open source et gratuit, OpenVPN est considéré comme le protocole le plus utilisé car fiable et hautement sécurisé. Dans le détail, il utilise massivement OpenSSL et fournit donc l’ensemble des algorithmes de chiffrement que contient la bibliothèque. Parmi les standards disponibles, on ne saurait que trop recommander le recours à l’AES qui, couplé à une clé 128 ou 256 bits, garantit une excellente sécurité des données.

En termes de protocoles de transmission, OpenVPN utilise au choix TCP et UDP. Pour rappel, dans une configuration TCP, la machine envoie les paquets un à un et attend confirmation de leur réception avant d’envoyer le suivant. La méthode est fiable mais peut ralentir la connexion réseau. A contrario, UDP transmet les paquets sans attendre de confirmation. La connexion est plus rapide, mais moins fiable. OpenVPN utilise également un troisième protocole personnalisé basé sur SSL/TLS fournissant un chiffrement allant jusqu’à 256 bits.

Un autre avantage d’OpenVPN réside la possibilité de le configurer sur n’importe quel port. Sur le port TCP HTTPS (443), il masque le trafic, le rendant presque impossible à distinguer du HTTPS standard, et donc très difficile à bloquer. De fait, il contourne aisément les pare-feux et les proxys.

Quelle que soit la méthode de transmission et de chiffrement choisie, OpenVPN n’a jamais été compromis. Compatible avec tous les OS existants (fixes et mobiles), il n’est cependant pas intégré nativement aux systèmes et nécessite l’installation d’une application tierce pour fonctionner.

WireGuard

WireGuard est un protocole libre très récent et prometteur. Plus rapide, léger et plus facile à configurer qu’OpenVPN, il utilise les technologies de chiffrement robustes que sont Curve25519, ChaCha20, Poly1305, BLAKE2, SipHash24, HKDF et le framework Noise. Concernant les protocoles de transmission, il délaisse TCP pour ses performances peu glorieuses, et se concentre sur UDP.

Son code très court est un autre gage de sa fiabilité : moins de lignes entraînent moins de bugs. Il est par ailleurs plus facile de traquer et corriger des failles sur quelques milliers de lignes que sur des centaines de milliers.

Différences de codes et degré de sécurité

Nombreuses ont été les comparaisons entre OpenVPN et WireGuard. Le premier engloberait près de 600 000 lignes quand le second se satisferait de 4 000 lignes. Le raccourci est tentant mais grossier, et il convient de faire une mise au point sur la densité du code d’OpenVPN vis-à-vis de celui de WireGuard. En réalité, la version open source d’OpenVPN ne comporte que 70 000 lignes de code environ. Le chiffre reste élevé, mais il faut comprendre qu’il inclut le support pour deux bibliothèques de chiffrement différentes. Par conséquent, on y trouve un nombre important de possibilités d’identification avancée (id/mot de passe, authentification à double facteur, certificats, etc.). WireGuard, de son côté, embarque une palette de méthodes d’identification restreinte, certes suffisante pour un utilisateur standard, mais trop succincte pour un utilisateur en quête d’une solution plus avancée.

Depuis 2020, Wireguard est intégré au noyau Linux. Il est par ailleurs compatible avec tous les autres systèmes d’exploitation et propose des optimisations pour les appareils mobiles (mise en veille du protocole lorsque le tunnel n’est pas utilisé, support de l’itinérance) et les objets connectés.

SSTP

SSTP est un protocole propriétaire de Microsoft, nativement intégré aux systèmes Windows depuis Vista SP1. Il est également disponible sur Linux.

Souvent couplé à l’AES (128 ou 256), SSTP est un protocole sécurisé. Par là même, parce qu’il utilise le protocole de transmission SSL/TLS, il est facile de le configurer sur le port TCP 443, et ainsi de contourner pare-feux et proxys.

Néanmoins, le recours exclusif à TCP présente également des inconvénients. Outre des performances réseau revues à la baisse, TCP peut souffrir d’un « meltdown » en cas de délai de transmission dépassé. Une défaillance technique qui conduit à la chute drastique des performances et à la dégradation de la transmission.

En définitive, SSTP est un protocole clairement sécurisé mais soumis aux caprices de la bande passante. Par ailleurs, son statut de protocole propriétaire l’empêche d’être audité en parfaite indépendance. Il s’agira alors de faire aveuglément confiance à Microsoft.

IKEv2/IPSec

À l’origine, IKE sert à configurer les informations de sécurité (chiffrement et clé de chiffrement) pour les données qui circulent avec IPSec. Dans sa deuxième version, il devient IKEv2 et se sert d’IPSec pour transporter les paquets UDP. Souvent associé à l’AES (128 ou 256), il offre un bon niveau de sécurité. Dans la mesure où il utilise le port 500, il contourne difficilement les pare-feux.

Le grand avantage d’IKEv2 réside dans sa rapidité. Son mode de fonctionnement lui permet de gérer parfaitement l’itinérance des appareils (connexion/déconnexion, changement de type de réseau), ce qui en fait une technologie adaptée aux smartphones et tablettes.

Légère ombre au tableau : IKEv2 est issu de l’association Microsoft/Cisco. Se pose une nouvelle fois la question de la transparence et de l’indépendance au regard d’un protocole plus difficile à auditer de manière impartiale qu’un pair open source.

L2TP/IPSec, à condition de rester vigilant

L2TP a la particularité de ne proposer aucun chiffrement, d’où son association récurrente à IPSec : L2TP encapsule les paquets et IPSec les chiffre (HMAC, AES-CBC, AES-GCM, Triple DES-CBC, ChaCha20/Poly1305), leur offrant une seconde encapsulation lorsqu’ils empruntent le tunnel virtuel. Le niveau de sécurité est donc élevé, mais cette double encapsulation génère régulièrement des ralentissements à l’émission et à la réception des paquets. Il faudra également s’assurer que tous les équipements du VPN (serveurs distants, notamment) implémentent le protocole IPSec. Dans le cas contraire, L2TP pourrait utiliser un autre protocole et la sécurité des données pourrait être compromise.

L2TP/IPSec utilise le port UDP 500. Il est facile à bloquer et contourne difficilement les pare-feux.

PPTP : le protocole à éviter

Bien qu’il ait été un modèle pour de nombreux protocoles actuels, PPTP est aujourd’hui trop vieux et vulnérable pour aspirer à sécuriser quoi que ce soit.

Mis au point par Microsoft et implémenté à Windows depuis Windows 95, PPTP peut être associé aux algorithmes MS-CHAPv2 (authentification) et MPPE (chiffrement de bout en bout) avec une clé de chiffrement 128 bits. Au regard de ce que propose la concurrence, c’est vraiment peu. Par ailleurs, les clés de session sont générées à partir d’un hachage du mot de passe utilisateur alors qu’elles devraient être générées aléatoirement pour garantir un niveau de sécurité plus élevé. De cette méthode de cryptage découle une faiblesse identifiée dès 1999 dans MS-CHAP qui résiste très mal aux attaques de force brute. Microsoft a évidemment tenté de corriger cette vulnérabilité avec un patch (MS-CHAPv2), mais aucun audit indépendant n’a permis de confirmer l’efficacité des corrections apportées.

Aujourd’hui, il est toujours aussi facile de casser un tunnel PPTP et de déchiffrer les données qui y circulent. En conséquence de quoi, établir une connexion VPN avec PPTP reviendrait à ne rien faire du tout, mis à part créer un tunnel virtuel. C’est acceptable si le VPN sert uniquement à accéder à un réseau externe (et encore : sa configuration sur le port TCP 1723 ne lui permet pas de contourner tous les pare-feux), mais inenvisageable si l’on souhaite rester anonyme et protéger des données confidentielles.

Tous ces inconvénients auront néanmoins l’avantage de faire émerger quelques atouts de PPTP dans le cas où aucune alternative ne serait possible. En raison de son niveau faible niveau de sécurité, ce protocole est très rapide. Il est également facile à configurer, disponible sur toutes les plateformes et ne nécessite pas d’application tierce pour être déployé.

Le cas particulier des protocoles maison

Certains fournisseurs de VPN domestiques jouent la carte du protocole maison, arguant un meilleur anonymat et une meilleure sécurité grâce à des méthodes de chiffrement toutes plus robustes les unes que les autres.

Aujourd’hui, la plupart des services les plus connus et les plus rapides utilisent une clé 256 bits et recourent à OpenVPN et WireGuard. C’est notamment le cas de NordVPN, ExpressVPN, CyberGhost, HMA, ProtonVPN, VyprVPN, Astrill, etc.

Parce qu’ils sont open source, OpenVPN et WireGuard sont également souvent utilisés dans le développement de protocoles propriétaires. On pense à NordLynx (NordVPN), Chameleon (VyprVPN) ou StealthVPN (Astrill). Dans le cas de NordLynx (basé sur WireGuard), il s’agit certes de renforcer la sécurité des connexions, mais surtout d’accélérer encore davantage la vitesse de navigation. Concernant Chameleon et StealthVPN, il s’agit surtout de contourner la censure dans des pays comme la Chine : ces deux protocoles brouillent les paquets OpenVPN, agissant comme une seconde mesure de sécurité et contournant les mesures anti-VPN. Mais comme toute solution propriétaire, difficile de savoir exactement ce qui se cache réellement derrière ces protocoles. Prudence, donc.

D’autres services vont même jusqu’à développer et implémenter des protocoles presque entièrement neufs. C’est le cas d’ExpressVPN et de sa solution Lightway dont on sait seulement qu’elle fait appel à la bibliothèque de chiffrement wolfSSL. Pour le reste, secret d’État.

Au final, l’usage déterminera le choix du protocole. Mais, dans la mesure du possible, mieux vaut toujours se tourner vers des solutions open source maintes fois éprouvées.

En savoir plus sur les différents termes associés aux VPN :

Soyez toujours courtois dans vos commentaires.
Respectez le réglement de la communauté.
0
0

Pourquoi nous faire confiance ?

Pour vous, Clubic sélectionne puis teste des centaines de produits afin de répondre aux usages les plus courants. De la qualité pour tous et à tous les prix, voilà notre objectif ! En savoir plus

Haut de page