Читайте нас в Telegram или Макс

Сообщество нашло способ вернуть работу MTProto-прокси в Telegram на ПК

Энтузиасты выпустили форк десктопного клиента Telegram, в котором прокси снова работают, несмотря на усиленную блокировку, обнаружил «Код Дурова».

Фикс делает трафик MTProto неотличимым для систем глубокой фильтрации, но в официальный клиент он пока не попал.

После того как в России массово перестали работать MTProto-прокси и многие VPN, участники сообщества предложили решение — по крайней мере, для пользователей ПК.

А пока решение ещё не принято разработчиками официального клиента Telegram — энтузиасты уже выпустили свой форк со встроенным обходом DPI блокировки: в портативной сборке под Windows прокси снова работают.

Без соответствующих прокси форк не обходит блокировку Telegram в России и не является средством для обхода блокировок.

Это продолжение истории, о которой «Код Дурова» рассказывал на этой неделе: с конца мая в России фиксируется массовое отключение MTProto-прокси и сбои в работе VPN.

Эксклюзив: в России усилили блокировку VPN и прокси
Под массовую блокировку попало беспрецедентное количество прокси Telegram-протокола MTProto. Также перестали работать многие VPN.

По версии опрошенных редакцией экспертов, регулятор нашёл способ распознавать и блокировать такой трафик по характерной сигнатуре. Новый фикс направлен ровно на то, чтобы лишить прокси той предсказуемой сигнатуры.


Что именно меняет фикс

Проблема, как объясняет автор сборки, в том, что стандартный Telegram Desktop при подключении через прокси всегда отправляет одинаковый по структуре первый пакет TLS-соединения — так называемый ClientHello. У него фиксированный отпечаток, и системам глубокой фильтрации трафика (DPI) достаточно один раз описать этот отпечаток, чтобы затем распознавать и отсекать всё MTProto-соединения по шаблону.

Технически правка затрагивает всего один файл клиента, отвечающий за установку TLS-соединения. Исправление убирает предсказуемость: теперь при каждом подключении клиент собирает ClientHello заново и по-разному. Среди изменений в коммите:

  • Случайный выбор между отпечатком мимикрии под Chrome и мимикрии под Firefox на каждое соединение.
  • Дополнительно отключён алгоритм Нейгла для мгновенной отправки пакетов и добавлен случайный разброс во временные метки.
  • В сумме каждое новое соединение получает уникальный отпечаток, набор шифров и схему отправки — и распознать MTProto по единой сигнатуре становится фактически невозможно.

У решения есть существенные ограничения. Во-первых, это форк сообщества, а не официальный клиент: на момент публикации изменения не приняты в основной репозиторий Telegram, то есть в обычное приложение исправление пока не дошло. Также сборка доступна только для Windows.