Мессенджер Signal на Android
Мессенджер Signal на Android

Signal — это мессенджер для обмена зашифрованными сообщениями, конфиденциальная альтернатива WhatsApp/Telegram...

Слоган ПО:

Общайтесь по-новому! Всё, что вы ждали от мессенджера, с акцентом на приватность.

В мессенджере Signal имеется функция "Исчезающие сообщения" далее "ИС". Эта security-функция аналогична функции: "автоудаление сообщений в Tg" (в обоих мессенджерах конфиденциальность пользователей "была" нарушена данной функциональностью).

О багах

Информация с оф.сайта:

Если вы нашли уязвимость в Signal, пожалуйста, сообщите о ней по адресу security@signal.org.

Пожалуйста, используйте этот адрес только для сообщений о проблемах безопасности в приложении Signal. У Signal нет программы bug bounty, но мы исследуем проблемы безопасности.

И рядом на том же сайте:

мы неплохо финансируемся и в поисках толковых разработчиков.

Почему я опубликовал информацию в СМИ, а не разработчикам по электропочте или в репозиторий Signal?

У приватного мессенджера Signal имеются довольно много багов, в т.ч. и проблемы с конфиденциальностью. И иногда сами шифропанки-представители своего ПО скандалят друг с другом как можно громче.

Ранее я случайно находил и репортил проблемы мессенджера Signal им на Github. Например, последняя опубликованная мной проблема, после которой я сдался как-либо улучшить кривоватый во всех смыслах мессенджер — это была проблема с интерфейсом приложения на Android устройствах: скачанные картинки/файлы непросто было найти на своём гаджете (само приложение сбивало пользователя с толку). Но Signal это Open Source с высоким звёздным рейтингом на Github-е, поэтому проблему заботливо подхватил и внёс исправление один из пользователей мессенджера. Но разработчики Signal не удосужились принять готовое исправление/PR и даже никак не отметились, а спустя месяцы нерешенную Issues закрыл автобот.

Суть бага нарушающего конфиденциальность пользователей

Описание функции "ИС":

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

* Исчезающими сообщениями может управлять любой участник чата.

* Эта настройка будет применяться ко всем новым сообщениям после установки или изменения таймера.

Что происходит, когда таймер исчезающего сообщения истекает? Сообщение удаляется с диска.

С диска, но не с серверов Signal (здесь и кроется подвох для массового пользователя)!

Функция "ИС" мне необходима не только для конфиденциальности, но и для уничтожения "мусора" занимающего место на диске. В отличие от Tg Signal не умеет выделять несколько сообщений за раз, например, мышкой и удалять их в два касания (Desktop версия). Сообщения в мессенджере Signal/Desktop удаляются по одному (в отличие от Signal/Android): необходимо выделить одно сообщение, вызвать меню и стереть его (3 касания = deleting one message + 3 касания чтобы удалить еще и плашку об удалении сообщения). По этой причине у пользователей мессенджера примерно такая свобода действий: либо не уничтожать переписку, растрата места на диске; либо уничтожить одной кнопкой данные всех чатов и по новому добавлять участников и восстанавливать некоторые надстройки; либо по одному сообщению удалять переписку пока пальцы не отвалятся; либо использовать функцию "ИС". Вечная классика: баланс удобства и шифрования. Я выбрал последний пункт: настроил "ИС" по таймеру на сутки.

Несколько дней назад ко мне в Signal-лист добавился старый друг, и мы неплохо порезвились в переписке на Android (образовалась "тонна мусора", которая благополучно автоуничтожилась через 24ч.). Через пару дней, когда я включил ПК и открыл Signal Desktop при медленном 3G интернет соединении, то был неприятно удивлён: вся "удаленная" переписка с упомянутым другом начала подгружаться, подвисая в личке (её вообще не должно было существовать) из "ниоткуда", чтобы в конце этого "Rock N' Roll-a" через пару минут снова удалиться. Хорошо прогружался текст, картинки не успевали появляться тут же удалялись, всю эту "поэзию" можно было захватывать любым скринкастом/глазом. Я не записал этот скринкаст (для публикации) по причине того, что среди мусора появлялись некоторые приватные вещи которые, как я ошибочно полагал, Канули в Лету.

Вывод

"ИС" можно попытаться захватить и это не сложно (по какой-то причине: недоработка, уязвимость или бэкдор, ИС удаляются с диска, но фатально остаются, как минимум пару суток на серверах Signal-а, а для приватного мессенджера такое поведение – недопустимо).

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

Комментарии (6)


  1. roamaries
    14.04.2022 14:34

    В отличие от TG Signal не умеет выделять несколько сообщений за раз и удалять их в два касания.

    Только что открыл приложение Signal, выбрал несколько сообщений и удалил их в два касания. Что я делаю не так?


    1. ne555 Автор
      14.04.2022 14:35

      Синхронизированный аккаунт откройте в Signal на ПК и увидите.


      1. roamaries
        14.04.2022 14:48

        Если я открою аккаунт на ПК, то воспроизведу баг, который Вы описываете в статье. Но этот баг воспроизведётся независимо от способа удаления сообщений в мобильном приложении (по одному сообщению "пока пальцы не отвалятся" или групповому "в два клика").

        Я лишь указал, что Вы заявляете об отсутствии у мессенджера той функциональности, которая в нём объективно есть.


        1. ne555 Автор
          14.04.2022 15:06

          Вы заявляете об отсутствии у мессенджера той функциональности, которая в нём объективно есть

          В Signal Android можно удалять сообщения группой, в Signal Desktop нет. Мои аккаунты между Android и Desktop синхронизируются, поэтому я и использую исчезающие сообщения, чтобы не кликать 6 раз для удаления одного сообщения на Signal/Desktop-e (особенно проблема встает остро с "избранное/заметки для себя"). Но к багу имеет меньшее отношение.


  1. WhyndieL
    14.04.2022 15:00

    Возможно, в статье стоит сразу указать, что проблема касается desktop - версии Signal?


    1. ne555 Автор
      14.04.2022 15:08

      Возможно, но эта проблема, на мой взгляд, не с desktop - версией, а с алгоритмом уничтожения данных.