CacheBrowser-experiment: de Chinese firewall omzeilen zonder proxy met behulp van contentcaching

CacheBrowser-experiment: de Chinese firewall omzeilen zonder proxy met behulp van contentcaching

Foto: Unsplash

Tegenwoordig wordt een aanzienlijk deel van alle inhoud op internet verspreid via CDN-netwerken. Tegelijkertijd wordt onderzocht hoe verschillende censoren hun invloed op dergelijke netwerken uitbreiden. Wetenschappers van de Universiteit van Massachusetts geanalyseerd mogelijke methoden voor het blokkeren van CDN-inhoud aan de hand van het voorbeeld van de praktijken van de Chinese autoriteiten, en ontwikkelde ook een hulpmiddel om dergelijke blokkering te omzeilen.

We hebben een overzichtsmateriaal opgesteld met de belangrijkste conclusies en resultaten van dit experiment.

Introductie

Censuur is een mondiale bedreiging voor de vrijheid van meningsuiting op internet en de vrije toegang tot informatie. Dit is grotendeels mogelijk vanwege het feit dat internet het ‘end-to-end communicatie’-model heeft geleend van telefoonnetwerken uit de jaren zeventig van de vorige eeuw. Hierdoor kunt u zonder veel moeite of kosten de toegang tot inhoud of gebruikerscommunicatie blokkeren, eenvoudigweg op basis van het IP-adres. Er zijn hier verschillende methoden, van het blokkeren van het adres zelf met verboden inhoud tot het blokkeren van de mogelijkheid van gebruikers om het zelfs maar te herkennen met behulp van DNS-manipulatie.

De ontwikkeling van het internet heeft echter ook geleid tot de opkomst van nieuwe manieren om informatie te verspreiden. Eén daarvan is het gebruik van in de cache opgeslagen inhoud om de prestaties te verbeteren en de communicatie te versnellen. Tegenwoordig verwerken CDN-providers een aanzienlijk deel van al het verkeer ter wereld. Akamai, de leider in dit segment, is alleen al verantwoordelijk voor tot wel 30% van het wereldwijde statische webverkeer.

Een CDN-netwerk is een gedistribueerd systeem voor het leveren van internetinhoud op maximale snelheid. Een typisch CDN-netwerk bestaat uit servers op verschillende geografische locaties die inhoud in de cache opslaan om deze aan te bieden aan gebruikers die zich het dichtst bij die server bevinden. Hiermee kunt u de snelheid van online communicatie aanzienlijk verhogen.

Naast het verbeteren van de ervaring voor eindgebruikers, helpt CDN-hosting makers van inhoud hun projecten te schalen door de belasting van hun infrastructuur te verminderen.

Censureren van CDN-inhoud

Ondanks het feit dat CDN-verkeer al een aanzienlijk deel uitmaakt van alle informatie die via internet wordt verzonden, is er nog steeds vrijwel geen onderzoek naar hoe censoren in de echte wereld hun controle benaderen.

De auteurs van het onderzoek begonnen met het onderzoeken van censuurtechnieken die op CDN's kunnen worden toegepast. Vervolgens bestudeerden ze de feitelijke mechanismen die door de Chinese autoriteiten werden gebruikt.

Laten we het eerst hebben over mogelijke censuurmethoden en de mogelijkheid om deze te gebruiken om het CDN te controleren.

IP-filtering

Dit is de eenvoudigste en goedkoopste techniek om internet te censureren. Met behulp van deze aanpak identificeert de censor de IP-adressen van bronnen die verboden inhoud hosten en zet deze op de zwarte lijst. Vervolgens stoppen de gecontroleerde internetproviders met het bezorgen van pakketten die naar dergelijke adressen worden verzonden.

IP-gebaseerde blokkering is een van de meest gebruikelijke methoden om internet te censureren. De meeste commerciële netwerkapparaten zijn uitgerust met functies om dergelijke blokkering te implementeren zonder noemenswaardige rekeninspanningen.

Deze methode is echter niet erg geschikt voor het blokkeren van CDN-verkeer vanwege enkele eigenschappen van de technologie zelf:

  • Gedistribueerde caching – Om de beste beschikbaarheid van inhoud te garanderen en de prestaties te optimaliseren, cachen CDN-netwerken gebruikersinhoud op een groot aantal edge-servers die zich op geografisch verspreide locaties bevinden. Om dergelijke inhoud op basis van IP te filteren, zou de censor de adressen van alle edge-servers moeten achterhalen en deze op de zwarte lijst moeten zetten. Dit zal de belangrijkste eigenschappen van de methode ondermijnen, omdat het belangrijkste voordeel is dat je in het gebruikelijke schema door het blokkeren van één server de toegang tot verboden inhoud voor een groot aantal mensen tegelijk kunt "afsnijden".
  • Gedeelde IP's – commerciële CDN-providers delen hun infrastructuur (d.w.z. edge-servers, mapping-systeem, enz.) met veel klanten. Als gevolg hiervan wordt verboden CDN-inhoud geladen vanaf dezelfde IP-adressen als niet-verboden inhoud. Als gevolg hiervan zal elke poging tot IP-filtering resulteren in het blokkeren van een groot aantal sites en inhoud die niet van belang zijn voor de censuur.
  • Zeer dynamische IP-toewijzing – om de taakverdeling te optimaliseren en de kwaliteit van de dienstverlening te verbeteren, wordt het in kaart brengen van edge-servers en eindgebruikers zeer snel en dynamisch uitgevoerd. Akamai-updates retourneerden bijvoorbeeld elke minuut IP-adressen. Hierdoor wordt het vrijwel onmogelijk dat adressen in verband worden gebracht met verboden inhoud.

DNS-interferentie

Naast IP-filtering is DNS-interferentie een andere populaire censuurmethode. Deze aanpak omvat acties van censors die erop gericht zijn te voorkomen dat gebruikers de IP-adressen van bronnen met verboden inhoud herkennen. Dat wil zeggen dat de interventie plaatsvindt op het resolutieniveau van de domeinnaam. Er zijn verschillende manieren om dit te doen, waaronder het kapen van DNS-verbindingen, het gebruik van DNS-vergiftigingstechnieken en het blokkeren van DNS-verzoeken aan verboden sites.

Dit is een zeer effectieve blokkeermethode, maar deze kan worden omzeild als u niet-standaard DNS-resolutiemethoden gebruikt, bijvoorbeeld out-of-band-kanalen. Daarom combineren censors DNS-blokkering meestal met IP-filtering. Maar zoals hierboven vermeld, is IP-filtering niet effectief bij het censureren van CDN-inhoud.

Filter op URL/trefwoorden met behulp van DPI

Moderne apparatuur voor het monitoren van netwerkactiviteit kan worden gebruikt om specifieke URL's en trefwoorden in verzonden datapakketten te analyseren. Deze technologie wordt DPI (deep packet inspection) genoemd. Dergelijke systemen ontdekken vermeldingen van verboden woorden en middelen, waarna ze de online communicatie verstoren. Als gevolg hiervan worden de pakketten eenvoudigweg verwijderd.

Deze methode is effectief, maar complexer en arbeidsintensiever omdat het defragmentatie vereist van alle datapakketten die binnen bepaalde stromen worden verzonden.

CDN-inhoud kan op dezelfde manier tegen dergelijke filtering worden beschermd als ‘gewone’ inhoud – in beide gevallen helpt het gebruik van encryptie (d.w.z. HTTPS).

Naast het gebruik van DPI om trefwoorden of URL's van verboden bronnen te vinden, kunnen deze tools worden gebruikt voor geavanceerdere analyses. Deze methoden omvatten statistische analyse van online/offline verkeer en analyse van identificatieprotocollen. Deze methoden zijn uiterst arbeidsintensief en op dit moment is er eenvoudigweg geen bewijs dat de censuur ze in voldoende ernstige mate gebruikt.

Zelfcensuur van CDN-providers

Als de censor de staat is, heeft deze alle mogelijkheden om die CDN-providers te verbieden actief te zijn in het land die zich niet houden aan de lokale wetten die de toegang tot inhoud regelen. Zelfcensuur kan op geen enkele manier worden weerstaan. Als een CDN-leverancier geïnteresseerd is om in een bepaald land actief te zijn, zal het daarom gedwongen worden om aan de lokale wetten te voldoen, zelfs als deze de vrijheid van meningsuiting beperken.

Hoe China CDN-inhoud censureert

De Grote Firewall van China wordt terecht beschouwd als het meest effectieve en geavanceerde systeem om internetcensuur te garanderen.

Onderzoeksmethode

Wetenschappers voerden experimenten uit met behulp van een Linux-knooppunt in China. Ze hadden ook toegang tot verschillende computers in het buitenland. Eerst controleerden de onderzoekers of het knooppunt onderworpen was aan censuur die vergelijkbaar was met die van andere Chinese gebruikers. Om dit te doen, probeerden ze verschillende verboden sites vanaf deze machine te openen. Dus de aanwezigheid van hetzelfde niveau van censuur werd bevestigd.

De lijst met in China geblokkeerde websites die CDN’s gebruiken, is afkomstig van GreatFire.org. Vervolgens werd de blokkeringsmethode in elk geval geanalyseerd.

Volgens openbare gegevens is Akamai de enige grote speler op de CDN-markt met een eigen infrastructuur in China. Andere providers die aan het onderzoek deelnemen: CloudFlare, Amazon CloudFront, EdgeCast, Fastly en SoftLayer.

Tijdens de experimenten ontdekten de onderzoekers de adressen van Akamai edge-servers in het land en probeerden vervolgens de toegestane inhoud via deze in de cache te krijgen. Het was niet mogelijk om toegang te krijgen tot verboden inhoud (HTTP 403 Forbidden-fout werd geretourneerd) - blijkbaar is het bedrijf zelfcensurerend om de mogelijkheid om in het land te kunnen opereren te behouden. Tegelijkertijd bleef de toegang tot deze hulpbronnen buiten het land open.

ISP's zonder infrastructuur in China censureren lokale gebruikers niet zelf.

Bij andere providers was DNS-filtering de meest gebruikte blokkeermethode: verzoeken aan geblokkeerde sites worden omgezet naar onjuiste IP-adressen. Tegelijkertijd blokkeert de firewall de CDN-edgeservers zelf niet, aangezien deze zowel verboden als toegestane informatie opslaan.

En als de autoriteiten bij onversleuteld verkeer de mogelijkheid hebben om individuele pagina's van sites te blokkeren met behulp van DPI, kunnen ze bij gebruik van HTTPS alleen de toegang tot het hele domein als geheel weigeren. Dit leidt ook tot het blokkeren van toegestane inhoud.

Daarnaast beschikt China over eigen CDN-providers, waaronder netwerken als ChinaCache, ChinaNetCenter en CDNetworks. Al deze bedrijven voldoen volledig aan de wetten van het land en blokkeren verboden inhoud.

CacheBrowser: CDN-bypass-tool

Zoals uit de analyse bleek, is het voor censuur vrij moeilijk om CDN-inhoud te blokkeren. Daarom besloten de onderzoekers verder te gaan en een online block bypass-tool te ontwikkelen die geen gebruik maakt van proxytechnologie.

Het basisidee van de tool is dat censors zich moeten bemoeien met de DNS om CDN’s te blokkeren, maar dat je feitelijk geen domeinnaamresolutie hoeft te gebruiken om CDN-inhoud te laden. Zo kan de gebruiker de inhoud verkrijgen die hij nodig heeft door rechtstreeks contact op te nemen met de edge-server, waar deze al in de cache is opgeslagen.

Het onderstaande diagram toont het systeemontwerp.

CacheBrowser-experiment: de Chinese firewall omzeilen zonder proxy met behulp van contentcaching

Clientsoftware wordt op de computer van de gebruiker geïnstalleerd en er wordt een gewone browser gebruikt om toegang te krijgen tot de inhoud.

Wanneer er al een URL of stukje inhoud is opgevraagd, doet de browser een verzoek aan het lokale DNS-systeem (LocalDNS) om het hosting-IP-adres te verkrijgen. Reguliere DNS wordt alleen opgevraagd voor domeinen die nog niet in de LocalDNS-database staan. De Scraper-module doorzoekt voortdurend de gevraagde URL's en doorzoekt de lijst op mogelijk geblokkeerde domeinnamen. Scraper roept vervolgens de Resolver-module aan om de nieuw ontdekte geblokkeerde domeinen op te lossen, deze module voert de taak uit en voegt een vermelding toe aan LocalDNS. De DNS-cache van de browser wordt vervolgens gewist om bestaande DNS-records voor het geblokkeerde domein te verwijderen.

Als de Resolver-module niet kan achterhalen tot welke CDN-provider het domein behoort, zal deze de Bootstrapper-module om hulp vragen.

Hoe het in de praktijk werkt

De clientsoftware van het product is geïmplementeerd voor Linux, maar kan ook eenvoudig worden geporteerd voor Windows. Reguliere Mozilla wordt gebruikt als browser
Firefox. De Scraper- en Resolver-modules zijn geschreven in Python en de Customer-to-CDN- en CDN-toIP-databases worden opgeslagen in .txt-bestanden. De LocalDNS-database is het reguliere /etc/hosts-bestand in Linux.

Het resultaat is dat voor een geblokkeerde URL zoals geblokkeerd.com Het script haalt het IP-adres van de edge-server op uit het bestand /etc/hosts en verzendt een HTTP GET-verzoek om toegang te krijgen tot BlockedURL.html met de Host HTTP-headervelden:

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

De Bootstrapper-module wordt geïmplementeerd met behulp van de gratis tool digwebinterface.com. Deze DNS-resolver kan niet worden geblokkeerd en beantwoordt DNS-vragen namens meerdere geografisch verspreide DNS-servers in verschillende netwerkregio's.

Met behulp van deze tool wisten de onderzoekers vanaf hun Chinese knooppunt toegang te krijgen tot Facebook, hoewel het sociale netwerk in China al lange tijd geblokkeerd is.

CacheBrowser-experiment: de Chinese firewall omzeilen zonder proxy met behulp van contentcaching

Conclusie

Het experiment toonde aan dat het benutten van de problemen die censoren ondervinden bij het blokkeren van CDN-inhoud kan worden gebruikt om een ​​systeem te creëren waarmee blokkades kunnen worden omzeild. Met deze tool kun je blokkades omzeilen, zelfs in China, dat een van de krachtigste online censuursystemen heeft.

Andere artikelen over het onderwerp gebruik ingezetene volmachten voor zaken:

Bron: www.habr.com

Voeg een reactie