Десктопный Signal открывает возможность для шпионажа и кибератак

Изъяны, выявленные Джоном Джексоном (John Jackson) в десктопных клиентах Signal, позволяют получить незашифрованные конфиденциальные данные или подменить содержимое кеша. Эксплойт в обоих случаях требует локального доступа, поэтому вендор не считает данные проблемы уязвимостями.

Тем не менее обеим найденным ошибкам был присвоен CVE-идентификатор. Согласно блог-записи эксперта, уязвимости возникли из-за неправильной работы IM-приложения с кешем. Затронуты все версии Signal для Windows, Linux и macOS, в том числе новейшая 6.2.0.

Уязвимость CVE-2023-24069 грозит раскрытием конфиденциальной информации. Как оказалось, все отправленные в чат вложения клиент временно сохраняет в папке Signal\attachments.noindex\, притом в незашифрованном виде. После ответа на сообщение с аттачем последний автоматом удаляется из кеша, но очистка, как выяснил Джонсон, проводится недостаточно хорошо.

Исследователю удалось восстановить прокомментированную в группе картинку на своем Windows-компьютере, изменив расширение в свойствах файла и добавив .png (в macOS и Linux это работает точно так же: расширение меняется на .png). Примечательно, что при удалении аттача из чата самим автором публикации файл исправно вычищается из папки attachments.noindex.

 

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

Уязвимость CVE-2023-24068 позволяет незаметно подменить содержимое вложения в папке attachments.noindex, сохранив расширение файла, имя и размер. Причиной появления такой возможности является отсутствие проверки подлинности кешированных файлов.

В результате злоумышленник сможет внедрить во вложение вредоносный код, переслать его в другой чат, и там его загрузят, не подозревая о подвохе. Более того, можно выбрать жертву, часто использующую функцию Forward («переслать сообщение»), дождаться, когда она будет тиражировать новые аттачи в групповых чатах, и спокойно собирать данные о заражении на C2.

Подобная атака пройдет незаметно и для собеседников, доверяющих скомпрометированному источнику, и для самой жертвы. Цепная реакция, по словам Джонсона, будет неспешной, но процесс можно ускорить с помощью Python и компилятора.