Недавно в сети получила широкую огласку и негодование информация об отслеживании фактов взаимодействия между пользователями популярных мессенджеров. Я решил привести алгоритм реализации данных действий, опираясь только на информацию, доступную при анализе трафика.  C помощью DPI (Deep Packet Inspection) и фильтров (например, адресу сервера), провайдеры и СОРМ могут обнаруживать целевой сетевой трафик пользователя и применять особые правила зеркалирования (которое в РФ должно происходить для всех пользователей согласно закону Яровой). С помощью ботов, включая функциональных, вроде антиспам ботов, ботов статистики, которые многие администраторы добавляют в каналы, или же модифицированных клиентов мессенджера владельцы данных сервисов могут в реальном времени получать и логгировать сообщения, действия пользователей и техническую информацию пользователей (например user_id, онлайн статус) целевого пула (например, с выборкой по стране). Затем, с помощью сигнатур пакетов и timestamp (временной метки) с коэффициентом времени доставки сообщения, довольно несложно соотнести активность сегментированного для мессенджера траффика и пул устройств и IP адресов пользователя. Подобным образом возможно свзязывание пользователя по другим активностям в групповых чатах и каналах мессенджера (использование реакций под сообщениями, комментариев, просмотра сообщений). Для пользователей, не использующих групповые чаты и каналы месседжера, может использоваться следующий метод: Выборка пула пользователей (например, по номеру телефона, базам username, парсингу bio по ключевым словам или языку), а затем, с помощью модифицированного клиента, посредством бота рассылки или даже живого человека, отправка личных сообщений пользователю и, по вышеприведенному примеру, связывание его пула устройств и IP адресов с аккаунтом в мессенджере (ответ на сообщение, прочтение, удаление диалога, блокировка собеседника, и т. д.). Дополнительные сигнатуры могут быть получены путем отслеживания активности пользователя в мессенджере, например, смены публичного онлайн статуса, изменений аватара или метаданных, например bio. После того, как пользователи мессенджера идентифицированы с пулом их устройств и IP адресов, достаточно по сигнатурам сообщений анализировать сегментированный трафик, фильтруя только события, связанные с полезной нагрузкой: p2p соединения, сообщения, звонки. После этого возможны выборки как активности конкретных пользователей и устройств в мессенджерах: по местоположению связанных устройств, по ФИО конкретных пользователей (и связанных с ними IP адресами у провайдеров), и т. д. Так и категоризация по другим параметрам, например, по общим контактам, контактам, идентифицированным как иностранные пользователи или пользователи конкретой страны или региона. Решения со стороны мессенджеров: Генерация большого количества дополнительного «мусорного» трафика, замаскированного под полезный в случайные моменты времени. Изменение серверной архитектуры, с отказом от сквозного идентификатора пользователя для чатов, диалогов и других опций мессенджера, путём проксирования user_id или использования деривативных user_id, например, сформированных по принципу генерации иерархических ключей ECDSA. Решения со стороны пользователя: Регистрация нового аккаунта (при изменении параметров авторизации, user_id остается прежним). Отказ от использования мобильного номера телефона для авторизации в мессенджерах, особенно если сим карта приобретена ранее по документам владельца. При использовании адреса электронной почты — использование нового, нигде ранее не используемого Использование приватного VPN на личном сервере с загрузкой канала трафиком.  Golang Lead [Blockchain, Architect, Security]