Настольная версия приложения Signal для Mac (и не только) хранит ключи шифрования на ПК в виде обычного текста

Настольная версия приложения Signal для Mac (и не только) хранит ключи шифрования на ПК в виде обычного текста

Эксперты по ИБ из компании Mysk обнаружили, что настольная версия приложение для обмена зашифрованными сообщениями Signal для Mac хранит ключи шифрования на ПК в виде обычного текста (plaintext), что потенциально подвергает пользователей риску кражи данных в случае компрометации системы.

Исследователи выяснили, что настольное приложение Signal хранит ключи шифрования локальной истории чата в текстовом файле, доступном любому процессу в системе. «Сквозное шифрование бесполезно, если какой-либо из ПК пользователей будет скомпрометирован», — отметили эксперты.

По мнению Mysk, пользователи Signal на Mac могут испытывать ложное чувство безопасности.

Эксперты создали простой скрипт на Python, который копировал каталог локального хранилища Signal на Mac, а затем переносил эти данные в новую установку macOS на виртуальной машине. Поместив скопированные данные в соответствующий каталог и установив Signal на виртуальную машину, они успешно восстановили весь сеанс Signal, включая историю чатов. Затем исследователи смогли запустить три активных сеанса Signal одновременно — на исходном Mac, iPhone и виртуальной машине — без какого-либо предупреждения от Signal о клонированном сеансе.

Оказалось, что сообщения доставлялись либо на Mac, либо на виртуальную машину, причём все сообщения получал iPhone. Важно отметить, что iPhone по-прежнему показывал только одно связанное устройство, не обнаруживая несанкционированного клонированного сеанса на виртуальной машине.

Настольная версия приложения Signal для Mac (и не только) хранит ключи шифрования на ПК в виде обычного текста

Возможность передавать историю чатов подобным образом доступна не только в macOS. Пользователь соцсети под ником ILL Eagle пояснил, что ключам шифрования в файле конфигурации Signal в Linux установлены разрешения, которые делают их доступными для чтения любым процессом, запускаемым локальным пользователем.

Настольная версия приложения Signal для Mac (и не только) хранит ключи шифрования на ПК в виде обычного текста

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

Технический журналист Наоми Брокуэлл порекомендовала пользователям отключить любое настольное устройство от учётных записей Signal. Брокуэлл объяснила: «Давно известная проблема заключается в том, что Signal хранит ваш ключ дешифрования на рабочем столе в простом текстовом файле, а НЕ в вашей связке ключей, что делает его доступным для любого приложения». «Если вы доверяете своему компьютеру, всё в порядке», — добавляет Брокуэлл, предполагая, что пользователи, которые осторожно относятся к безопасности своей системы, возможно, захотят пересмотреть использование настольной версии Signal.

Настольная версия приложения Signal для Mac (и не только) хранит ключи шифрования на ПК в виде обычного текста

Примечательно, что анализ Mysk согласуется с отчётом экспертов из Bleeping Computer за 2018 год, в котором также подчёркивалась плохая защита и обработка ключей шифрования в настольном приложении Signal.

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

Настольная версия приложения Signal для Mac (и не только) хранит ключи шифрования на ПК в виде обычного текста

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

Эксперты уточнили, что в системе Windows Signal продолжает хранить ключ в файле config.json в каталоге AppData.

1 апреля 2024 года на GitHub проекта мессенджера разработчиками и экспертами по ИБ был сделан pull request, который мог бы облегчить эту проблему за счёт реализации API SafeStorage от Electron — никаких последующих действий по этому предложению от команды проекта не последовало. Также в Signal не прокомментировали эту проблему на запросы СМИ и профильных ресурсов.

Ранее пользователь Педро Хосе Перейра Виейто продемонстрировал уязвимость, которая скрывалась в приложении ChatGPT для Mac. Оно хранило все беседы с чат-ботом в виде обычного текста, что потенциально открывало для злоумышленников и вредоносов доступ к ним. В OpenAI выпустили обновление, которое, по заверению компании, шифрует чаты. «Мы стремимся предоставлять полезный пользовательский опыт, сохраняя при этом высокие стандарты безопасности по мере развития технологий», — заявила СМИ представитель OpenAI Тая Кристиансон. Известно, что уязвимость работала минимум до 28 июня.

Источник: habr.com