Expérience CacheBrowser : contourner le pare-feu chinois sans proxy grâce à la mise en cache de contenu

Expérience CacheBrowser : contourner le pare-feu chinois sans proxy grâce à la mise en cache de contenu

Image: Unsplash

Aujourd'hui, une partie importante de tout le contenu sur Internet est distribué via les réseaux CDN. Parallèlement, des recherches sont menées sur la manière dont les différents censeurs étendent leur influence sur ces réseaux. Des scientifiques de l'Université du Massachusetts analysé méthodes possibles de blocage des contenus CDN en s'appuyant sur l'exemple des pratiques des autorités chinoises, et a également développé un outil pour contourner un tel blocage.

Nous avons préparé un document de synthèse avec les principales conclusions et résultats de cette expérience.

introduction

La censure constitue une menace mondiale à la liberté d'expression sur Internet et au libre accès à l'information. Cela est en grande partie possible grâce au fait qu'Internet a emprunté le modèle de « communication de bout en bout » aux réseaux téléphoniques des années 70 du siècle dernier. Cela vous permet de bloquer l'accès au contenu ou aux communications des utilisateurs sans effort ni coût important, simplement en fonction de l'adresse IP. Il existe plusieurs méthodes ici, du blocage de l'adresse elle-même avec un contenu interdit au blocage de la capacité des utilisateurs à la reconnaître même à l'aide de la manipulation DNS.

Mais le développement d’Internet a également conduit à l’émergence de nouveaux modes de diffusion de l’information. L'un d'eux est l'utilisation du contenu mis en cache pour améliorer les performances et accélérer les communications. Aujourd'hui, les fournisseurs de CDN traitent une part importante de tout le trafic mondial : Akamai, leader dans ce segment, représente à lui seul jusqu'à 30 % du trafic Web statique mondial.

Un réseau CDN est un système distribué permettant de diffuser du contenu Internet à une vitesse maximale. Un réseau CDN typique se compose de serveurs situés dans différents emplacements géographiques qui mettent en cache le contenu pour le diffuser aux utilisateurs les plus proches de ce serveur. Cela vous permet d'augmenter considérablement la vitesse de communication en ligne.

En plus d'améliorer l'expérience des utilisateurs finaux, l'hébergement CDN aide les créateurs de contenu à faire évoluer leurs projets en réduisant la charge sur leur infrastructure.

Censure du contenu CDN

Bien que le trafic CDN représente déjà une part importante de toutes les informations transmises sur Internet, il n'existe encore pratiquement aucune recherche sur la manière dont les censeurs du monde réel abordent son contrôle.

Les auteurs de l’étude ont commencé par explorer les techniques de censure pouvant être appliquées aux CDN. Ils ont ensuite étudié les mécanismes réels utilisés par les autorités chinoises.

Parlons d’abord des méthodes de censure possibles et de la possibilité de les utiliser pour contrôler le CDN.

Filtrage IP

Il s’agit de la technique la plus simple et la moins coûteuse pour censurer Internet. Grâce à cette approche, le censeur identifie et met sur liste noire les adresses IP des ressources hébergeant des contenus interdits. Les fournisseurs Internet contrôlés cessent alors de livrer les paquets envoyés à ces adresses.

Le blocage basé sur l’adresse IP est l’une des méthodes les plus courantes de censure d’Internet. La plupart des appareils réseau commerciaux sont équipés de fonctions permettant de mettre en œuvre un tel blocage sans effort de calcul important.

Cependant, cette méthode n’est pas très adaptée pour bloquer le trafic CDN en raison de certaines propriétés de la technologie elle-même :

  • Mise en cache distribuée – pour garantir la meilleure disponibilité du contenu et optimiser les performances, les réseaux CDN mettent en cache le contenu des utilisateurs sur un grand nombre de serveurs Edge situés dans des emplacements géographiquement répartis. Pour filtrer ce contenu en fonction de l'IP, le censeur devrait connaître les adresses de tous les serveurs périphériques et les mettre sur liste noire. Cela portera atteinte aux principales propriétés de la méthode, car son principal avantage est que dans le schéma habituel, le blocage d'un serveur permet de « couper » l'accès à des contenus interdits à un grand nombre de personnes à la fois.
  • IP partagées – Les fournisseurs CDN commerciaux partagent leur infrastructure (c'est-à-dire les serveurs Edge, le système de cartographie, etc.) entre de nombreux clients. Par conséquent, le contenu CDN interdit est chargé à partir des mêmes adresses IP que le contenu non interdit. En conséquence, toute tentative de filtrage IP entraînera le blocage d’un grand nombre de sites et de contenus qui n’intéressent pas les censeurs.
  • Attribution IP hautement dynamique – pour optimiser l’équilibrage de charge et améliorer la qualité de service, la cartographie des serveurs Edge et des utilisateurs finaux est réalisée de manière très rapide et dynamique. Par exemple, les mises à jour d'Akamai renvoyaient des adresses IP toutes les minutes. Cela rendra presque impossible l’association d’adresses à des contenus interdits.

Interférence DNS

Outre le filtrage IP, une autre méthode de censure populaire est l’interférence DNS. Cette approche implique des actions de censeurs visant à empêcher les utilisateurs de reconnaître les adresses IP des ressources au contenu interdit. Autrement dit, l'intervention se produit au niveau de la résolution du nom de domaine. Il existe plusieurs façons de procéder, notamment en détournant les connexions DNS, en utilisant des techniques d'empoisonnement DNS et en bloquant les requêtes DNS vers des sites interdits.

Il s'agit d'une méthode de blocage très efficace, mais elle peut être contournée si vous utilisez des méthodes de résolution DNS non standard, par exemple des canaux hors bande. Par conséquent, les censeurs combinent généralement le blocage DNS avec le filtrage IP. Mais, comme indiqué ci-dessus, le filtrage IP n’est pas efficace pour censurer le contenu CDN.

Filtrer par URL/mots-clés à l'aide de DPI

Les équipements modernes de surveillance de l’activité réseau peuvent être utilisés pour analyser des URL et des mots-clés spécifiques dans les paquets de données transmis. Cette technologie est appelée DPI (Deep Packet Inspection). De tels systèmes trouvent des mentions de mots et de ressources interdits, après quoi ils interfèrent avec la communication en ligne. En conséquence, les paquets sont simplement supprimés.

Cette méthode est efficace, mais plus complexe et gourmande en ressources car elle nécessite la défragmentation de tous les paquets de données envoyés au sein de certains flux.

Le contenu CDN peut être protégé contre un tel filtrage de la même manière que le contenu « normal » – dans les deux cas, l’utilisation du cryptage (c’est-à-dire HTTPS) est utile.

En plus d'utiliser le DPI pour trouver des mots-clés ou des URL de ressources interdites, ces outils peuvent être utilisés pour une analyse plus avancée. Ces méthodes comprennent l'analyse statistique du trafic en ligne/hors ligne et l'analyse des protocoles d'identification. Ces méthodes sont extrêmement gourmandes en ressources et, à l’heure actuelle, il n’existe tout simplement aucune preuve de leur utilisation par les censeurs de manière suffisamment sérieuse.

Autocensure des fournisseurs de CDN

Si le censeur est l’État, il a alors toutes les chances d’interdire aux fournisseurs de CDN d’opérer dans le pays qui ne respectent pas les lois locales régissant l’accès au contenu. Il est impossible de résister d'aucune façon à l'autocensure. Par conséquent, si un fournisseur de CDN souhaite opérer dans un certain pays, il sera contraint de se conformer aux lois locales, même si celles-ci restreignent la liberté d'expression.

Comment la Chine censure le contenu CDN

Le Grand Pare-feu de Chine est à juste titre considéré comme le système le plus efficace et le plus avancé pour assurer la censure d'Internet.

Méthodologie de recherche

Les scientifiques ont mené des expériences en utilisant un nœud Linux situé en Chine. Ils avaient également accès à plusieurs ordinateurs à l’extérieur du pays. Tout d'abord, les chercheurs ont vérifié que le nœud était soumis à une censure similaire à celle appliquée aux autres utilisateurs chinois - pour ce faire, ils ont tenté d'ouvrir divers sites interdits à partir de cette machine. La présence du même niveau de censure s’est donc confirmée.

La liste des sites Web bloqués en Chine qui utilisent des CDN provient de GreatFire.org. La méthode de blocage dans chaque cas a ensuite été analysée.

Selon des données publiques, le seul acteur majeur du marché CDN disposant de sa propre infrastructure en Chine est Akamai. Autres fournisseurs participant à l'étude : CloudFlare, Amazon CloudFront, EdgeCast, Fastly et SoftLayer.

Au cours des expériences, les chercheurs ont découvert les adresses des serveurs périphériques d'Akamai dans le pays, puis ont essayé de mettre en cache le contenu autorisé via eux. Il n'a pas été possible d'accéder au contenu interdit (une erreur HTTP 403 Forbidden a été renvoyée) - apparemment, l'entreprise s'autocensure afin de maintenir la capacité d'opérer dans le pays. Dans le même temps, l’accès à ces ressources restait ouvert en dehors du pays.

Les FAI sans infrastructure en Chine ne s’autocensurent pas les utilisateurs locaux.

Dans le cas d'autres fournisseurs, la méthode de blocage la plus couramment utilisée était le filtrage DNS : les requêtes vers des sites bloqués sont résolues en adresses IP incorrectes. Dans le même temps, le pare-feu ne bloque pas les serveurs Edge CDN eux-mêmes, car ils stockent à la fois des informations interdites et autorisées.

Et si, dans le cas d'un trafic non crypté, les autorités ont la possibilité de bloquer des pages individuelles de sites utilisant DPI, alors lors de l'utilisation de HTTPS, elles ne peuvent refuser l'accès qu'à l'ensemble du domaine dans son ensemble. Cela conduit également au blocage du contenu autorisé.

En outre, la Chine possède ses propres fournisseurs de CDN, notamment des réseaux tels que ChinaCache, ChinaNetCenter et CDNetworks. Toutes ces sociétés respectent pleinement les lois du pays et bloquent les contenus interdits.

CacheBrowser : outil de contournement du CDN

Comme l’a montré l’analyse, il est assez difficile pour les censeurs de bloquer le contenu CDN. Les chercheurs ont donc décidé d’aller plus loin et de développer un outil de contournement des blocages en ligne qui n’utilise pas la technologie proxy.

L'idée de base de l'outil est que les censeurs doivent interférer avec le DNS pour bloquer les CDN, mais vous n'avez pas réellement besoin d'utiliser la résolution de nom de domaine pour charger le contenu du CDN. Ainsi, l'utilisateur peut obtenir le contenu dont il a besoin en contactant directement le serveur Edge, où il est déjà mis en cache.

Le diagramme ci-dessous montre la conception du système.

Expérience CacheBrowser : contourner le pare-feu chinois sans proxy grâce à la mise en cache de contenu

Le logiciel client est installé sur l’ordinateur de l’utilisateur et un navigateur classique est utilisé pour accéder au contenu.

Lorsqu'une URL ou un contenu a déjà été demandé, le navigateur fait une requête au système DNS local (LocalDNS) pour obtenir l'adresse IP de l'hébergement. Le DNS standard n'est interrogé que pour les domaines qui ne figurent pas déjà dans la base de données LocalDNS. Le module Scraper parcourt en permanence les URL demandées et recherche dans la liste les noms de domaine potentiellement bloqués. Scraper appelle ensuite le module Resolver pour résoudre les domaines bloqués nouvellement découverts, ce module effectue la tâche et ajoute une entrée à LocalDNS. Le cache DNS du navigateur est ensuite vidé pour supprimer les enregistrements DNS existants pour le domaine bloqué.

Si le module Resolver ne parvient pas à déterminer à quel fournisseur CDN appartient le domaine, il demandera de l'aide au module Bootstrapper.

Comment ça marche en pratique

Le logiciel client du produit a été implémenté pour Linux, mais il peut également être facilement porté pour Windows. Mozilla standard est utilisé comme navigateur
Firefox. Les modules Scraper et Resolver sont écrits en Python et les bases de données Customer-to-CDN et CDN-toIP sont stockées dans des fichiers .txt. La base de données LocalDNS est le fichier /etc/hosts standard sous Linux.

En conséquence, pour une URL bloquée comme bloqué.com Le script obtiendra l'adresse IP du serveur Edge à partir du fichier /etc/hosts et enverra une requête HTTP GET pour accéder à BlockedURL.html avec les champs d'en-tête HTTP Host :

blocked.com/ and User-Agent: Mozilla/5.0 (Windows
NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1

Le module Bootstrapper est implémenté à l'aide de l'outil gratuit digwebinterface.com. Ce résolveur DNS ne peut pas être bloqué et répond aux requêtes DNS au nom de plusieurs serveurs DNS géographiquement répartis dans différentes régions du réseau.

Grâce à cet outil, les chercheurs ont réussi à accéder à Facebook depuis leur nœud chinois, bien que le réseau social soit bloqué depuis longtemps en Chine.

Expérience CacheBrowser : contourner le pare-feu chinois sans proxy grâce à la mise en cache de contenu

Conclusion

L'expérience a montré que tirer parti des problèmes rencontrés par les censeurs lorsqu'ils tentent de bloquer le contenu CDN peut être utilisé pour créer un système permettant de contourner les blocages. Cet outil vous permet de contourner les blocages même en Chine, qui dispose de l'un des systèmes de censure en ligne les plus puissants.

Autres articles sur le thème de l'utilisation mandataires résidents pour le business:

Source: habr.com

Ajouter un commentaire