Сообщения в WhatsApp могут прочитать посторонние
Мессенджером WhatsApp пользуется миллиард человек. На сайте сервиса утверждается: никто не прочитает ваши сообщения, кроме адресата. Как выяснил исследователь из Калифорнийского университета в Беркли Тобиас Белтер, это не так. Злоумышленники или спецслужбы могут получить доступ к переписке, несмотря на шифрование.
WhatsApp ввел сквозное шифрование сообщений в апреле 2016 года. Это означает, что сообщения зашифровываются и расшифровываются непосредственно на телефоне. Чтобы система работала, приложение создает пользователю ключ для шифрования; такой же есть у каждого собеседника. В идеале, нужно лично убедиться, что ключ действительно принадлежит собеседнику (хотя, конечно, так делают далеко не все). Дальше мы расскажем, как это работает в WhatsApp на примере.
Алиса решила поздравить Боба с днем рождения, но не хочет, чтобы послание прочитали сотрудники ФСБ. За два дня до праздника Алиса встречается с Бобом. Девушка открывает WhatsApp и сканирует QR-код на телефоне друга. Теперь Алиса уверена: ключ шифрования принадлежит Бобу, и никто, кроме него, не сможет прочесть поздравление.
Как установил исследователь Тобиас Белтер, на деле, это не так. В апреле 2016 года, как только WhatsApp ввел сквозное шифрование, Белтер обнаружил: приложение без ведома пользователя может сменить ключ шифрования. Обычно ключ меняется, когда человек потерял телефон, сменил номер или надолго ушел в оффлайн.
По словам исследователя, эту особенность могут использовать злоумышленники, спецслужбы или сам WhatsApp. Возьмем тот же пример: Алиса отправила Бобу поздравление. Сообщение зашифровано ключом Боба, в этом Алиса уверена. Вдруг она видит, что сообщение не дошло, поскольку Боб не в сети. Вскоре Боб вернулся и прочитал поздравление. Ни Алиса, ни Боб не знают, что пока он был офлайн, WhatsApp сменил ключ шифрования. После смены ключа его, возможно, использует не Боб, а кто-то еще.
Для пользователей WhatsApp такое поведение сервиса опасно. Злоумышленники могут атаковать сервис, создать новый ключ и получить сообщения вместо адресата. Еще хуже: по запросу спецслужб то же самое может сделать сам WhatsApp. Как утверждает Белтер, таким образом можно получить всю переписку, объявив предыдущие сообщения недоставленными.
Тобиас Белтер сообщил об уязвимости в Facebook (соцсеть владеет этим мессенджером) еще в апреле 2016 года. 25 мая из социальной сети ответили, что так и задумано. Белтер в ответ написал, что так быть не должно. На это Facebook ответил: «Мы и раньше знали об этом. Пока мы менять ничего не собираемся». Как пишет The Guardian 13 января, ошибка все еще на месте.
В настройках WhatsApp (Настройки? Учетная запись? Безопасность) можно включить уведомления. Тогда приложение будет уведомлять, когда у собеседника сменился ключ шифрования. Это не защищает от описанной уязвимости: предупреждение появляется, когда сообщения, зашифрованные новым ключом, уже отправлены.
Для шифрования WhatsApp использует протокол Signal. Тот же протокол есть и в одноименном мессенджере, но приложения Signal ведут себя иначе. Когда ключ собеседника меняется, он не отправляет сообщения заново, а выдает предупреждение. По версии Фонда электронных рубежей, Signal - самый безопасный мессенджер среди популярных приложений. Он по умолчанию шифрует все сообщения так, что их не может прочитать никто, кроме адресата.