|
Раскрыты подробности и метод эксплуатации уязвимости (CVE-2026-107181) в Telegram Desktop, официальном клиенте Telegram для настольных систем. Проблема вызвана отсутствием должной обработки неэкранированных символов-разделителей в командах IPC, что позволяло при клике на отправленную ссылку организовать передачу атакующему любых файлов с системы жертвы, включая файлы с сессионными ключами, которые можно использовать для захвата учётной записи в Telegram. Уязвимость устранена в выпуске Telegram Desktop 7.2.9.
При клике на ссылках "tg://" операционная система запускает связанное с данным типом ссылок приложение Telegram Desktop. Если в системе уже запущен другой экземпляр данного приложения, то запущенный процесс передаёт ему ссылку через сокет при помощи IPC-интерфейса. Проблема в том, что если указать символ ";" среди параметров ссылки (например, "tg://x?a=1;OPEN..."), содержимое разделяется и идущие после символа ";" части обрабатываются как отдельные команды.
Для совершения атаки задействована команда OPEN вместе с URI-схемой "interpret:", предназначенной для запуска служебных сценариев через IPC, которые использовались для автоматической отправки новых релизов в каналы. Сценарий предоставляет собой предопределённый локальный файл, в котором указан отправляемый в канал файл и идентификатор канала. Файловый путь к сценариям обрабатывается относительно служебного подкаталога, но из-за отсутствия чистки "../" в файловых путях атакующий имеет возможность обратиться к файлам, сохранённым за пределами базового каталога. Например, можно загрузить файл в свою telegram-группу, после чего сослаться на это файл как на сценарий, подготовив ссылку типа:
tg://x?a=1;OPEN:interpret:../../../Downloads/Telegram%20Desktop/instructions.txt
Этапы проведения атаки:
|