Эксперымент CacheBrowser: абыход кітайскага фаервала без проксі з дапамогай кэшавання кантэнту

Эксперымент CacheBrowser: абыход кітайскага фаервала без проксі з дапамогай кэшавання кантэнту

малюнак: Unsplash

Сёння значная частка ўсяго кантэнту ў інтэрнэце распаўсюджваецца з выкарыстаннем CDN-сетак. Пры гэтым даследаванняў таго, як розныя цэнзары распаўсюджваюць свой уплыў на такія сеткі. Навукоўцы з універсітэта Масачусэтса прааналізавалі магчымыя метады блакіроўкі CDN-кантэнту на прыкладзе практык уладаў Кітая, а таксама распрацавалі інструмент абыходу такіх блакіровак.

Мы падрыхтавалі аглядны матэрыял з галоўнымі вывадамі і вынікамі гэтага эксперымента.

Увядзенне

Цэнзура - глабальная пагроза свабодзе слова ў інтэрнэце і свабоднаму доступу да інфармацыі. Шмат у чым гэта магчыма з-за таго, што інтэрнэт запазычыў мадэль "end-to-end камунікацыі" з тэлефонных сетак 70-х гадоў мінулага стагоддзі. Гэта дазваляе заблакаваць доступ да кантэнту або камунікацыю карыстальнікаў без сур'ёзных намаганняў або затрат проста на аснове IP-адрасу. Тут некалькі спосабаў ад блакіроўкі самога адрасы з забароненым кантэнтам да блакавання магчымасці карыстальнікам нават пазнаць яго з дапамогай маніпуляцыі з DNS.

Аднак развіццё інтэрнета прывяло і да з'яўлення новых спосабаў распаўсюджвання інфармацыі. Адзін з іх - выкарыстанне кэшаванага кантэнту для паляпшэння прадукцыйнасці і паскарэння камунікацый. Сёння CDN-правайдэры апрацоўваюць значны аб'ём усяго трафіку ў свеце толькі на дзель які лідыруе ў гэтым сегменце Akamai прыходзіцца да 30% глабальнага статычнага вэб трафіку.

CDN-сетка - гэта размеркаваная сістэма для дастаўкі інтэрнэт-кантэнту з максімальнай хуткасцю. Тыповая CDN-сетка складаецца з сервераў у розных геаграфічных кропках, якія кэшуюць кантэнт, каб "аддаваць" яго тым карыстальнікам, якія знаходзяцца бліжэй за ўсё да гэтага сервера. Гэта дазваляе значна павысіць хуткасць анлайн-камунікацыі.

Апроч паляпшэння якасці абслугоўвання для канчатковых карыстачоў, CDN-хостынг дапамагае стваральнікам кантэнту маштабаваць свае праекты, зніжаючы нагрузку на інфраструктуру.

Цэнзураванне CDN-кантэнту

Нягледзячы на ​​тое, што CDN-трафік складае ўжо значную долю ўсёй перадаваемай праз інтэрнэт інфармацыі, да гэтага часу амаль няма даследаванняў таго, як цэнзары ў рэальным свеце падыходзяць да яго кантролю.

Аўтары даследавання пачалі з даследавання тэхнік цэнзуравання, якія могуць прымяняцца да CDN. Затым яны вывучылі рэальныя механізмы, якія прымяняюць улады Кітая.

Спачатку пагаворым аб магчымых метадах цэнзуравання і магчымасці іх ужывання для кантролю CDN.

Фільтраванне па IP

Гэта самая простая і недарагая тэхніка цэнзуравання інтэрнэту. Ужываючы гэты падыход цэнзар вызначае і ўносіць у чорны спіс IP-адрасы рэсурсаў, якія размяшчаюць забаронены кантэнт. Затым падкантрольныя інтэрнэт-правайдэры перастаюць дастаўляць пакеты, якія адпраўляюцца на такія адрасы.

Блакаванне на аснове IP - адзін з найбольш распаўсюджаных метадаў цэнзуравання інтэрнэту. Большасць камерцыйных сеткавых прылад абсталёўваюцца функцыямі для ажыццяўлення такіх блакіровак без сур'ёзных вылічальных выдаткаў.

Аднак, гэты метад не вельмі падыходзіць для блакавання CDN-трафіку з-за некаторых уласцівасцяў самай тэхналогіі:

  • Размеркаванае кэшаванне – для забеспячэння найлепшай даступнасці кантэнтатаў і аптымізацыі прадукцыйнасці, CDN-сеткі кэшуюць карыстацкі кантэнт на вялікай колькасці edge-сервераў, размешчаных у геаграфічна размеркаваных лакацыях. Каб фільтраваць такі кантэнт на аснове IP, цэнзару трэба будзе пазнаць адрасы ўсіх edge-сервераў і занесці іх у чорны спіс. Гэта стукне па галоўных уласцівасцях метаду, бо галоўны яго плюс у тым, што ў звычайнай схеме блакіроўка аднаго сервера дазваляе "абрубіць" доступ да забароненага кантэнту адразу для вялікай колькасці людзей.
  • Падзяляныя IP - камерцыйныя CDN-правайдэры падзяляюць сваю інфраструктуру (гэта значыць edge-серверы, сістэму мапінга і да т.п.) паміж мноствам кліентаў. У выніку забаронены CDN-кантэнт загружаецца з тых жа IP-адрасоў, што і не забаронены кантэнт. У выніку любая спроба IP-фільтрацыі прывядзе да таго, што пад блакіроўкай апынецца і велізарная колькасць сайтаў і кантэнту, якія не цікавяць цэнзараў.
  • Высокадынамічнае прысвойванне IP – для аптымізацыі балансавання нагрузкі і падвышэнні якасці сэрвісу, мапінг edge-сервераў і канчатковых карыстачоў выконваецца вельмі хутка і дынамічна. Да прыкладу, Akamai абнаўляе якія вяртаюцца IP-адрасы кожную хвіліну. Гэта зробіць амаль немагчымым працэс сувязі адрасоў з забароненым кантэнтам.

DNS-інтэрферэнцыя

Апроч фільтрацыі IP, яшчэ адным папулярным спосабам цэнзуравання з'яўляецца інтэрферэнцыя DNS. Гэты падыход мае на ўвазе дзеянні цэнзараў, накіраваныя на тое, каб карыстачы наогул не пазналі IP-адрасы рэсурсаў з забароненым кантэнтам. Гэта значыць, умяшанне ідзе на ўзроўні дазволу даменных імёнаў. Існуе некалькі спосабаў зрабіць гэта, уключаючы ўзам DNS-злучэнняў, выкарыстанне тэхнікі DNS poisoning, блакіроўка DNS-запытаў да забароненых сайтаў.

Гэта вельмі эфектыўны спосаб блакавання, аднак яго можна абыйсці, калі выкарыстоўваць нестандартныя спосабы дазволу DNS, напрыклад, out-of-band каналы. Таму звычайна цэнзары камбінуюць блакаванні DNS з выкарыстаннем IP-фільтрацыі. Але, як сказана вышэй, IP-фільтраванне не з'яўляецца эфектыўным для цэнзуравання CDN-кантэнту.

Фільтраванне па URL/Ключавым словам з дапамогай DPI

Сучаснае абсталяванне для маніторынгу сеткавай актыўнасці можа быць выкарыстана для аналізу канкрэтных URL і ключавых слоў у перадаюцца пакетах дадзеных. Гэтая тэхналогія атрымала назву DPI (deep packet inspection). Такія сістэмы знаходзяць згадванні забароненых слоў і рэсурсаў, пасля чаго адбываецца ўмяшанне ў анлайн-камунікацыю. У выніку пакеты проста скідаюцца.

Гэты метад эфектыўны, але больш складаны і рэсурсаёмісты, паколькі патрабуе дэфрагментацыі ўсіх пакетаў дадзеных, якія адпраўляюцца ў рамках пэўных патокаў.

CDN-кантэнт можна абараніць ад падобнага фільтравання таксама, як і "звычайны" кантэнт - у абодвух выпадках дапамагае выкарыстанне шыфравання (гэта значыць HTTPS).

Апроч выкарыстання DPI для пошуку ключавых слоў ці URL забароненых рэсурсаў, гэтыя прылады могуць быць скарыстаны для больш прасунутага аналізу. Да такіх спосабаў адносяцца статыстычны аналіз анлайн/афлайн-трафіку і аналіз пратаколаў ідэнтыфікацыі. Гэтыя спосабы вельмі рэсурсаёмістыя і ў сапраўдны момант доказаў іх выкарыстання цэнзарамі ў дастаткова сур'ёзным аб'ёме проста не існуе.

Самацэнзура CDN-правайдэраў

Калі цэнзар - гэта дзяржава, то ў яго ёсць усе магчымасці забараніць працу ў краіне тым CDN-правайдэрам, якія не падпарадкоўваюцца мясцовым законам, якія рэгулююць доступ да кантэнту. Супрацьстаяць самацэнзуры нельга ніяк - таму калі кампанія-правайдэр CDN зацікаўлена ў працы ў нейкай краіне, то яна будзе вымушана выконваць мясцовыя законы, нават калі яны абмяжоўваюць свабоду слова.

Як Кітай цэнзуруе CDN-кантэнт

Вялікі кітайскі фаервал небеспадстаўна лічыцца самай эфектыўнай і прасунутай сістэмай для забеспячэння інтэрнэт-цэнзуры.

Метадалогія даследавання

Навукоўцы выраблялі эксперыменты з дапамогай Linux-ноды размешчанай усярэдзіне Кітая. Таксама ў іх быў доступ да некалькіх кампутараў за мяжой краіны. Спачатку даследнікі праверылі, што з нода падвяргаецца цэнзуры, аналагічнай той, якая прымяняецца да іншых кітайскіх карыстальнікаў – для гэтага яны спрабавалі адкрываць з гэтай машыны розныя забароненыя сайты. Так наяўнасць таго ж узроўню цэнзуры была пацверджана.

Спіс заблакаваных у Кітаі сайтаў, якія выкарыстоўваюць CDN, быў узяты з сайта GreatFire.org. Затым ажыццяўляўся аналіз спосабу блакіроўкі ў кожным выпадку.

Паводле адчыненых дадзеных, адзіным буйным гульцом рынка CDN з уласнай інфраструктурай у Кітаі з'яўляецца Akamai. Іншыя правайдэры, якія ўдзельнічалі ў даследаванні: CloudFlare, Amazon CloudFront, EdgeCast, Fastly і SoftLayer.

Падчас эксперыментаў даследнікі высветлілі адрасы edge-сервераў Akamai усярэдзіне краін, а затым паспрабавалі атрымаць праз іх кэшаваны дазволены кантэнт. Атрымаць доступ да забароненага кантэнту не ўдалося (вярталася памылка HTTP 403 Forbidden) - відавочна, кампанія праводзіць самацэнзуру, каб захаваць магчымасць працы ў краіне. Пры гэтым па-за краінай доступ да гэтых рэсурсаў заставаўся адкрытым.

Правайдэры без інфраструктуры ў Кітаі не выкарыстоўваюць самацэнзуру для мясцовых карыстальнікаў.

У выпадку астатніх правайдэраў самым часта выкарыстоўваным спосабам блакавання стала фільтраванне DNS - запыты да заблакаваных сайтаў дазваляюцца ў няслушныя IP-адрасы. Пры гэтым, фаервол не блакуе самі edge-серверы CDN, паколькі яны захоўваюць як забароненую, так і дазволеную інфармацыю.

І калі ў выпадку незашыфраванага трафіку ва ўладаў ёсць магчымасць блакаваць асобныя старонкі сайтаў з дапамогай DPI, то пры выкарыстанні HTTPS яны могуць толькі забараніць доступ да ўсяго дамена ў цэлым. Гэта прыводзіць у тым ліку і да блакіроўкі дазволенага кантэнту.

Акрамя таго, у Кітаі ёсць і ўласныя правайдэры CDN, сярод іх такія сеткі, як ChinaCache, ChinaNetCenter і CDNetworks. Усе гэтыя кампаніі поўнасцю выконваюць заканадаўства краіны і блакуюць забаронены кантэнт.

CacheBrowser: інструмент абыходу блакіровак з дапамогай CDN

Як паказаў аналіз, цэнзарам дастаткова цяжка блакаваць CDN-кантэнт. Таму даследчыкі вырашылі пайсці далей і распрацаваць інструмент абыходу анлайн-блакіровак, які не будзе выкарыстоўваць тэхналогію проксі.

Асноўная ідэя прылады складаецца ў тым, што цэнзарам для блакавання CDN прыходзіцца ўмешвацца ў працу DNS, аднак для загрузкі CDN-кантэнту насамрэч не абавязковасць выкарыстоўваць дазвол даменных імёнаў. Такім чынам, карыстач можа атрымаць патрэбны яму кантэнт, напроста звярнуўшыся да edge-серверу, на якім ён ужо закэшаваны.

На дыяграме ніжэй прадстаўлена прылада сістэмы.

Эксперымент CacheBrowser: абыход кітайскага фаервала без проксі з дапамогай кэшавання кантэнту

На кампутар карыстача ўсталёўваецца кліенцкі софт, для доступу да кантэнту выкарыстоўваецца звычайны браўзэр.

Пры запыце URL або часткі ўжо запытанага кантэнту, браўзэр адпраўляе запыт да лакальнай сістэмы DNS (LocalDNS), каб атрымаць IP-адрас хостынгу. Звычайны DNS запытваецца толькі для даменаў, якія яшчэ не ўтрымоўваюцца ў базе LocalDNS. Модуль Scraper увесь час праходзіць па запытаных URL і шукае ў спісе патэнцыйна заблакаваныя даменныя імёны. Затым Scraper звяртаецца да модуля Resolver, каб дазволіць ізноў выяўленыя заблакаваныя дамены, гэты модуль выконвае задачу і дадае запіс у LocalDNS. Затым DNS-кэш браўзэра чысціцца, каб з яго выдаліліся існыя DNS-запісы для заблакаванага дамена.

Калі модуль Resolver не можа зразумець, да якога CDN-правайдэру ставіцца дамен, то ён папросіць дапамогі ў модуля Bootstrapper.

Як гэта працуе на практыцы

Кліенцкі софт прадукта быў рэалізаваны для Linux, але яго можна лёгка партаваць у тым ліку і для Windows. У якасці браўзэра выкарыстоўваецца звычайны Mozilla.
Firefox. Модулі Scraper і Resolver напісаны на Python, а базы дадзеных Customer-to-CDN і CDN-toIP захоўваюцца ў .txt-файлах. У якасці базы дадзеных LocalDNS выступае звычайны файл /etc/hosts у Linux.

У выніку для заблакаванага URL выгляду blocked.com скрыпт будзе атрымліваць IP-адрас edge-сервера з файла /etc/hosts і адпраўляць запыт HTTP GET для доступу да BlockedURL.html з палямі HTTP-загалоўка Host:

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

Модуль Bootstrapper рэалізаваны з дапамогай бясплатнай прылады digwebinterface.com. Гэты DNS-рэзалвер нельга заблакаваць і ён адказвае на DNS-запыты ад асобы мноства геаграфічна размеркаваных DNS-сервераў у розных сеткавых рэгіёнах.

З дапамогай гэтай прылады даследнікам атрымалася са сваёй кітайскай ноды атрымаць доступ да Facebook - хоць соцсетка даўно заблакаваная ў Кітаі.

Эксперымент CacheBrowser: абыход кітайскага фаервала без проксі з дапамогай кэшавання кантэнту

Заключэнне

Эксперымент паказаў, што выкарыстанне праблем, якія цэнзары адчуваюць пры спробе блакаваць CDN-кантэнт, можна выкарыстоўваць для стварэння сістэмы абыходу блакіровак. Такая прылада дазваляе абыходзіць блакаванні нават у Кітаі, дзе дзейнічае адна з самых магутных сістэм анлайн-цэнзуры.

Іншыя артыкулы па тэме выкарыстання рэзідэнтных проксі для бізнесу:

Крыніца: habr.com

Дадаць каментар