Угрозы

Telegram снова проверили на приватность: в MTProto нашли устойчивый идентификатор, который позволяет отслеживать устройство

Telegram снова проверили на приватность: в MTProto нашли устойчивый идентификатор, который позволяет отслеживать устройство
Обложка © Anonhaven

Исследователи Symbolic Software опубликовали технический отчёт о протоколе MTProto, который используется в Telegram. Главный вывод: в сетевом трафике мессенджера может быть виден устойчивый идентификатор auth_key_id. Он не раскрывает текст сообщений, но может помочь наблюдателю связывать подключения одного и того же устройства в разных сетях, при смене IP-адреса и после перезапуска приложения.

Проблема — на транспортном уровне. Если у наблюдателя есть доступ к сетевому трафику между клиентом Telegram и серверами, он может видеть технические признаки соединения. В отчёте утверждается, что клиенты Telegram для Android и Desktop передают MTProto через незашифрованные TCP-соединения, а auth_key_id остаётся доступным в открытом или легко деобфусцируемом виде.

auth_key_id — это 64-битный идентификатор ключа авторизации. Документация Telegram описывает его как младшие 64 бита SHA-1-хеша ключа авторизации. Этот идентификатор входит во внешний криптографический заголовок сообщения вместе с msg_key. Само тело сообщения при этом шифруется, но внешний заголовок нужен серверу, чтобы понять, каким ключом работать.

В практическом сценарии это выглядит так: пользователь подключается к Telegram из домашней сети, с мобильного интернета, или через Wi-Fi в гостинице или офисе. IP-адреса меняются, сеть меняется, география меняется, но устойчивый идентификатор может позволить связать эти подключения в одну линию. Исследователи проверяли поведение на Android и Telegram Desktop на macOS, анализировали захваченный трафик и документацию MTProto.

Риск — в сетевом отслеживании. Наблюдатель видит какое устройство появлялось в какой сети и когда, что превращается в серьёзный фактор риска.

Официальная документация Telegram отдельно делит MTProto на несколько компонентов: высокоуровневый API, криптографический слой и транспортный слой. Транспортный компонент может использовать TCP, HTTP, HTTPS, WebSocket и WSS. Документация также указывает, что основные клиенты используют MTProto 2.0, а MTProto 1.0 считается устаревшим.

Исследователи считают, что Telegram должен принудительно включить TLS для всех MTProto-соединений и убрать незашифрованные TCP-варианты. TLS — это транспортное шифрование, знакомое пользователям по HTTPS. Оно закрывает от промежуточных узлов больше технических деталей соединения, даже если содержимое приложения уже шифруется собственным протоколом.

Отдельный нюанс — секретные чаты. Telegram пишет в FAQ, что секретные чаты используют сквозное шифрование, при котором сообщения могут прочитать только участники переписки. Обычные облачные чаты используют схему клиент-сервер / сервер-клиент и хранятся в облаке Telegram.

Секретные чаты в Telegram, согласно выводам экспертов, защищают содержимое сообщений, но не решают проблему auth_key_id, если идентификатор виден на транспортном уровне. Иными словами, сквозное шифрование не обязано скрывать сам факт подключения устройства к Telegram и повторяемый технический маркер в заголовке.

После публикации отчёта Telegram отверг выводы исследователей. В ответе, который приводят журналисты, компания заявила, что auth_key_id регулярно меняется, не раскрывает данные пользователя, текст сообщений, получателей или приватную информацию. Также Telegram указал, что наблюдатель, способный видеть этот параметр, уже имеет доступ к более надёжным сетевым сигналам для трекинга.

Исследователи утверждают, что идентификатор остаётся стабильным при смене сети, IP-адреса и местоположения. Telegram заявляет, что параметр меняется регулярно и сам по себе не раскрывает персональные данные. Независимая проверка кода серверной части Telegram невозможна: клиентский код можно анализировать, но серверная логика и реальные настройки инфраструктуры остаются закрытыми.

Есть новость? Станьте автором.

Мы сотрудничаем с независимыми исследователями и специалистами по кибербезопасности. Отправьте нам новость или предложите статью на рассмотрение редакции.