Signal усиливает защиту после публичной критики
12/07/24
Signal усиливает безопасность настольной версии мессенджера, изменяя способ хранения ключей шифрования. Такой важный шаг предпринят после длительных обсуждений и критики, продолжающихся с 2018 года, пишет Securitylab.
Проблема 2018 года
В 2018 году выяснилось, что при установке Signal Desktop для Windows или Mac создается зашифрованная база данных SQLite для хранения сообщений пользователей. База данных шифруется сгенерированным ключом без участия пользователя. Для расшифровки программа должна иметь доступ к ключу шифрования. В случае Signal ключ хранится в виде обычного текста в локальном файле «%AppData%\Signal\config.json» в Windows и «~/Library/Application Support/Signal/config.json» на Mac.
Однако, если Signal может получить доступ к этому ключу, то любой другой пользователь или программа на компьютере также могут это сделать, что делает зашифрованную базу данных практически бесполезной с точки зрения безопасности. Исследователь Натаниэль Суши тогда предложил решение: зашифровать локальную базу данных паролем, введенным пользователем, который нигде не хранится. Такой подход используется в облачных сервисах резервного копирования, браузерах, менеджерах паролей и криптокошельках.
В 2018 году журналисты пытались связаться с Signal по поводу уязвимости, но ответа не получили. Вместо этого агент поддержки Signal на форуме заявил, что безопасность базы данных не является приоритетом компании.
Драма в X
Спустя почти 6 лет после первого сообщения о проблемах безопасности, в мае 2024 года, Илон Маск поднял шум в X*. Маск опубликовал твит об обнаруженных уязвимостях Signal, «которые не устраняются», что являлось ответом на статью City Journal о связях руководства Signal с американским правительством. В статье поднимались вопросы о начальном финансировании Signal и его возможной связи с американскими спецслужбами.
Хотя Маск не уточнил, о каких уязвимостях идет речь, твит вызвал волну обсуждений. Некоторые считали, что Маск пытается поддержать Telegram в их заявлениях о большей безопасности по сравнению с Signal.
Основатель Telegram Павел Дуров также не упустил возможности раскритиковать конкурента, заявив, что лидеры Signal используются американским госдепартаментом для смены режимов за рубежом и что крупные технологические компании США не могут создать свои протоколы шифрования без вмешательства правительства.
В ответ Мередит Уиттакер подчеркнула, что Signal придерживается принципов ответственного раскрытия информации, однако на данный момент нет доказательств существующих уязвимостей, и о их наличии не сообщалось. Кроме того, Уиттакер отметила, что Signal построен таким образом, что вмешаться в его работу без последствий невозможно.
Повышение безопасности
На прошлой неделе исследователи безопасности из компании Mysk предостерегли от использования Signal Desktop из-за такой же проблемы безопасности, о которой сообщалось еще в 2018 году. Исследователи проиллюстрировали, как фотографии и приложения, отправленные через мессенджер, не хранятся в безопасном или зашифрованном месте, а ключ шифрования для хранения сообщений по-прежнему хранится в виде обычного текста локально на системе.
Президент Signal Мередит Уиттакер попыталась сгладить ситуацию, заявив, что, если злоумышленник уже имеет полный доступ к устройству пользователя, Signal не может полностью защитить данные.
Тем временем независимый разработчик Том Плэнт предложил использовать API SafeStorage от Electron для повышения безопасности хранилища данных Signal от офлайн-атак. API SafeStorage Electron предоставляет методы для более безопасного хранения ключа шифрования для данных, хранимых локально на устройстве. Например, на Mac ключ шифрования будет храниться в Связке ключей, а на Linux будет использоваться секретное хранилище менеджера окон, такое как kwallet и gnome-libsecret.
Однако для Windows API SafeStorage использует функцию DPAPI , которая защищает ключ шифрования только от других пользователей на том же устройстве. То есть любая программа или вредоносное ПО, работающие под той же учетной записью, теоретически могут получить доступ к данным.
На прошлой неделе представитель Signal сообщил, что компания внедрила поддержку SafeStorage Electron, которая будет доступна в предстоящей бета-версии. Signal также внедрила механизм отката, позволяющий программе расшифровывать базу данных с использованием старого ключа шифрования, что поможет минимизировать потерю данных в случае обнаружения ошибок, связанных с хранилищем ключей, в процессе миграции и развертывания.
Устаревший ключ будет удален после тестирования новой функции. Хотя приятно видеть, что дополнительные меры защиты внедряются, многие разочарованы, что это произошло только после шумихи в социальных сетях.