С каждым днём блокируется всё больше и больше сайтов, а зайти на ресурсы, которые не в белых списках, становится всё тяжелее и тяжелее. Чтобы разобраться, как с этим бороться, нужно понять, как именно происходят блокировки.
Как устроена сеть
Компьютерные сети устроенные по принципу «разделяй и властвуй» — именно это долгое время мешало заблокировать полностью интернет. Все пакеты, проходящие через всемирную сеть, разделены на несколько этажей, причём каждый из них независим друг от друга.
- Первый этаж — физический. Он определяет, каким путём будет передаваться пакет: будь то через Wi-Fi, мобильный интернет или провод.
- Этаж маршрутизации. Отвечает за то, как компьютеры находят друг друга в сети. За это отвечает IP.
- Транспортный этаж. Занимается сохранностью данных. Пакеты можно передавать через UDP — быстро, но с потерей некоторых данных (это хорошо подходит для стриминговых сервисов). Либо через TCP, где можно получить гарантию, что твоё сообщение придёт получателю, но жертвуя при этом скоростью (это отлично подходит для скачивания файлов).
- Прикладной этаж. Самый высокий уровень. Через него передают полезную нагрузку приложений на твоих устройствах, например, Telegram передаёт твои сообщения или фоточки.
Эволюция блокировок: от IP к DPI
До появления DPI блокировки шли именно по маршрутизации. Если по-простому, сверялся IP, и если пакет шёл на нежелательный адрес, находящийся в чёрном списке, то он просто не проходил дальше. Эту идею довольно быстро забросили, так как способ нёс огромные убытки — он банил не только нежелательный сайт, но и все остальные, которые находились с ним на одном сервере, в том числе безобидные и приносящие огромные деньги.
Чтобы решить эту проблему, начали использовать DPI. Это существовавший и до этого алгоритм, который чаще всего использовался в добрых целях. Его преимущество в том, что он умеет просматривать данные разного уровня и сами пакеты. Он может понять не только откуда идёт трафик, но и что это за трафик конкретно: сообщения, картинки или даже видео.
С зашифрованным трафиком всё сложнее, тут информации намного меньше. Система увидит, какой порт используется (что даёт намёк на тип приложения), IP-адреса и тип шифрования, а всё остальное, включая URL-адрес, зашифровано. Чтобы расшифровать такое сообщение, DPI применяет так называемый эвристический анализ. Из пакета извлекаются небольшие кусочки данных, образцы, а дальше система сравнивает их с огромной базой известных образцов — сигнатур трафика. Это очень похоже на то, как работает Шазам, который сравнивает небольшой кусочек песни, записанный вами на диктофон, с базой сигнатур песен. По сути, DPI — это Шазам для трафика.
Почему обычные VPN больше не работают
Суть обычных протоколов VPN в том, что они выступают посредником между юзером и конечным сайтом. Трафик в зашифрованном виде сначала идёт на сервер VPN, там пакет пересобирается и отправляется, куда изначально задумано. Обычные блокировщики видят не конечный IP нежелательного сайта, а посредника, которого нет в чёрном списке, и спокойно пропускают его.
Но есть проблема: VPN-протоколы имеют характерные отпечатки. Как раз DPI может сравнивать запрос с собранной ранее базой данных и отличать обычный трафик от трафика VPN. Если есть совпадение, он просто не пропускает его дальше. Ему даже не нужно знать, что именно передаётся, достаточно просто понять, что это VPN.
Современные методы обхода
Если DPI — это Шазам для трафика, то самый логичный способ обхода — сделать так, чтобы сигнатуры стали неотличимыми от обычных, или замаскировать один тип трафика под безопасный. В большинстве современных VPN это достигается с помощью связки Vless плюс Reality.
Ранее популярный протокол Open VPN имеет свою характерную структуру и специфический скелет, который отличается от обычного обмена сообщениями между браузером и сайтом, что легко палится. Vless решает эту проблему: он избавился от всех ненужных полей, а обязательные для установления соединения оставил, изменив их так, чтобы полностью копировать рукопожатие, которое устанавливает браузер при подключении (в той же последовательности и той же длины). Из-за этого DPI при сравнивании сигнатур понимает, что это обычное посещение сайта, и пропускает пакет.
Но остаётся другая проблема. ТСПУ может не только смотреть на проходящий трафик, но и само попробовать подключиться на сервер для проверки — это называется активное зондирование. Именно так отваливались многие VPN. Когда ТСПУ приходит с запросом для проверки, сервер с Reality не отвечает сам, а отправляет запрос на какой-нибудь настоящий крупный и чистый сайт (например, iCloud) и возвращается с настоящими сертификатами и HTTP-ответом. Проверяющий алгоритм получает настоящий сайт Apple, убеждается, что всё окей, и отстаёт. Причём туннель открывается только по правильному ID юзера, а без него сервер работает как обычное зеркало.
Будущее противостояния
Бороться с таким обходом можно, но очень сложно. Уже закуплены графические процессоры для создания искусственного интеллекта, который будет анализировать трафик не по сигнатурам, а по поведению: как часто ты подключаешься, в какое время и так далее.
Если ты сидишь через VPN, который маскируется под обычный сайт, и смотришь YouTube, ТСПУ с искусственным интеллектом это обнаружит. Трафик из-за просмотра видео будет передаваться равномерно, хотя на обычных сайтах такое бывает редко. Именно такую статистическую аномалию модель будет учиться различать и блокировать.
Но тут уже пойдёт гонка вооружений: каждый новый метод обхода рождает новый способ детекции, и так по кругу. Вопрос не в том, победит ли РКН или нет, а в том, насколько высоким станет порог входа. Сейчас обойти блокировки может почти любой школьник за 5 минут, но через год-два это будет уделом тех, кто понимает, что происходит под капотом.