August 21, 2018

Шифруйся грамотно! Обзор мессенджеров в плане анонимности и безопасности. Ч.1.

Шалом, бегущие в тенях! Привет, случайный подписчик. Парадоксально, но факт: при всем разнообразии мессенджеров выбирать их обычно не приходится — люди просто пользуются тем же, чем их друзья и знакомые. Но что, если секретность действительно важна? В этой статье мы пройдемся по списку современных мессенджеров и посмотрим, какие гарантии защиты есть у каждого из них.

Поехали:

Недавно мы вместе с союзными дарк-каналами (например, вот один из них: https://t.me/tor_darknet) провели закрытый опрос среди наших активных подписчиков на тему: «Какой мессенджер ты считаешь самым надёжным для киберсталкера?», и самый популярный ответ (Telegram) серьезно настораживал. Насколько все далеко зашло, если даже средний читатель каналов дарк уже потерял связь с реальностью после атаки маркетинг-хедкраба?

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

Во многом мы повторили путь авторов серии статей Electronic Frontier Foundation под названием Secure Messaging Scorecard, но выбрали другие критерии — на наш взгляд, более важные.

 Критерии

FOSS

Распространяется ли исходный код мессенджера на условиях одной из свободных лицензий? Если да, то ведется ли разработка открытым методом? Насколько тесно разработчики взаимодействуют с сообществом? Принимают ли pull request’ы? Все это важно учитывать при выборе.

Степень централизации

Здесь возможен один из трех вариантов:

  • централизованный — требует сервера, возможно заблокировать. Пример: VK, Telegram, Facebook;
  • федеративный — сеть из серверов, которые общаются друг с другом. Каноничные примеры: электронная почта, Jabber (XMPP), Riot Matrix;
  • децентрализованный (имеется в виду P2P) — каждый клиент является одновременно и сервером.

Возможность анонимной регистрации и использования

Для некоторых сервисов телефон может понадобиться только для защиты от спама при регистрации, соответственно, очень просто использовать сервисы аренды номеров для SMS.

В остальных случаях мессенджер плотно привязан к телефону. Это плохо тем, что если не включена двухфакторная аутентификация, то при получении доступа к этому номеру можно зайти в аккаунт и слить все данные. Но даже если двухфакторка включена, все равно остается возможность удалить все данные с аккаунта. Ну и конечно, это, считай, регистрация по паспорту (используем реалии РФ, других не завезли).

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

Наличие End-to-End Encryption (E2EE)

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

Синхронизация E2EE-чатов

Опять же эта функция пока что встречается не так часто, как хотелось бы. Ее наличие сильно упрощает жизнь.

Уведомление о необходимости проверки отпечатков E2EE

При старте E2EE-чатов некоторые мессенджеры предлагают проверить отпечатки собеседников, другие не предлагают это открыто. Но не все мессенджеры имеют функцию проверки отпечатков.

Запрет делать скриншот секретного чата

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

Групповые E2EE-чаты

Групповые E2EE-чаты обычно не такая уж необходимая функция, но весьма удобная. Правило «больше двух — говори вслух» стоит оставить для детей.

Уведомление о необходимости проверки отпечатков E2EE в групповых чатах

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

Защита социального графа

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

WWW

Мы выбрали лишь часть критериев, которые могут сыграть роль при выборе мессенджера. Существуют и другие, но не всегда они связаны с безопасностью. Группа ученых из европейских университетов неплохо разложила все по полочкам в работе Obstacles to the Adoption of Secure Communication Tools (PDF). Также всегда полезно знакомиться с результатами независимого аудита, если они есть. Например, в случае с Signal такой аудит проводился (PDF).

 Итак:

Telegram

Лицензия: формально — GPLv3. Однако важная часть разработки закрыта. Если взглянуть на репозитории, то видно, что в последнее время какое-то движение наблюдалось только в вебовой версии. Увы, в таком виде это скорее иллюзия открытости

Степень централизации: централизованный

Возможность анонимной регистрации и работы: нет

Наличие E2EE: реализованы, но как дополнение. По умолчанию чаты не шифруются

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

Уведомление о проверке отпечатков E2EE: нет. Пользователи могут сами зайти в настройки, чтобы сравнить отпечатки

Запрет на скриншоты секретных чатов: есть, но работает не на всех устройствах

Групповые чаты E2EE: нет

Защита социального графа: нет

Мессенджер, созданный командой Павла Дурова, построен на технологии шифрования переписки MTProto. На данный момент частично заблокирован на территории России, но эта блокировка — отдельная тема для разговора.

Мессенджер неоднозначный. Вокруг него много шума, но оправдан ли он? Доступа к исходникам нет, чаты по умолчанию не шифруются, нет защиты социального графа (все твои контакты хранятся на серверах Telegram), нет групповых E2EE-чатов, E2EE-чаты не поддерживаются в настольной версии программы, только в мобильной, мессенджер централизованный, сообщения хранятся на сервере (и они, как уже было отмечено, не зашифрованы), и при всем этом отсутствует возможность анонимной регистрации.

Важно!!! Если ты хочешь использовать Telegram, то для защиты переписки не забывай создавать секретные чаты. В мобильной версии для этого нужно выбрать команду New Secret Chat. Из настольных версий секретные чаты поддерживают только некоторые (например, один из двух клиентов для macOS).

В секретном чате сообщения шифруются и не хранятся на серверах мессенджера. Также нельзя сделать скриншот секретного чата, но ничто не мешает сфотографировать такой чат с экрана (!!!)

На сегодня всё, господа. В дальнейших частях этой статьи (ещё 2 части) мы по полочкам разложим для вас практически все имеющиеся на сегодняшний день крупнейшие мессенджеры мира. Оставайтесь с нами.