Étude de cas de fuite 4: Fuites lorsque le serveur VPN n’est pas accessible

[ware_item id=33][/ware_item]

La protection par un VPN de la confidentialité et de la sécurité d'un utilisateur dépend de sa capacité à envoyer tout le trafic via un canal crypté vers les serveurs VPN associés. Lorsqu'une application VPN a du mal à atteindre le serveur auquel elle est connectée, elle peut ne pas répondre correctement de manière à protéger l'activité en ligne d'un utilisateur. Cette étude de cas de notre laboratoire de recherche sur la confidentialité décrit ce que sont ces types de fuites et comment les tester à l'aide des outils de test de fuite ExpressVPN.


Présentation de l'accessibilité du serveur VPN

Parfois, les applications VPN peuvent ne pas être en mesure d'atteindre le serveur VPN auquel elles sont connectées. Cela peut se produire pour plusieurs raisons, notamment:

  • Travaux de maintenance, par ex. pour les correctifs logiciels essentiels
  • Blocage
  • Défauts matériels
  • Pannes du centre de données
  • Mauvais itinéraires

Lorsque cela se produit, un utilisateur connecté au VPN perdra sa connectivité réseau. Les applications VPN devraient remarquer ce problème assez rapidement et prendre des mesures pour rétablir la connexion de l'utilisateur.

Ces fuites doivent être considérées comme assez graves, car il existe une forte probabilité qu'une application VPN ne parvienne pas à atteindre un serveur à un moment donné. Dans le monde réel, la probabilité que ces problèmes surviennent est relativement élevée. Les fournisseurs de VPN devraient s'assurer non seulement que leurs applications ne fuient pas dans ces conditions, mais également que l'utilisateur est rapidement reconnecté à un serveur accessible. Ce dernier point, cependant, est un problème d'expérience utilisateur et dépasse la portée de cette étude de cas de fuite..

Fuites d'accessibilité

Lorsque le serveur VPN est inaccessible, les applications VPN peuvent se comporter de plusieurs manières:

  • Ne pas remarquer le problème, laissant l'utilisateur sans connexion réseau
  • Détectez le problème et déconnectez définitivement l'utilisateur du VPN
  • Détectez le problème et essayez de connecter l'utilisateur à un autre serveur VPN

Dans chacun de ces scénarios, une application VPN pourrait fuir.

Test de fuites

Test manuel

Tester manuellement les fuites dans cette situation est assez difficile. En général, vous n'aurez aucun contrôle sur le serveur VPN lui-même et ne pourrez donc pas facilement simuler un problème d'accessibilité.

Généralement, la meilleure façon de simuler un problème d'accessibilité est d'utiliser des pare-feu. Cela peut être fait soit en utilisant des pare-feu sur l'appareil de test lui-même, soit des pare-feu sur un appareil en amont, par ex. un routeur ou un hôte de machine virtuelle. Nous considérons donc ces étapes appropriées uniquement pour les utilisateurs expérimentés.

Manipulation des pare-feu

Nous donnons ci-dessous les étapes de reproduction qui supposent que l'utilisateur est formé à la manipulation du pare-feu. Afin de manipuler les pare-feu, nous recommandons les outils suivants:

Les fenêtres: Netsh Advfirewall

MacOS: Filtre de paquets

Linux: iptables

Étapes de repro

  • Connectez votre appareil au VPN
  • Déterminez l'adresse IP du serveur VPN
  • Lancer la capture de paquets sur toutes les interfaces, par exemple en utilisant tcpdump
  • Créez une règle de pare-feu pour bloquer tout le trafic sortant vers l'adresse IP du serveur VPN
  • Attendez que l'application VPN remarque le blocage et se stabilise dans un nouvel état
  • Arrêter la capture de paquets
  • Supprimer la règle de pare-feu
  • Déconnectez le VPN
  • Vérifiez la capture du trafic pour les paquets non cryptés hors de l'appareil

Remarque: La vérification de la capture du trafic peut être délicate car il peut y avoir du bruit généré par le trafic IP local, ARP et tout autre trafic acceptable.

Test à l'aide des outils de test de fuite ExpressVPN

Les outils de test de fuite ExpressVPN sont une suite extensible d'outils Python open source conçus pour les tests de fuite manuels et automatisés des applications VPN. Veuillez consulter notre introduction aux outils pour obtenir des instructions sur le téléchargement et la configuration des outils..

Une fois que vous avez configuré les outils, assurez-vous que vous êtes dans le répertoire racine des outils et exécutez:

./run_tests.sh -c configs / case_studies / vpn_server_reachability_leaks.py

Ces tests effectueront exactement les étapes de test manuel décrites ci-dessus. Ils détermineront automatiquement l'IP du serveur VPN et créeront des règles de pare-feu pour bloquer la connectivité au serveur VPN. Cela simulera un échec d'accessibilité.

Les tests surveilleront ensuite les fuites pendant un certain temps pour voir comment le serveur VPN réagit. Ils vérifient les différents types de fuites et signalent tout problème.

Étude de cas de fuite 4: Fuites lorsque le serveur VPN n'est pas accessible
admin Author
Sorry! The Author has not filled his profile.