Pour lutter contre les multi-comptes, les services de streaming bloquent les VPN.
C’est notamment le cas de Netflix, M6Replay, Primevidéo et bien d’autres.
Certains sites internet pour des raisons de sécurité peuvent bloquer les VPN.
Mais comment ces services internet savent que vous utilisez un VPN ?
Comment détectent-il que vous avez un VPN ?
Il existe plusieurs méthodes pour détecter que connexion passe par un VPN.
Dans cet article, vous trouverez les principales.
Table des matières
Pourquoi VPN sont bloqués ?
La plupart des services de streaming bloquent et interdisent l’utilisation de VPN.
Le but est d’éviter les comptes multiples mais aussi le blocage géographique pour éviter de contourner des restrictions locales.
En effet, sur NetFlix US on peut avoir des films dont la sortie n’est pas autorisée en France.
A partir de là, on peut avoir des messages du type Proxy ou VPN non autorisés.
Même chose sur Netflix avec une erreur de streaming à cause de l’utilisation de VPN.
Enfin certains sites internet peuvent aussi bloquer les VPN.
Dans ces cas là, on peut avoir des erreurs 403, accès refusé.
Vous allez voir qu’il n’est pas très difficile de détecter l’utilisation d’un VPN pour mettre en place des filtres et blocages.
Comment les VPN sont détectés et bloqués
Il existe plusieurs méthodes.
On pourrait bannir chaque adresse IP de chaque serveur VPN.
Mais il est relativement facile de contourner cela en créant de nouveaux serveurs VPN.
C’est la limite des listes noires et blacklist.
ASN : Autonomous System Number
Une autre méthode consiste à détecter les VPN par les Autonomous System Number (ASN).
Les fournisseurs d’accès internet, hébergeur ou autres organismes ont des adresses IP qui leur sont délivrées par les registres internet régionales.
Tout ceci est fait de manière cohérente et chaque routes sont enregistrées dans des ASN.
Par exemple ci-dessous GLOBALASX qui appartient à M247 utilise l’AS9009 qui comprend les IP de 188.214.122.0 à 188.214.122.255.
A partir de là, il est très facile d’identifier un hébergeur ou un fournisseur d’accès internet.
Or les VPN utilisent des serveurs dans le monde mais souvent avec les mêmes hébergeurs (M247, Portlane AB, etc).
Le site suivant s’était amusé à énumérer les hébergeurs des VPN.
Ce qui d’ailleurs pose un problème de concentration et possible surveillance.
Il suffit alors de bannir ou bloquer les ASN des hébergeurs pour ne laisser que les ASN correspondant à des adresses IP de fournisseur d’accès internet (xDSL, Fibre).
Par exemple pour M247, ils possèdent les ASN 9009 et 16247.
Par exemple le site suivant bloque l’ASN 16276 (qui apaprtient à OVH).
La consultation retourne un Access denied – error 1005 par CloudFlare.
TTL et nombre de sauts (sauts et hop)
Qu’est-ce que le TTL et nombre de sauts
Il existe une autre méthode pour détecter les VPN à travers le nombre de sauts (hops) et TTL.
Cette méthode est relativement efficace.
Dans le protocole TCP/IP, on définit le TTL (Time to Live) qui correspondant à la durée de vie d’un paquet. Ce dernier se trouve dans l’en-tête de chaque paquet TCP/IP.
L’émetteur définit un compteur (max 255), lorsque le paquet traverse un routeur, ce dernier décrémente le TTL.
S’il est à zéro, le paquet est détruit (drop), cela afin d’éviter les boucles infinies.
Ainsi il définit aussi un nombre maximale de routeur que le paquet peut traverser soit donc de sauts (hop).
Mais chaque système d’exploitation définit un TTL différent.
- Linux kernel 2.4 (circa 2001): 255
- Linux kernel 4.10 (2015): 64
- Windows XP, 10 et Server : 128
- MacOS (2001): 64
Cette information permet potentiellement de déterminer l’OS utilisé par un émetteur mais aussi de détecter les VPN.
En effet, lors de l’utilisation d’un VPN, vous ajoutez un intermédiaire et donc un ou plusieurs routeurs ce qui décrémente le TTL.
Avec un VPN, vous aurez un TTL moins élevés qu’avec une connexion classique résidentielle.
Les empreintes et analyse des paquets TCP/IP permettent de déterminer le type de connexion.
La détection de VPN avec les empreintes numériques TCP/IP
Certains services le font très bien à travers les empreintes numériques TCP/IP notamment :
Par exemple doileak indique qu’il sagit d’une connexion DSL car la connexion s’est faites avec 14 sauts.
Alors que ci-dessous la connexion provient d’un VPN car il y a 13 sauts.
BrowserLeaks va plus loin avec un TCP/IP Fingerprint plus poussé.
Il indique
- L’OS de l’émetteur
- Le type de lien PPoE pour une DSL, IPSec ou VPN
- Le MTU (Maximum transmission unit) la taille maximale des paquets. Selon le type de connaissance, ce dernier diffère.
- Le nombre de sauts
Avec ProtonVPN, la détection de VPN par l’empreinte numérique TCP/IP ne fonctionne pas.
Avec CyberGhost, la détection de VPN fonctionne.
Enfin avec NordVPN, ça ne fonctionne pas mais les résultats sont loin d’une connexion DSL en Windows.
On peut donc supposer que la connexion passe par un intermédiaire.
Conclusion et liens
Comme vous pouvez le constater, il est très facile de détecter l’utilisation d’un VPN pour le bloquer.
Malheureusement, il n’existe pas de contre mesure efficace.
Si un service internet décide de bloquer les VPN, il pourra le faire sans problème.