Experimento CacheBrowser: evitando o firewall chinés sen un proxy usando o caché de contido

Experimento CacheBrowser: evitando o firewall chinés sen un proxy usando o caché de contido

Imaxe: Unsplash

Hoxe, unha parte importante de todo o contido en Internet distribúese mediante redes CDN. Ao mesmo tempo, investiga como diversos censores estenden a súa influencia sobre este tipo de redes. Científicos da Universidade de Massachusetts analizado posibles métodos de bloqueo de contido CDN usando o exemplo das prácticas das autoridades chinesas, e tamén desenvolveu unha ferramenta para evitar ese bloqueo.

Elaboramos un material de repaso coas principais conclusións e resultados deste experimento.

Introdución

A censura é unha ameaza global á liberdade de expresión en Internet e ao libre acceso á información. Isto é en gran parte posible debido ao feito de que Internet tomou prestado o modelo de "comunicación de extremo a extremo" das redes telefónicas dos anos 70 do século pasado. Isto permítelle bloquear o acceso ao contido ou ás comunicacións dos usuarios sen esforzo ou custo significativos simplemente en función do enderezo IP. Aquí hai varios métodos, desde bloquear o propio enderezo con contido prohibido ata bloquear a capacidade dos usuarios de recoñecelo mediante a manipulación do DNS.

Porén, o desenvolvemento de Internet tamén provocou a aparición de novas formas de difusión da información. Un deles é o uso de contido en caché para mellorar o rendemento e acelerar as comunicacións. Hoxe, os provedores de CDN procesan unha cantidade importante de todo o tráfico do mundo; só Akamai, o líder neste segmento, representa ata o 30 % do tráfico web estático global.

Unha rede CDN é un sistema distribuído para ofrecer contido de Internet á máxima velocidade. Unha rede CDN típica está formada por servidores en diferentes localizacións xeográficas que almacenan na memoria caché o contido para servilo aos usuarios máis próximos a ese servidor. Isto permítelle aumentar significativamente a velocidade da comunicación en liña.

Ademais de mellorar a experiencia dos usuarios finais, o hospedaxe CDN axuda aos creadores de contido a escalar os seus proxectos reducindo a carga da súa infraestrutura.

Censurando o contido da CDN

A pesar de que o tráfico CDN xa constitúe unha parte importante de toda a información transmitida a través de Internet, aínda non hai case ningunha investigación sobre como os censores do mundo real abordan o seu control.

Os autores do estudo comezaron explorando técnicas de censura que se poden aplicar ás CDN. Despois estudaron os mecanismos reais empregados polas autoridades chinesas.

En primeiro lugar, imos falar dos posibles métodos de censura e da posibilidade de utilizalos para controlar a CDN.

Filtrado IP

Esta é a técnica máis sinxela e barata para censurar Internet. Usando este enfoque, o censor identifica e coloca na lista negra os enderezos IP dos recursos que aloxan contido prohibido. Entón os provedores de Internet controlados deixan de entregar paquetes enviados a tales enderezos.

O bloqueo baseado en IP é un dos métodos máis comúns de censura de Internet. A maioría dos dispositivos de rede comerciais están equipados con funcións para implementar tal bloqueo sen un esforzo computacional significativo.

Non obstante, este método non é moi axeitado para bloquear o tráfico CDN debido a algunhas propiedades da propia tecnoloxía:

  • Caché distribuido – para garantir a mellor dispoñibilidade de contido e optimizar o rendemento, as redes CDN almacenan en caché o contido dos usuarios nun gran número de servidores perimetrais situados en lugares distribuídos xeograficamente. Para filtrar este contido en función da IP, o censor debería descubrir os enderezos de todos os servidores de borde e listalos en lista negra. Isto socavará as principais propiedades do método, porque a súa principal vantaxe é que, no esquema habitual, bloquear un servidor permítelle "cortar" o acceso ao contido prohibido para un gran número de persoas á vez.
  • IPs compartidas – Os provedores comerciais de CDN comparten a súa infraestrutura (é dicir, servidores de borde, sistema de mapeo, etc.) entre moitos clientes. Como resultado, o contido CDN prohibido cárgase desde os mesmos enderezos IP que o contido non prohibido. Como resultado, calquera intento de filtrado IP provocará o bloqueo dun gran número de sitios e contidos que non interesan aos censores.
  • Asignación de IP altamente dinámica – para optimizar o equilibrio de carga e mellorar a calidade do servizo, a cartografía dos servidores e usuarios finais realízase de forma moi rápida e dinámica. Por exemplo, Akamai actualiza os enderezos IP devoltos cada minuto. Isto fará case imposible que os enderezos estean asociados a contidos prohibidos.

Interferencia DNS

Ademais do filtrado IP, outro método de censura popular é a interferencia DNS. Este enfoque implica accións dos censores destinadas a evitar que os usuarios recoñezan os enderezos IP dos recursos con contido prohibido. É dicir, a intervención prodúcese a nivel de resolución de nomes de dominio. Hai varias formas de facelo, incluíndo o secuestro de conexións DNS, o uso de técnicas de envelenamento por DNS e o bloqueo de solicitudes de DNS a sitios prohibidos.

Este é un método de bloqueo moi efectivo, pero pódese evitar se usa métodos de resolución DNS non estándar, por exemplo, canles fóra de banda. Polo tanto, os censores adoitan combinar o bloqueo de DNS co filtrado de IP. Pero, como se indicou anteriormente, o filtrado IP non é efectivo para censurar o contido CDN.

Filtrar por URL/palabras clave usando DPI

Os modernos equipos de vixilancia da actividade da rede pódense utilizar para analizar URL e palabras clave específicas en paquetes de datos transmitidos. Esta tecnoloxía chámase DPI (inspección profunda de paquetes). Estes sistemas atopan mencións de palabras e recursos prohibidos, despois de que interfiren coa comunicación en liña. Como resultado, simplemente bótanse os paquetes.

Este método é efectivo, pero máis complexo e consume moitos recursos porque require a desfragmentación de todos os paquetes de datos enviados dentro de determinados fluxos.

O contido CDN pódese protexer de tal filtrado do mesmo xeito que o contido "normal"; en ambos os casos, o uso de cifrado (é dicir, HTTPS) axuda.

Ademais de usar DPI para atopar palabras clave ou URL de recursos prohibidos, estas ferramentas pódense usar para unha análise máis avanzada. Estes métodos inclúen análise estatística do tráfico en liña/offline e análise de protocolos de identificación. Estes métodos son moi intensivos en recursos e polo momento simplemente non hai probas do seu uso por parte dos censores nunha medida suficientemente seria.

Autocensura dos provedores de CDN

Se o censor é o estado, entón ten todas as oportunidades para prohibir que os provedores de CDN operen no país que non obedecen as leis locais que regulan o acceso ao contido. Non se pode resistir de ningún xeito á autocensura; polo tanto, se unha empresa provedora de CDN está interesada en operar nun determinado país, estará obrigada a cumprir as leis locais, aínda que restrinxen a liberdade de expresión.

Como China censura o contido da CDN

O Gran Firewall de China considérase xustamente o sistema máis eficaz e avanzado para garantir a censura de Internet.

Metodoloxía da investigación

Os científicos realizaron experimentos utilizando un nodo Linux situado dentro de China. Tamén tiñan acceso a varios ordenadores fóra do país. En primeiro lugar, os investigadores comprobaron que o nodo estaba suxeito a unha censura similar á aplicada a outros usuarios chineses; para iso, tentaron abrir varios sitios prohibidos desde esta máquina. Polo que se confirmou a presenza do mesmo nivel de censura.

A lista de sitios web bloqueados en China que usan CDN foi tomada de GreatFire.org. Despois analizouse o método de bloqueo en cada caso.

Segundo datos públicos, o único actor importante do mercado CDN con infraestrutura propia en China é Akamai. Outros provedores que participan no estudo: CloudFlare, Amazon CloudFront, EdgeCast, Fastly e SoftLayer.

Durante os experimentos, os investigadores descubriron os enderezos dos servidores perimetrais de Akamai dentro do país e despois intentaron almacenar en caché o contido permitido a través deles. Non foi posible acceder ao contido prohibido (devolveuse o erro prohibido HTTP 403) - ao parecer a empresa autocensura para manter a capacidade de operar no país. Ao mesmo tempo, o acceso a estes recursos permaneceu aberto fóra do país.

Os ISP sen infraestrutura en China non se autocensuran aos usuarios locais.

No caso doutros provedores, o método de bloqueo máis utilizado foi o filtrado DNS: as solicitudes a sitios bloqueados resólvense con enderezos IP incorrectos. Ao mesmo tempo, o firewall non bloquea os propios servidores de borde CDN, xa que almacenan información prohibida e permitida.

E se no caso de tráfico sen cifrar as autoridades teñen a capacidade de bloquear páxinas individuais de sitios usando DPI, cando usan HTTPS só poden denegar o acceso a todo o dominio no seu conxunto. Isto tamén leva ao bloqueo do contido permitido.

Ademais, China ten os seus propios provedores de CDN, incluíndo redes como ChinaCache, ChinaNetCenter e CDNetworks. Todas estas empresas cumpren totalmente as leis do país e bloquean contidos prohibidos.

CacheBrowser: ferramenta de derivación da CDN

Como mostrou a análise, é bastante difícil para os censores bloquear o contido CDN. Polo tanto, os investigadores decidiron ir máis aló e desenvolver unha ferramenta de derivación de bloques en liña que non utiliza tecnoloxía proxy.

A idea básica da ferramenta é que os censores teñen que interferir co DNS para bloquear os CDN, pero en realidade non tes que usar a resolución de nomes de dominio para descargar contido CDN. Así, o usuario pode obter o contido que precisa contactando directamente co servidor de borde, onde xa está almacenado na caché.

O seguinte diagrama mostra o deseño do sistema.

Experimento CacheBrowser: evitando o firewall chinés sen un proxy usando o caché de contido

O software cliente está instalado no ordenador do usuario e úsase un navegador normal para acceder ao contido.

Cando xa se solicitou un URL ou un contido, o navegador fai unha solicitude ao sistema DNS local (LocalDNS) para obter o enderezo IP de hospedaxe. O DNS normal só se consulta para dominios que aínda non están na base de datos LocalDNS. O módulo Scraper percorre continuamente os URL solicitados e busca na lista nomes de dominio potencialmente bloqueados. A continuación, Scraper chama ao módulo Resolver para resolver os dominios bloqueados recentemente descubertos, este módulo realiza a tarefa e engade unha entrada a LocalDNS. A caché DNS do navegador borrárase entón para eliminar os rexistros DNS existentes para o dominio bloqueado.

Se o módulo Resolver non pode descubrir a que provedor CDN pertence o dominio, pediralle axuda ao módulo Bootstrapper.

Como funciona na práctica

O software cliente do produto implementouse para Linux, pero tamén se pode portar facilmente para Windows. Mozilla normal úsase como navegador
Firefox. Os módulos Scraper e Resolver están escritos en Python e as bases de datos Customer-to-CDN e CDN-toIP almacénanse en ficheiros .txt. A base de datos LocalDNS é o ficheiro /etc/hosts normal en Linux.

Como resultado, para un URL bloqueado como bloqueado.com O script obterá o enderezo IP do servidor de borde do ficheiro /etc/hosts e enviará unha solicitude HTTP GET para acceder a BlockedURL.html cos campos de cabeceira HTTP do host:

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

O módulo Bootstrapper está implementado mediante a ferramenta gratuíta digwebinterface.com. Este resolvedor de DNS non se pode bloquear e responde a consultas de DNS en nome de varios servidores DNS distribuídos xeograficamente en diferentes rexións de rede.

Usando esta ferramenta, os investigadores conseguiron acceder a Facebook desde o seu nodo chinés, aínda que a rede social leva moito tempo bloqueada en China.

Experimento CacheBrowser: evitando o firewall chinés sen un proxy usando o caché de contido

Conclusión

O experimento demostrou que aproveitar os problemas que experimentan os censores ao intentar bloquear o contido da CDN pode usarse para crear un sistema para evitar bloqueos. Esta ferramenta permítelle evitar bloqueos incluso en China, que ten un dos sistemas de censura en liña máis potentes.

Outros artigos sobre o tema do uso proxies residentes para empresas:

Fonte: www.habr.com

Engadir un comentario