Как российское правительство следит за активностью людей в интернете

Недавно New York Times опубликовала статью,  которая в очередной раз вызвала беспокойство и много вопросов. Сейчас я попытаюсь максимально просто объяснить, как работают компьютерные сети и комплекс СОРМ, про который идёт речь в статье.


Компьютерные сети как общение между отелями

В сетях данные передаются в виде пакетов между компьютерами (телефон и любое другое устройство в данной ситуации можно считать компьютером). Ближайшая аналогия с пакетом — это бумажное письмо. У физического письма есть несколько важных характеристик — это имя, адрес отправителя и получателя, а также его вес. У пакета с данными есть очень похожие характеристики:

  • IP–адреса отправителя и получателя, которые заменяют почтовый адрес;

  • порт — число, обозначающее приложение, которое и отправляет, и получает данные;

  • “вес”, то есть размер в байтах.

Можно представить обмен данными как переписку между постояльцами двух отелей. В качестве IP-адреса используется адрес отеля, а вместо имени — номер комнаты, в которой остановился человек. Человек в данной аналогии — это компьютерная программа.

Всё бы это работало довольно очевидно, если бы не одна большая проблема: количество адресов, которые были заложены при изначальном дизайне компьютерных сетей. В десятки, если не сотни раз меньше, чем количество компьютеров, подключенных к интернету. Чтобы адресов хватило всем, поставщики интернета прячут множество устройств за одним адресом, переназначают его и т.д. Поэтому без данных от провайдера, связать пользователя с данными его устройства невозможно. Только провайдер знает, в какой момент времени какой диапазон портов (“комнат”) был связан с конкретным пользователям. Конечно же, не только в РФ провайдеры хранят такую информацию. Например, она нужна для того, чтобы вычислять пользователей торрентов.

Еще одна важная деталь, текстовые имена — такие как google.com — это просто синонимы для IP-адресов, придуманные, чтобы избавить людей от необходимости запоминать большие цифры. Потому когда я пишу адрес, это может быть как набор цифр, так и имя сайта. Теперь разберём несколько примеров, как это всё работает.

Пример 1: Загрузка изображения с котиком на странице фэйсбука.

Все картинки в ленте фэйсбука или на любом другом сайте представлены в виде ссылок на файлы, находящиеся на отдельном сервере. Например, ссылка вида https://media.facebook.com/cute_cat.jpg

Браузер понимает, что ему нужно получить котика cute_cat.jpg от сервера media.facebook.com. Порт, на который надо отправить запрос, берётся из протокола, который есть в начале ссылки, а именно https т.е. 443. Соответственно, браузер отправляет пакет с запросом “выдай мне картинку с названием cute_cat.jpg” на media.facebook.com порт 443. В качестве адреса отправителя будет использован IP-адрес компьютера и случайный порт, на котором браузер будет ожидать ответа на пакет. В ответ media.facebook.com отправит ему пакет, содержащий изображение котика, и браузер сможет отобразить его в ленте.

Пример 2: Простейший мессенджер.

Из за недостатка адресов два компьютера больше не могут обменяться своими адресами и переписываться напрямую. Плюс компьютеры не в сети не могут принимать сообщения. Чтобы решить эти две проблемы, были придуманы системы обмена сообщениями – такие, как электронная почта и мессенджеры.

Чтобы переписка состоялась, компьютер отправителя отправляет сообщения на адрес сервера (например, whatsapp.com) с текстом вида:

– Я Катя, мой пароль 123. Сообщение для Пети “Привет, как дела?”
На что получает ответ:
– Хорошо, Катя, твоё сообщение отправлено.
После этого компьютер Пети отправляет на тот же адрес сообщение вида:
– Я Петя, пароль 345, есть для меня сообщения?
На что сервер ему отвечает:
– Да, для тебя есть сообщение от Кати “Привет, как дела?”


СОРМ или что это за зверь

СОРМ или Система оперативно-розыскных мероприятий — комплекс, разработанный по заказу правительства РФ и установленный у всех провайдеров интернета в РФ еще в 2008 году.

Комплекс записывает заголовки (информацию об отправителе и получателе, а также размер пакета) для всех пакетов, проходящих через провайдера, и сохраняет их в специальной базе данных вместе со временем их отправки. Объединив эту базу данных с базой провайдера о том, кому какой адрес принадлежал в данный момент времени, можно сказать, кто отправил какие данные и кому. Также СОРМ может анализировать зашифрованный трафик, сохранять пароли и прочую ключевую информацию, проходящую через него.

А где тут шифрование?

К большому несчастью спецслужб, случился скандал со Сноуденом, который рассказал о более впечатляющей системе мониторинга трафика, разработанной Американской разведкой. После этого шифрование трафика стало стандартной практикой. Конечно, чтобы пакет был доставлен, его размер, адреса получателя и отправителя должны быть не зашифрованы. Соответственно, СОРМ не может знать ничего про содержимое пакета, но всё ещё знает, куда и сколько данных было отправлено и получено.


Проблема со звонками через приложения

Голос при передаче кодируется и отправляется небольшими пакетами получателю. С таким видом связи есть две проблемы:

  • таких пакетов получается намного больше, чем при текстовых сообщениях;

  • их нужно очень быстро обрабатывать, чтобы голос и ответ шел без задержек.

Тут и была разработана технология peer-to-peer. При её использовании звонящие соединяются напрямую без использования серверов мессенджера. По аналогии с отелями и номерами переписка будет выглядеть примерно так:

Катя: Я Катя, пароль 123, хочу позвонить Пете. Я сейчас в отеле Звезда, номер 13
Сервер-Кате: Хорошо, я передам запрос Пете
Петя: Я Петя, пароль 345, есть что-то для меня?
Сервер-Пете: Да, с тобой хочет поговорить Катя, где ты сейчас?
Петя: Я в отеле Солнышко, номер 42
Сервер-Пете: Ожидай звонка от Кати из отеля Звезда, номер 13
Сервер-Кате: Петя в отеле Солнышко, номер 42
Катя-Пете: Привет, начинаю передачу голосовых данных.

Как видно из примера выше, между компьютерами Кати и Пети используется прямое общение. Однако, голосовой трафик имеет довольно характерные признаки: частота пакетов и их размер, а также их синхронность. Соответственно, СОРМ может установить, что Катя разговаривала Петей даже без доступа к данным мессенджера.


Какие ещё активности в сети легко заметить таким образом

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

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

Очень важный нюанс: для такого анализа нужен трафик обоих пользователей, поэтому всем, кто находится в РФ или максимально дружественных ей странах, стоит соблюдать осторожность. Я не встречал информации про то, установлены ли комплексы СОРМ в Республике Беларусь, но для безопасности стоит исходить из того, что они там есть.


Как и почему помогает VPN

VPN-сервер можно описать как специальную гостиницу, в которой нет реальных номеров, но она предоставляет их всем желающим, чтобы они могли их использовать в своей переписке. Снова приведу пример с Катей и Петей.

Катя(Звезда 13) – VPN(Солнышко 10): Я хочу написать в отель Солнышко, номер 42 “Привет, как дела?”
VPN(Надежда 167) – Пете(Солнышко 42): Привет, как дела?
Петя(Солнышко 42) – VPN(Надежда 167): Привет, ты кто?
VPN(Солнышко 10) – Кате(Звезда 13): Ответ от отеля Солнышко, номер 42 “Привет, как дела?”

Как видно из примера, в данном случае отсутствует прямой обмен данными между Катей и Петей. Все сообщения после “:” зашифрованы и недоступны для анализа.

VPN-сервисом пользуется множество людей, и если на нём не установлен СОРМ, то невозможно установить, кто именно отправлял сообщения Пете. Именно поэтому не нужно пользоваться VPN от Касперского и других официальных российских сервисов: там он, скорее всего, установлен.

Previous
Previous

Активизм в лицах

Next
Next

Wie die russische Regierung die Internetaktivitäten der Menschen überwacht