Eksperimento ng CacheBrowser: pag-bypass sa Chinese firewall nang walang proxy gamit ang content caching

Eksperimento ng CacheBrowser: pag-bypass sa Chinese firewall nang walang proxy gamit ang content caching

Larawan: Unsplash

Ngayon, ang isang makabuluhang bahagi ng lahat ng nilalaman sa Internet ay ipinamamahagi gamit ang mga network ng CDN. Kasabay nito, magsaliksik sa kung paano pinalawak ng iba't ibang censor ang kanilang impluwensya sa mga naturang network. Mga siyentipiko mula sa Unibersidad ng Massachusetts sinuri posibleng paraan ng pagharang sa nilalaman ng CDN gamit ang halimbawa ng mga gawi ng mga awtoridad ng China, at nakabuo din ng tool para sa pag-bypass sa naturang pagharang.

Naghanda kami ng materyal sa pagsusuri na may mga pangunahing konklusyon at resulta ng eksperimentong ito.

Pagpapakilala

Ang censorship ay isang pandaigdigang banta sa kalayaan sa pagsasalita sa Internet at libreng pag-access sa impormasyon. Ito ay higit na posible dahil sa ang katunayan na ang Internet ay humiram ng "end-to-end na komunikasyon" na modelo mula sa mga network ng telepono noong 70s ng huling siglo. Binibigyang-daan ka nitong harangan ang pag-access sa nilalaman o mga komunikasyon ng gumagamit nang walang makabuluhang pagsisikap o gastos batay lamang sa IP address. Mayroong ilang mga paraan dito, mula sa pagharang sa mismong address na may ipinagbabawal na nilalaman hanggang sa pagharang sa kakayahan ng mga user na makilala ito gamit ang pagmamanipula ng DNS.

Gayunpaman, ang pag-unlad ng Internet ay humantong din sa paglitaw ng mga bagong paraan ng pagpapalaganap ng impormasyon. Isa sa mga ito ay ang paggamit ng naka-cache na nilalaman upang mapabuti ang pagganap at pabilisin ang mga komunikasyon. Ngayon, ang mga tagapagbigay ng CDN ay nagpoproseso ng malaking halaga ng lahat ng trapiko sa mundo - si Akamai, ang nangunguna sa segment na ito, ay nag-iisa na bumubuo ng hanggang 30% ng pandaigdigang static na trapiko sa web.

Ang CDN network ay isang distributed system para sa paghahatid ng nilalaman ng Internet sa pinakamataas na bilis. Ang isang tipikal na network ng CDN ay binubuo ng mga server sa iba't ibang heyograpikong lokasyon na nag-cache ng nilalaman upang maihatid ito sa mga user na pinakamalapit sa server na iyon. Ito ay nagpapahintulot sa iyo na makabuluhang taasan ang bilis ng online na komunikasyon.

Bilang karagdagan sa pagpapabuti ng karanasan para sa mga end user, ang CDN hosting ay tumutulong sa mga tagalikha ng nilalaman na sukatin ang kanilang mga proyekto sa pamamagitan ng pagbabawas ng load sa kanilang imprastraktura.

Sine-censor ang nilalaman ng CDN

Sa kabila ng katotohanan na ang trapiko ng CDN ay bumubuo na ng malaking bahagi ng lahat ng impormasyong ipinadala sa Internet, halos wala pa ring pagsasaliksik sa kung paano lumalapit ang mga censor sa totoong mundo sa kontrol nito.

Nagsimula ang mga may-akda ng pag-aaral sa pamamagitan ng paggalugad ng mga diskarte sa pag-censor na maaaring ilapat sa mga CDN. Pagkatapos ay pinag-aralan nila ang aktwal na mga mekanismo na ginagamit ng mga awtoridad ng China.

Una, pag-usapan natin ang mga posibleng paraan ng pag-censor at ang posibilidad na gamitin ang mga ito para kontrolin ang CDN.

Pag-filter ng IP

Ito ang pinakasimple at pinakamurang pamamaraan para sa pag-censor sa Internet. Gamit ang diskarteng ito, kinikilala at ini-blacklist ng censor ang mga IP address ng mga mapagkukunang nagho-host ng ipinagbabawal na nilalaman. Pagkatapos, ang mga kinokontrol na tagapagbigay ng Internet ay huminto sa paghahatid ng mga packet na ipinadala sa mga naturang address.

Ang pag-block na nakabatay sa IP ay isa sa mga pinakakaraniwang paraan ng pag-censor sa Internet. Karamihan sa mga komersyal na network device ay nilagyan ng mga function upang ipatupad ang naturang pagharang nang walang makabuluhang pagsusumikap sa computational.

Gayunpaman, ang pamamaraang ito ay hindi masyadong angkop para sa pagharang sa trapiko ng CDN dahil sa ilang mga katangian ng teknolohiya mismo:

  • Ibinahagi ang Caching – upang matiyak ang pinakamahusay na kakayahang magamit ng nilalaman at i-optimize ang pagganap, ang mga network ng CDN ay nag-cache ng nilalaman ng gumagamit sa isang malaking bilang ng mga server sa gilid na matatagpuan sa mga lokasyong nahahati sa heograpiya. Upang i-filter ang naturang nilalaman batay sa IP, kakailanganin ng censor na alamin ang mga address ng lahat ng edge server at i-blacklist ang mga ito. Papanghinain nito ang mga pangunahing katangian ng pamamaraan, dahil ang pangunahing bentahe nito ay sa karaniwang pamamaraan, ang pagharang sa isang server ay nagbibigay-daan sa iyo na "putulin" ang pag-access sa ipinagbabawal na nilalaman para sa isang malaking bilang ng mga tao nang sabay-sabay.
  • Mga nakabahaging IP – Ibinabahagi ng mga komersyal na tagapagbigay ng CDN ang kanilang imprastraktura (ibig sabihin, mga edge server, sistema ng pagmamapa, atbp.) sa pagitan ng maraming kliyente. Bilang resulta, nilo-load ang ipinagbabawal na nilalamang CDN mula sa parehong mga IP address gaya ng nilalamang hindi pinagbawalan. Bilang resulta, ang anumang pagtatangka sa pag-filter ng IP ay magreresulta sa isang malaking bilang ng mga site at nilalaman na hindi interesado sa mga censor na naharang.
  • Lubos na dynamic na pagtatalaga ng IP – para ma-optimize ang load balancing at pagbutihin ang kalidad ng serbisyo, ang pagmamapa ng mga edge server at end user ay ginagawa nang napakabilis at dynamic. Halimbawa, ang mga update ng Akamai ay nagbabalik ng mga IP address bawat minuto. Gagawin nitong halos imposible para sa mga address na maiugnay sa ipinagbabawal na nilalaman.

Panghihimasok sa DNS

Bukod sa IP filtering, isa pang tanyag na paraan ng pag-censor ay ang DNS interference. Ang diskarte na ito ay nagsasangkot ng mga aksyon ng mga censor na naglalayong pigilan ang mga user na makilala ang mga IP address ng mga mapagkukunang may ipinagbabawal na nilalaman. Iyon ay, ang interbensyon ay nangyayari sa antas ng resolusyon ng domain name. Mayroong ilang mga paraan upang gawin ito, kabilang ang pag-hijack ng mga koneksyon sa DNS, paggamit ng mga diskarte sa pagkalason ng DNS, at pagharang sa mga kahilingan ng DNS sa mga ipinagbabawal na site.

Ito ay isang napaka-epektibong paraan ng pag-block, ngunit maaari itong i-bypass kung gumagamit ka ng hindi karaniwang mga pamamaraan ng paglutas ng DNS, halimbawa, mga out-of-band na channel. Samakatuwid, karaniwang pinagsasama ng mga censor ang pag-block ng DNS sa pag-filter ng IP. Ngunit, tulad ng nakasaad sa itaas, ang pag-filter ng IP ay hindi epektibo sa pag-censor ng nilalaman ng CDN.

I-filter ayon sa URL/Mga Keyword gamit ang DPI

Magagamit ang modernong kagamitan sa pagsubaybay sa aktibidad ng network upang pag-aralan ang mga partikular na URL at keyword sa mga ipinadalang data packet. Ang teknolohiyang ito ay tinatawag na DPI (deep packet inspection). Ang mga ganitong sistema ay nakakahanap ng mga pagbanggit ng mga ipinagbabawal na salita at mapagkukunan, pagkatapos nito ay nakakasagabal ang mga ito sa online na komunikasyon. Bilang isang resulta, ang mga packet ay ibinabagsak lamang.

Ang pamamaraang ito ay epektibo, ngunit mas kumplikado at masinsinang mapagkukunan dahil nangangailangan ito ng defragmentation ng lahat ng data packet na ipinadala sa loob ng ilang partikular na stream.

Ang nilalaman ng CDN ay maaaring protektahan mula sa naturang pag-filter sa parehong paraan tulad ng "regular" na nilalaman - sa parehong mga kaso ang paggamit ng pag-encrypt (i.e. HTTPS) ay nakakatulong.

Bilang karagdagan sa paggamit ng DPI upang maghanap ng mga keyword o URL ng mga pinagbabawal na mapagkukunan, magagamit ang mga tool na ito para sa mas advanced na pagsusuri. Kasama sa mga pamamaraang ito ang istatistikal na pagsusuri ng online/offline na trapiko at pagsusuri ng mga protocol ng pagkakakilanlan. Ang mga pamamaraang ito ay lubhang masinsinang mapagkukunan at sa ngayon ay walang katibayan ng kanilang paggamit ng mga censor sa isang sapat na seryosong lawak.

Self-censorship ng mga provider ng CDN

Kung ang censor ay ang estado, mayroon itong lahat ng pagkakataon na pagbawalan ang mga tagapagbigay ng CDN na gumana sa bansa na hindi sumusunod sa mga lokal na batas na namamahala sa pag-access sa nilalaman. Ang self-censorship ay hindi maaaring labanan sa anumang paraan - samakatuwid, kung ang isang kumpanya ng tagapagbigay ng CDN ay interesado sa pagpapatakbo sa isang partikular na bansa, mapipilitan itong sumunod sa mga lokal na batas, kahit na pinaghihigpitan nila ang kalayaan sa pagsasalita.

Paano sine-censor ng China ang nilalaman ng CDN

Ang Great Firewall ng China ay nararapat na ituring na pinakaepektibo at advanced na sistema para sa pagtiyak ng censorship sa Internet.

Pamamaraan sa pagsasaliksik

Ang mga siyentipiko ay nagsagawa ng mga eksperimento gamit ang isang Linux node na matatagpuan sa loob ng China. Nagkaroon din sila ng access sa ilang computer sa labas ng bansa. Una, sinuri ng mga mananaliksik na ang node ay napapailalim sa censorship katulad ng inilapat sa iba pang mga gumagamit ng Tsino - upang magawa ito, sinubukan nilang buksan ang iba't ibang mga ipinagbabawal na site mula sa makinang ito. Kaya nakumpirma ang pagkakaroon ng parehong antas ng censorship.

Ang listahan ng mga website na naka-block sa China na gumagamit ng mga CDN ay kinuha mula sa GreatFire.org. Ang paraan ng pagharang sa bawat kaso ay sinuri.

Ayon sa pampublikong data, ang tanging pangunahing manlalaro sa merkado ng CDN na may sariling imprastraktura sa China ay ang Akamai. Iba pang mga provider na lumalahok sa pag-aaral: CloudFlare, Amazon CloudFront, EdgeCast, Fastly at SoftLayer.

Sa panahon ng mga eksperimento, nalaman ng mga mananaliksik ang mga address ng mga server ng Akamai edge sa loob ng bansa, at pagkatapos ay sinubukang kumuha ng naka-cache na pinapayagang nilalaman sa pamamagitan ng mga ito. Hindi posible na ma-access ang ipinagbabawal na nilalaman (Ibinalik ang HTTP 403 Forbidden error) - tila nagsa-self censor ang kumpanya upang mapanatili ang kakayahang gumana sa bansa. Kasabay nito, ang pag-access sa mga mapagkukunang ito ay nanatiling bukas sa labas ng bansa.

Ang mga ISP na walang imprastraktura sa China ay hindi nagse-censor sa sarili ng mga lokal na user.

Sa kaso ng iba pang mga provider, ang pinakakaraniwang ginagamit na paraan ng pagharang ay ang pag-filter ng DNS - ang mga kahilingan sa mga naka-block na site ay niresolba sa mga maling IP address. Kasabay nito, hindi hinaharangan ng firewall ang mga server mismo ng CDN edge, dahil nag-iimbak sila ng parehong ipinagbabawal at pinahihintulutang impormasyon.

At kung sa kaso ng hindi naka-encrypt na trapiko ang mga awtoridad ay may kakayahang harangan ang mga indibidwal na pahina ng mga site gamit ang DPI, kung gayon kapag gumagamit ng HTTPS ay maaari lamang nilang tanggihan ang pag-access sa buong domain sa kabuuan. Ito rin ay humahantong sa pagharang ng pinahihintulutang nilalaman.

Bilang karagdagan, ang China ay may sariling CDN provider, kabilang ang mga network tulad ng ChinaCache, ChinaNetCenter at CDNetworks. Ang lahat ng mga kumpanyang ito ay ganap na sumusunod sa mga batas ng bansa at hinaharangan ang ipinagbabawal na nilalaman.

CacheBrowser: CDN bypass tool

Tulad ng ipinakita ng pagsusuri, medyo mahirap para sa mga censor na harangan ang nilalaman ng CDN. Samakatuwid, nagpasya ang mga mananaliksik na pumunta pa at bumuo ng isang online block bypass tool na hindi gumagamit ng teknolohiya ng proxy.

Ang pangunahing ideya ng tool ay ang mga censor ay kailangang makagambala sa DNS upang harangan ang mga CDN, ngunit hindi mo talaga kailangang gumamit ng resolution ng domain name upang mag-download ng nilalaman ng CDN. Kaya, makukuha ng user ang nilalaman na kailangan niya sa pamamagitan ng direktang pakikipag-ugnayan sa edge server, kung saan naka-cache na ito.

Ang diagram sa ibaba ay nagpapakita ng disenyo ng system.

Eksperimento ng CacheBrowser: pag-bypass sa Chinese firewall nang walang proxy gamit ang content caching

Ang software ng kliyente ay naka-install sa computer ng gumagamit, at isang regular na browser ang ginagamit upang ma-access ang nilalaman.

Kapag ang isang URL o piraso ng nilalaman ay hiniling na, ang browser ay humihiling sa lokal na DNS system (LocalDNS) upang makuha ang hosting IP address. Ang regular na DNS ay itinatanong lamang para sa mga domain na wala pa sa database ng LocalDNS. Ang module ng Scraper ay patuloy na dumadaan sa mga hiniling na URL at naghahanap sa listahan para sa mga potensyal na naka-block na mga domain name. Pagkatapos ay tinawagan ng Scraper ang Resolver module upang lutasin ang mga bagong natuklasang naka-block na domain, ginagawa ng module na ito ang gawain at nagdaragdag ng entry sa LocalDNS. Ang DNS cache ng browser ay pagkatapos ay iki-clear upang alisin ang mga umiiral na tala ng DNS para sa naka-block na domain.

Kung hindi malaman ng Resolver module kung saang CDN provider kabilang ang domain, hihingi ito ng tulong sa Bootstrapper module.

Paano ito gumagana sa pagsasanay

Ang client software ng produkto ay ipinatupad para sa Linux, ngunit madali din itong mai-port para sa Windows. Ang regular na Mozilla ay ginagamit bilang isang browser
Firefox. Ang mga module ng Scraper at Resolver ay nakasulat sa Python, at ang mga database ng Customer-to-CDN at CDN-toIP ay naka-store sa mga .txt na file. Ang database ng LocalDNS ay ang regular na /etc/hosts file sa Linux.

Bilang resulta, para sa isang naka-block na URL tulad ng hinarangan.com Makukuha ng script ang edge server IP address mula sa /etc/hosts file at magpapadala ng HTTP GET request para ma-access ang BlockURL.html gamit ang Host HTTP header na mga field:

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

Ang Bootstrapper module ay ipinatupad gamit ang libreng tool na digwebinterface.com. Ang DNS resolver na ito ay hindi maaaring i-block at sumasagot sa mga query sa DNS sa ngalan ng maramihang heograpikal na ipinamamahagi na mga DNS server sa iba't ibang mga rehiyon ng network.

Gamit ang tool na ito, ang mga mananaliksik ay nakakuha ng access sa Facebook mula sa kanilang Chinese node, kahit na ang social network ay matagal nang naka-block sa China.

Eksperimento ng CacheBrowser: pag-bypass sa Chinese firewall nang walang proxy gamit ang content caching

Konklusyon

Ipinakita ng eksperimento na ang pagsasamantala sa mga problema na nararanasan ng mga censor kapag sinusubukang i-block ang nilalaman ng CDN ay maaaring magamit upang lumikha ng isang sistema para sa pag-bypass ng mga bloke. Binibigyang-daan ka ng tool na ito na i-bypass ang mga block kahit sa China, na mayroong isa sa pinakamakapangyarihang online censorship system.

Iba pang mga artikulo sa paksa ng paggamit resident proxy para sa negosyo:

Pinagmulan: www.habr.com

Magdagdag ng komento