Хотите дальше читать devby? 📝
Support us

Рунет обреченный. Часть 2

Оставить комментарий
Рунет обреченный. Часть 2

Это продолжение первой части статьи, где мы обсуждали технические возможности государства, на которые некоторая часть ИТ-публики смотрит явно сквозь розовые очки. Речь шла о том, что методы обхода грядущей цензуры и фильтрации Рунета ограничены. В результате мы выяснили, что «приделывание колес» к своему серверу не спасет поросенка Петра от нависающего над ним дамоклова меча интернет-цензуры.

Сегодня мы продолжим эту актуальную тему и рассмотрим все три режима работы оверлейной сети Tor, которая нынче у многих на слуху и на которую многие возлагают неоправданно большие надежды. Также под катом речь пойдет о Great Firewall of China и его составляющих: Deep Packet Inspection, Connection probe и Support vector machines.

Почему Tor не спасет отца русской демократии?

Давайте начнем с наиболее расхожего мифа — о якобы непобедимости TOR и I2P для любых форм ограничения и цензуры сетей.

О Tor’е централизованном замолвите слово

Итак, Tor не является полностью децентрализованным. И это создает вполне реальные проблемы, поскольку если запретить или ограничить доступ к корневым серверам, хранящим список доступных узлов (реестр входных точек, Tor enrty nodes), то система рушится (это т. н. «bootstrapping problem»). Например, заинтересованные могут глянуть текущий список IP всех входных нод в удобоваримом виде здесь или здесь — это входные ворота в мир Tor’a, которые можно забанить.

В общих чертах логика работы системы в штатном режиме такова:


Хочу подчеркнуть, что подобные потенциальные проблемы блокировки — это вовсе не результат «кривой» реализации I2P или Тора — такие проблемы неизбежны by-design. Tor — это оверлейная сеть, это своего рода «надинтернет». Она не только в этот самый «регулируемый интернет» лезет за стартовыми адресами для своей инициализации, она через него дышит и живет, прокачивая свои данные и осуществляя адресацию. При таком раскладе довольно тяжело (невозможно?) абстрагироваться от нативных свойств IP-адресации, на базе которой и создали некую вывернутую наружу по своим свойствам абстрактную антисистему.

Правда, в отличие от тормозного задыхлика I2P (о котором мы поговорим ниже), в Tor предусмотрен второй эшелон обороны для случаев своего подавления, это так называемый «сетевой мост» («ретрансляторы типа мост», Tor bridge). И если с обычным режимом Tor все ясно — уже во многих странах мира Tor заблокирован, — то его «усиленные режимы работы» стоят отдельного рассмотрения, поскольку именно это решение часто называется некой вершиной среди инструментов пробивания государственного цензурирования и контроля.

Тор в квадрате: сетевые мосты

Итак, в некоторых технических кругах считается, что полностью заблокировать Tor с помощью блэклиста нельзя, потому что он имеет специальный адаптивный механизм для обхода подобных блокировок через приватные bridge-узлы. Но отличие в работе лишь в том, что если обычные Tor relays доступны через публичные списки, то Tor bridge — это точно такой же входной Тор-узел, но выдаваемый приватно, который следует самостоятельно не привлекая к себе внимание узнать и забить в свой Тор-браузер.

Таких узлов достаточно много, но выдают их в лучших конспирологических традициях — по личному запросу с почтовых ящиков в домене @gmail и @yahoo, при этом в теле письма необходимо указать обязательную сигнальную строку-пароль: 'get bridges' (с недавних пор также есть веб-форма, защищённая от любой тоталитарщины капчей).

Этот вариант хоть и делает жизнь пользователя неудобной, потому как требует время от времени искать и менять адреса бриджей (они также выявляются и банятся), но, тем не менее, вся эта мелкая возня усложняет жизнь властям — теперь нет единой центральной точки-списка (Tor directory), через которую можно было бы забанить всю Tor-сеть одним махом.

Это нововведение привело к новому витку противостояния. Забегая вперед, констатирую, что эта проблема со стороны властей была успешно решена посредством следующих трех ингредиентов:

  • deep packet inspection для SSL;
  • избирательная блокировка определённых сочетаний IP-адресов/TCP-портов;
  • фильтрация по определенным ключевым словам и сигнатурам, характерным для Тора.

Этого достаточно, чтобы надежно и полностью заблокировать работу Tor’a в том числе и в режиме «сетевых мостов», что успешно  продемонстрировал на своем примере Иран. Всего лишь два ИТ-специалиста Ирана полностью нейтрализовали все старания мирового сообщества, при этом сделали они это по-честному — обычный SSL/HTTPS продолжал работать более-менее исправно.

Потом этот же трюк повторили Китай и Эфиопия, полностью зарубив весь свой Тор-трафик, включая приватные мосты.

Вот так примерно это выглядело для случая Эфиопии:

Периодически это случается и в Беларуси, разве что в более топорном исполнении — здесь блокируется весь https-трафик во внешний мир (а на покупке DPI драгоценную валюту можно и сэкономить).

Tor obfsproxy: высшая магия скрытности

В случаях с Эфиопией и Китаем Tor Project не сдался, он ответил довольно навороченным решением — обфусицированной версией моста (obfuscated bridges, obfsproxy), которая подмешивает левые данные/пакеты, и создает что-то вроде «полиморфических» заголовков/пакетов, чтобы напрочь стереть идентичность или любую ассоциацию каждого отдельного пакета с Тор. Еще раз — это не какое-то принципиально новое решение, это просто возможность самостоятельно находить и прописывать у себя non-public Tor’s relays с поддержкой этой новой фичи-враппера, реализованной в виде подключаемого модуля.

Вот как выглядит логика работы Тора в таком «сверхсекретном» режиме:

Да, это устранило проблему автоматического обнаружения и блокировки точек входа на транзитном шлюзе во внешний мир. Но это не решило вторую проблему: как только адреса таких обфусицированных серверов становятся известны в паблике — их IP-адреса тупо банятся в точке интерконнекта. И снова придется искать девственно новый obfsproxy, чтобы получить выход в мир иной…

Мою претензию к все возрастающей сложности мер противодействия, типа obfsproxy, можно пояснить на примере: если государственную границу ежегодно нелегально пересекают тысячи человек (и некоторые из которых, судя по всему, делают это вполне успешно), то для рядового человека «это удовольствие» практически недоступно — уж слишком много специфических умений и знаний оно требует. Obfsproxy — это реализация принципа security thru obscurity, его сила не в «пуленепробиваемой для цензуры технологии», но исключительно в секретности (или приватности) IP-адреса входящей Tor-ноды.

Постепенно такие узлы подпадают под бан, в таких случаях приходится снова искать новую рабочую ноду… эта технология не блещет совершенством технического решения, скорее это напоминает попытку взять измором одну из сторон-участников процесса противостояния…

Obfsproxy — современный неуловимый Джо

Ради справедливости стоит все-таки признать, что подобные блокировки на уровне государств заточены исключительно на стандартные и массовые решения. Как минимум, пока. Что отчасти объясняет (по принципу «неуловимого Джо») теперешнюю «рабочесть» технологии Obfsproxy — крайняя малочисленность ее пользователей.

К примеру, я знаю российского журналиста, которому коллеги делали туннель для перегонки его видео из Ирана, для чего хватило GRE based vpn’s SSH и socks/tun over ssh, что работало на ура. Джуниперовский VPN (443 порт) тоже работал в тех краях абсолютно без проблем. Короче, если за дело брался высококвалифицированный техногик с соответствующей поддержкой из-за рубежа — этот сим-сим тут же отворялся, выпуская дух свободы наружу. Да, хорошо иметь друзей-технарей снаружи сетевой клетки, которые готовы тебе помочь в обходной коммуникации, но что делать остальному подавляющему большинству простых смертных?

Иногда возникает впечатление, что подобные блокировки — это пережиток азиатчины, — но это далеко не так. В декабре 2011 года подвиги Ирана решил повторить Казахстан — наш сосед по Таможенному Союзу. Его крупнейший транзитный оператор KazTransCom начал фильтровать свой трафик, используя расширенный DPI (по китайскому варианту). При этом он довольно хорошо чистил трафик от всех потенциальных разносчиков запрещенной информации: Tor, Tor в режиме бридж, IPsec, технологии на основе PPTP, а также от некоторых вариантов VPN работающих на базе SSL…

Для таких случаев ответ проекта Tor остался неизменен — Obfsproxy.

Но прогресс не стоит на месте — в последнее время появляются сложные методики обнаружения Tor и в режиме Obfsproxy. Для этого применяются timing-атаки или вычисляется процент энтропии (естественности) пакета, но… пока это достаточно сложно и дорого для того, чтобы массово реализовать в режиме реального времени сразу для всей страны. Впрочем, имя ключевой технологии, которая убьет Obfsproxy и ему подобных уже, известно — это SVM (о ней более подробно ниже).

I2P — такой тормозной и пустынный

Очень кратко остановимся и на I2P — несмотря на множество бла-бла-бла в околотехнической среде — это не полностью децентрализованное решение. Так, при первом запуске I2P список всех активных узлов сети также тупо выкачивается в виде тарбола с «этих ваших интернетов». Таким образом, внимание: в любой момент времени доступен актуальный список адресов всех «стартовых серверов» этой пиринговой сети. Ну, и что стоит их банально забанить? Здесь даже дорогие DPI не нужны… Именно таким образом в Иране и Китае динамически блочатся все адреса с которых бутстрапится I2P, посему эта «децентрализованная» сеть уже давно недоступна с их территории.

Более ясно написали в ченжлоге прошлогоднего релиза I2P:

«Routers in certain countries will now automatically enable hidden mode for increased protection… For the list of countries see the thread on zzz.i2p. The only country on the list that has more than one or two I2P users is China.»

Поэтому давайте оставим в покое «неуязвимую» I2P вместе с теми самыми непобедимыми как Чак Норис «more than one or two I2P users in China».

Фильтрация по-взрослому: китайский опыт

Самое время перейти к рассмотрению передового китайского решения, элементы которого использует как Казахстан, так и Эфиопия. И как мы читали ранее — вероятно, именно это оборудование для «восстановления попранной законности» и собирается применить Ростелеком.

Описание текущего положения дел на китайском сетевом фронте начну сразу с фактов: на данный момент Great Firewall of China (GFoC) достаточно надежно блокирует весь национальный трафик из/в систем TOR, I2P и частично VPN. Технически это достигается сочетанием трех технологий-столпов:

Симбиоз данных методов фильтрации позволяет автоматически распознавать тип шифрованного трафика с высокой степенью точности. Так как о DPI я уже упоминал выше (более подробно смотрите о нем в первой части статьи), то здесь дам лишь краткое пояснение относительно малоизвестных у нас технологий — это connection probe (иногда ее же называют reverse probe) и специфического приложения теории SVM.

Тактика connection probe заключается в том, что любое подозрительное (по самым общим критериям) исходящее соединение во внешний мир замораживается в точке интерконнекта, после чего по указанному целевому адресу уже от имени правительственного сервиса инициируется опережающее соединение к destination IP: Port (к которому изначально и пыталось обратиться удерживаемое соединение). Далее проводится попытка самостоятельного тестового подключения-сканирования. Если ответ сервера-назначения подпадает под паттерн запрещенных сервисов — удерживаемое соединение клиента принудительно рвется. Таким образом, чтобы преодолевать connection probe, теоретически нужно обфусицировать поведение не только клиента, но и сервера/протокола, его обслуживающего. Учитывая, что весь трафик в поисках крамольных сигнатур параллельно молотит все тот же DPI, то все, что преодолеет подобную комплексную защиту,  уже будет очень слабо напоминать оригинальный протокол или первоначальный сервис.

Подобные защитные схемы вынуждают создавать для их преодоления узкоспециализированные кастомные сервисы «под заказ», которые, будучи обнародованы и выложены в паблик, — сразу же попадают в стоп-лист GFoC. Здесь работа специалистов китайского НИИ Сетевой Цензуры и Пропаганды аналогична подходу антивирусных компаний, и в данном конкретном случае DPI — это поиск по сигнатурной базе, а connection probe — своего рода «запуск соединения под отладчиком», который выявляет и блокирует «нестандартные клиенты», позволяя нагло вклиниваться третьему лицу непосредственно в интимный процесс их хэндшейка (tcp session handshake).

Третий столп — уже упомянутый Метод опорных векторов (SVM, support vector machine) — это известный алгоритм машинного обучения, который очень эффективен, когда возникает необходимость автоматически классифицировать разнородные данные. Иначе говоря, машина опорных векторов — это самообучающаяся на базе статистических методов программа, которую можно представить как двухслойную нейросеть (RBF-сеть). Желающие более полно познакомиться с математической стороной теории могут вот здесь (рус.) глянуть тематическую брошюрку от сотрудника Яндекса, а также прочитать дополнительное введение в теорию SVM (англ.) и пример ее простейшей реализации на С.

Продолжая нашу антивирусную аналогию, SVM — это своего рода эвристический движок, позволяющий с высокой степенью вероятности идентифицировать в обилии разнообразных полиморфических штаммов оригинальный вирус, чтобы принять в отношении него адекватные меры. Таким образом, с помощью SVM признаки различных протоколов и их характерные паттерны вычленяются даже в специально обфусицированном потоке данных, и чаще всего это реализуется в виде продвинутой AI-надстройки над «сверхглубокой молотилкой пакетов» — DPI (два в одном). Именно на ее развитие возлагаются надежды по обнаружению технологий типа Obfsproxy (первые успехи уже имеются).

Переходя к частностям, именно с помощью connection probe Китай регистрирует, например, SSH (вот пример такой технологии). Типы SSL-трафика данный комплекс технологий также более-менее успешно разделяет (вот дополнительное описаниевидео mp4, 600Mb этого процесса по отношению к Tor). Об особенностях борьбы с VPN мы поговорим более подробно в следующих статьях этого цикла, но раз уж мы коснулись Китая здесь, то сообщаю: на данный момент власти Китая согласовывают законодательный проект, который предполагает разрешение VPN для лицензируемого использования.

Иначе говоря, у юридических лиц для служебных нужд будут свои лицензированные тоннели (это будет свой собственный китайский софт), которые не будут блокироваться на трансграничном шлюзе, а физическим лицам все принудительно «порежут». А детектирование VPN сведется к обнаружению и проверки валидности вшитой лицензии «лицензированного» тоннеля, а также к тупому «дропанью» всего остального зоопарка VPN.

Следствие всего сказанного -> немного статистики

Логично будет завершить данный теоретический экскурс статистикой количества активных пользователей Tor из ряда отобранных мною стран (ниже выборка: daily active Tor users both direct and bridge, per month by country):

Как видно, количество пользователей Tor Onion из многомиллиардного Китая даже меньше количества пользователей оной сети из Беларуси, хотя масштаб двух этих стран просто несопоставим. С одной стороны, можно подивиться изворотливости этой «отборной китайской тысячи», но с другой — кто будет спорить, глядя на эти результаты, что блокировка в масштабах всей китайской страны работает очень даже неплохо?

Если учитывать население Китая и количество прорвавшихся через его сетевую границу, то, соблюдая пропорции, при подобной блокировке в России наружу выползет около 100—150 человек максимум… Короче, говоря о нашем будущем, важно запомнить главное:

Помогаете devby = помогаете ИТ-комьюнити.

Засапортить сейчас.

Читайте также
США запретили IT-компаниям с господдержкой строить заводы в Китае в течение 10 лет
США запретили IT-компаниям с господдержкой строить заводы в Китае в течение 10 лет
США запретили IT-компаниям с господдержкой строить заводы в Китае в течение 10 лет
Китай потребовал от технокомпаний лучше трекать пользователей и бороться с фейками
Китай потребовал от технокомпаний лучше трекать пользователей и бороться с фейками
Китай потребовал от технокомпаний лучше трекать пользователей и бороться с фейками
Huawei релоцирует сотрудников из России в Казахстан и другие страны СНГ
Huawei релоцирует сотрудников из России в Казахстан и другие страны СНГ
Huawei релоцирует сотрудников из России в Казахстан и другие страны СНГ
1 комментарий
В Китае прошел первый полет беспилотника на солнечных батареях
В Китае прошел первый полет беспилотника на солнечных батареях
В Китае прошел первый полет беспилотника на солнечных батареях

Хотите сообщить важную новость? Пишите в Telegram-бот

Главные события и полезные ссылки в нашем Telegram-канале

Обсуждение
Комментируйте без ограничений

Релоцировались? Теперь вы можете комментировать без верификации аккаунта.

Комментариев пока нет.