1 апреля (и это не шутка) в РФ выкатили новый алгоритм фильтрации, от которого массово полегли MTProxy и telemt. Причем полегли хитро... прокси вроде коннектится, но сообщения не уходят, медиа висит в вечной загрузке, а потом всё отваливается с концами. В чатах начались бурления.
Если расчехлить Wireshark и посмотреть на TCP-дамп, открывается занимательная картина. Соединение успешно устанавливается, клиент отправляет пакет
TLS ClientHello (приветствие, начало защищенной сессии)... и всё. Дальше глухо. Вместо ответа от сервера клиент получает либо молчание и уходит в TCP Retransmission (пытается достучаться снова и снова), либо ему прилетает фейковый
RST (Reset) пакет. Что любопытно, этот RST пакет походу подделывает оборудование ТСПУ... оно спуфит IP, порт и sequence number, заставляя железо думать, что это сервер разорвал коннект. Но никакого тотального DPI-анализа всего трафика (как многие боялись) пока нет. РКН тупо бьет по TLS-фингерпринту клиента ТГ.
Немного про фингерпринт... это набор параметров в
ClientHello (порядок cipher suites, extensions, supported groups и т.д.), который уникален для каждого софта. Как оказалось, у Телеги этот отпечаток весьма специфичный. ТСПУ просто видит этот характерный набор байт и дропает пакеты или шлет RST.Энтузиасты уже провели эксперимент... взяли исходники Telegram Desktop, слегка поменяли параметры
ClientHello, пересобрали бинарник - и случилось чудо! Все заблокированные прокси (даже с ee префиксом) моментально ожили и начали работать без единого обрыва на разных провайдерах. Ситуация сводится к классической игре в кошки-мышки, когда РКН пилит сигнатуру -> ТГ выпускает патч, меняющий отпечаток клиента -> РКН будет искать новую сигнатуру.
Тех, кто сидит на своих тоннелях это не зацепило... остальные ждут обнову Телеги, ну а самые красноглазые попробуют собрать клиент из исходников со своими параметрами TLS.
Типичный 🥸 Сисадмин
