Таких багов на самом деле два. Один получил идентификатор CVE-2023-24068, второй – CVE-2023-24069. Они могут позволить злоумышленнику получить конфиденциальные вложения, отправленные в сообщениях, а также подменить их.
Интересно Самая желанная функция: Илон Маск анонсировал новый тип подписки в Twitter
Что известно
Signal Desktop сохраняет вложения в каталоге ~\attachments.noindex в незашифрованном виде. Они автоматически удаляются из этого каталога, если пользователь удаляет их из чата. Однако, если на сообщение с вложением был отправлен ответ собеседника (с цитированием), то вложение продолжает храниться в локальной папке в открытом виде даже после удаления в интерфейсе мессенджера.
Злоумышленнику, который может получить доступ к этим файлам, даже не нужно будет расшифровывать их, и нет регулярного процесса очистки кэша, поэтому неудалённые файлы просто находятся в незашифрованном виде в этой папке,
– отметил исследователь Джон Джексон.
Что еще хуже, злоумышленник может подменить хранящийся в кэше файл. Он не заменится автоматически у собеседников, поскольку у каждого клиента Signal Desktop есть свой локальный кэш. Однако, если объект потенциального взлома после подмены перешлет существующую ветку в другие чаты, то в ней окажутся именно подмененные файлы, а не исходные. Исходя из этого, исследователи делают вывод, что Signal Desktop не проверяет изменения в кэшированных ранее файлах.
Можно ли назвать этот баг очень серьезным? Скорее нет, чем да. Для его эксплуатации требуется совпадение нескольких факторов и множество дополнительных действий. Цель атаки должна использовать Signal Desktop, а не только приложение для смартфона. Хакеру нужно взломать компьютер жертвы, чтобы получить возможность просматривать файлы на компьютере. А для этого нужно использовать другие методы, которые могут не сработать. Однако это, конечно, не исключает случайного совпадения.
Разработчики Signal пока не комментируют ситуацию, но вероятнее всего они займутся исправлением бага уже в ближайшее время.