CacheBrowser-experiment: kringgå den kinesiska brandväggen utan proxy med innehållscache

CacheBrowser-experiment: kringgå den kinesiska brandväggen utan proxy med innehållscache

Bild: Unsplash

Idag distribueras en betydande del av allt innehåll på Internet via CDN-nätverk. Samtidigt forskar om hur olika censorer utökar sitt inflytande över sådana nätverk. Forskare från University of Massachusetts analyseras möjliga metoder för att blockera CDN-innehåll genom att använda exemplet med de kinesiska myndigheternas praxis, och även utvecklat ett verktyg för att kringgå sådan blockering.

Vi har utarbetat ett granskningsmaterial med de viktigaste slutsatserna och resultaten av detta experiment.

Inledning

Censur är ett globalt hot mot yttrandefriheten på Internet och fri tillgång till information. Detta är till stor del möjligt på grund av det faktum att Internet lånade "end-to-end-kommunikation"-modellen från telefonnät på 70-talet av förra seklet. Detta gör att du kan blockera åtkomst till innehåll eller användarkommunikation utan betydande ansträngning eller kostnad, helt enkelt baserat på IP-adress. Det finns flera metoder här, från att blockera själva adressen med förbjudet innehåll till att blockera användarnas förmåga att ens känna igen den med hjälp av DNS-manipulation.

Men utvecklingen av Internet har också lett till att nya sätt att sprida information har uppstått. En av dem är användningen av cachelagrat innehåll för att förbättra prestandan och påskynda kommunikationen. Idag hanterar CDN-leverantörer en betydande mängd av all trafik i världen - Akamai, ledande inom detta segment, står ensam för upp till 30 % av den globala statiska webbtrafiken.

Ett CDN-nätverk är ett distribuerat system för att leverera Internetinnehåll med maximal hastighet. Ett typiskt CDN-nätverk består av servrar på olika geografiska platser som cachelagrar innehåll för att visa det till användare som är närmast den servern. Detta gör att du avsevärt kan öka hastigheten på onlinekommunikation.

Förutom att förbättra upplevelsen för slutanvändare, hjälper CDN-hosting innehållsskapare att skala sina projekt genom att minska belastningen på deras infrastruktur.

Censurerar CDN-innehåll

Trots att CDN-trafiken redan utgör en betydande del av all information som sänds över Internet, finns det fortfarande nästan ingen forskning om hur censurer i den verkliga världen närmar sig dess kontroll.

Studiens författare började med att utforska censurtekniker som kan tillämpas på CDN. Sedan studerade de de faktiska mekanismerna som de kinesiska myndigheterna använder.

Låt oss först prata om möjliga censureringsmetoder och möjligheten att använda dem för att kontrollera CDN.

IP-filtrering

Detta är den enklaste och billigaste tekniken för att censurera Internet. Med detta tillvägagångssätt identifierar och svartlistar censorn IP-adresserna för resurser som är värd för förbjudet innehåll. Då slutar de kontrollerade internetleverantörerna att leverera paket som skickas till sådana adresser.

IP-baserad blockering är en av de vanligaste metoderna för att censurera internet. De flesta kommersiella nätverksenheter är utrustade med funktioner för att implementera sådan blockering utan betydande beräkningsansträngning.

Den här metoden är dock inte särskilt lämplig för att blockera CDN-trafik på grund av vissa egenskaper hos själva tekniken:

  • Distribuerad caching – för att säkerställa den bästa tillgängligheten av innehåll och optimera prestanda, cachelagrar CDN-nätverk användarinnehåll på ett stort antal edge-servrar som finns på geografiskt distribuerade platser. För att filtrera sådant innehåll baserat på IP, skulle censorn behöva ta reda på adresserna till alla kantservrar och svartlista dem. Detta kommer att undergräva metodens huvudegenskaper, eftersom dess främsta fördel är att blockering av en server i det vanliga schemat gör att du kan "avbryta" åtkomst till förbjudet innehåll för ett stort antal personer samtidigt.
  • Delade IP-adresser – kommersiella CDN-leverantörer delar sin infrastruktur (d.v.s. edge-servrar, kartsystem, etc.) mellan många klienter. Som ett resultat läses förbjudet CDN-innehåll från samma IP-adresser som icke-förbjudet innehåll. Som ett resultat kommer varje försök till IP-filtrering att resultera i att ett stort antal sajter och innehåll som inte är av intresse för censorer blockeras.
  • Mycket dynamisk IP-tilldelning – för att optimera lastbalansering och förbättra tjänstekvaliteten sker kartläggning av kantservrar och slutanvändare mycket snabbt och dynamiskt. Till exempel uppdaterar Akamai returnerade IP-adresser varje minut. Detta kommer att göra det nästan omöjligt för adresser att associeras med förbjudet innehåll.

DNS-störningar

Förutom IP-filtrering är en annan populär censureringsmetod DNS-störningar. Detta tillvägagångssätt innefattar åtgärder från censorer som syftar till att förhindra användare från att känna igen IP-adresserna för resurser med förbjudet innehåll. Det vill säga ingripandet sker på domännamnsupplösningsnivå. Det finns flera sätt att göra detta, inklusive att kapa DNS-anslutningar, använda DNS-förgiftningstekniker och blockera DNS-förfrågningar till förbjudna webbplatser.

Detta är en mycket effektiv blockeringsmetod, men den kan kringgås om du använder icke-standardiserade DNS-upplösningsmetoder, till exempel out-of-band-kanaler. Därför kombinerar censorer vanligtvis DNS-blockering med IP-filtrering. Men, som nämnts ovan, är IP-filtrering inte effektiv för att censurera CDN-innehåll.

Filtrera efter URL/sökord med hjälp av DPI

Modern nätverksaktivitetsövervakningsutrustning kan användas för att analysera specifika URL:er och nyckelord i överförda datapaket. Denna teknik kallas DPI (deep packet inspection). Sådana system hittar omnämnanden av förbjudna ord och resurser, varefter de stör onlinekommunikationen. Som ett resultat tappas paketen helt enkelt.

Denna metod är effektiv, men mer komplex och resurskrävande eftersom den kräver defragmentering av alla datapaket som skickas inom vissa strömmar.

CDN-innehåll kan skyddas från sådan filtrering på samma sätt som "vanligt" innehåll - i båda fallen hjälper användningen av kryptering (dvs HTTPS).

Förutom att använda DPI för att hitta sökord eller webbadresser till förbjudna resurser, kan dessa verktyg användas för mer avancerad analys. Dessa metoder inkluderar statistisk analys av online-/offlinetrafik och analys av identifieringsprotokoll. Dessa metoder är extremt resurskrävande och för närvarande finns det helt enkelt inga bevis för att de har använts av censorer i tillräckligt seriös omfattning.

Självcensur av CDN-leverantörer

Om censorn är staten, har den alla möjligheter att förbjuda de CDN-leverantörer att verka i landet som inte följer lokala lagar som reglerar tillgång till innehåll. Självcensur kan inte motstås på något sätt - därför, om ett CDN-leverantörsföretag är intresserad av att verka i ett visst land, kommer det att tvingas följa lokala lagar, även om de begränsar yttrandefriheten.

Hur Kina censurerar CDN-innehåll

Den stora brandväggen i Kina anses med rätta vara det mest effektiva och avancerade systemet för att säkerställa internetcensur.

Forskningsmetodik

Forskare utförde experiment med hjälp av en Linux-nod belägen inne i Kina. De hade även tillgång till flera datorer utanför landet. Först kontrollerade forskarna att noden var föremål för censur liknande den som tillämpas på andra kinesiska användare - för att göra detta försökte de öppna olika förbjudna webbplatser från den här maskinen. Så närvaron av samma nivå av censur bekräftades.

Listan över blockerade webbplatser i Kina som använder CDN:er togs från GreatFire.org. Metoden för blockering i varje fall analyserades sedan.

Enligt offentliga uppgifter är Akamai den enda större aktören på CDN-marknaden med egen infrastruktur i Kina. Andra leverantörer som deltar i studien: CloudFlare, Amazon CloudFront, EdgeCast, Fastly och SoftLayer.

Under experimenten tog forskarna reda på adresserna till Akamai edge-servrar i landet och försökte sedan få cachat tillåtet innehåll genom dem. Det gick inte att komma åt förbjudet innehåll (HTTP 403 Förbjudet fel returnerades) - uppenbarligen självcensurerar företaget för att behålla möjligheten att verka i landet. Samtidigt förblev tillgången till dessa resurser öppen utanför landet.

Internetleverantörer utan infrastruktur i Kina självcensurerar inte lokala användare.

När det gäller andra leverantörer var den vanligaste blockeringsmetoden DNS-filtrering - förfrågningar till blockerade webbplatser löses till felaktiga IP-adresser. Samtidigt blockerar inte brandväggen själva CDN edge-servrarna, eftersom de lagrar både förbjuden och tillåten information.

Och om myndigheterna i fallet med okrypterad trafik har möjlighet att blockera enskilda sidor på webbplatser med hjälp av DPI, då kan de när de använder HTTPS bara neka åtkomst till hela domänen som helhet. Detta leder också till blockering av tillåtet innehåll.

Dessutom har Kina sina egna CDN-leverantörer, inklusive nätverk som ChinaCache, ChinaNetCenter och CDNetworks. Alla dessa företag följer landets lagar och blockerar förbjudet innehåll.

CacheBrowser: CDN-bypass-verktyg

Som analysen visade är det ganska svårt för censorer att blockera CDN-innehåll. Därför beslutade forskarna att gå vidare och utveckla ett online block bypass-verktyg som inte använder proxy-teknik.

Grundidén med verktyget är att censorer måste störa DNS för att blockera CDN, men du behöver faktiskt inte använda domännamnsupplösning för att ladda ner CDN-innehåll. Således kan användaren få det innehåll han behöver genom att direkt kontakta edge-servern, där det redan är cachat.

Diagrammet nedan visar systemdesignen.

CacheBrowser-experiment: kringgå den kinesiska brandväggen utan proxy med innehållscache

Klientmjukvara installeras på användarens dator och en vanlig webbläsare används för att komma åt innehållet.

När en URL eller en del av innehållet redan har begärts, gör webbläsaren en begäran till det lokala DNS-systemet (LocalDNS) för att erhålla värd-IP-adressen. Vanlig DNS efterfrågas endast för domäner som inte redan finns i LocalDNS-databasen. Scraper-modulen går kontinuerligt igenom de begärda webbadresserna och söker i listan efter potentiellt blockerade domännamn. Scraper anropar sedan Resolver-modulen för att lösa de nyligen upptäckta blockerade domänerna, denna modul utför uppgiften och lägger till en post till LocalDNS. Webbläsarens DNS-cache rensas sedan för att ta bort befintliga DNS-poster för den blockerade domänen.

Om Resolver-modulen inte kan ta reda på vilken CDN-leverantör domänen tillhör kommer den att be Bootstrapper-modulen om hjälp.

Hur det fungerar i praktiken

Klientmjukvaran för produkten implementerades för Linux, men den kan enkelt porteras även för Windows. Vanlig Mozilla används som webbläsare
Firefox. Modulerna Scraper och Resolver är skrivna i Python, och databaserna Customer-to-CDN och CDN-toIP lagras i .txt-filer. LocalDNS-databasen är den vanliga filen /etc/hosts i Linux.

Som ett resultat för en blockerad webbadress som blocked.com Skriptet kommer att hämta edge-serverns IP-adress från filen /etc/hosts och skicka en HTTP GET-begäran för att komma åt BlockedURL.html med Host HTTP-huvudfälten:

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

Bootstrapper-modulen implementeras med det kostnadsfria verktyget digwebinterface.com. Denna DNS-resolver kan inte blockeras och svarar på DNS-frågor på uppdrag av flera geografiskt distribuerade DNS-servrar i olika nätverksregioner.

Med hjälp av detta verktyg lyckades forskarna få tillgång till Facebook från sin kinesiska nod, även om det sociala nätverket länge har varit blockerat i Kina.

CacheBrowser-experiment: kringgå den kinesiska brandväggen utan proxy med innehållscache

Slutsats

Experimentet visade att utnyttjandet av de problem som censorer upplever när de försöker blockera CDN-innehåll kan användas för att skapa ett system för att kringgå blockeringar. Detta verktyg låter dig kringgå blockeringar även i Kina, som har ett av de mest kraftfulla onlinecensursystemen.

Andra artiklar om ämnet användning bosatta ombud för affärer:

Källa: will.com

Lägg en kommentar