ИБ-исследователь под ником BeakSec обнаружил в десктопном клиенте Telegram уязвимость CVE-2026-107181, которая позволяла похищать локальные файлы и «угонять» аккаунты пользователей. Причем для реализации атаки было достаточно простого перехода по вредоносной ссылке. Проблема затрагивали версии клиента вплоть до 7.2.9 и в настоящее время уже устранена.
В своем техническом разборе исследователь рассказывает, что проблема была связана с некорректной обработкой ссылок формата tg://. Как оказалось, Telegram Desktop использует точку с запятой для разделения внутренних команд, однако не экранирует символ «;» при обработке ссылок. В результате атакующие могли внедрять в ссылки дополнительные инструкции, которые мессенджер воспринимал как легитимные.
Особую опасность представлял внутренний обработчик interpret:, доступ к которому атакующие могли получить через внедренную команду OPEN:. Interpret: предназначался для внутренних нужд разработчиков Telegram (в частности, команда использовалась при публикации новых релизов). Проблема заключалась в том, что обработчик мог выполнять привилегированные операции (включая чтение произвольных файлов с диска и их отправку в чат), однако при этом не проверял, кто инициировал выполнение команды. В результате злоумышленники могли использовать этот механизм для кражи файлов с устройства жертвы без дополнительного подтверждения со стороны пользователя.
В своем отчете BeakSec продемонстрировал атаку на примере Windows-клиента. Так, сначала злоумышленник создает в мессенджере группу и добавляет туда жертву, что допускают настройки конфиденциальности Telegram по умолчанию. Затем он публикует три текстовых файла с инструкциями, которые мессенджер автоматически загружает на компьютер пользователя. В каждом из них указан путь к файлу, который необходимо похитить, а также группа в Telegram, куда следует отправить данные. Исследователь подчеркивает, что Telegram Desktop по умолчанию автоматически загружает файлы размером до 8 Мбайт из групповых чатов.
После этого атакующий публикует в группе HTTPS-ссылку, которая перенаправляет жертву на вредоносный URL формата tg://. При переходе по такой ссылке запускается второй процесс Telegram, передающий внедренные команды уже работающему экземпляру приложения. Эти команды вызывают обработчик interpret:, который считывает ранее загруженные на машину жертвы инструкции (из текстовых файлов) и отправляет указанные там файлы в подконтрольную злоумышленнику группу.
В ходе своей демонстрации исследователь успешно похитил три файла из директории tdata:
- key_datas — содержит соль и зашифрованный ключ (DEK), используемый для шифрования локальных данных Telegram;
- D877F783D5D3EF8Cs — содержит зашифрованные данные MTProto-авторизации, необходимые для доступа к аккаунту;
- D877F783D5D3EF8C/maps — индекс локального хранилища аккаунта, который Telegram использует при загрузке данных авторизации.
Исследователь поясняет, что последний файл сам по себе не содержит секретов и его можно создать самостоятельно, однако в рамках демонстрации BeakSec похитил все три файла, после чего перенес их в директорию tdata другого экземпляра Telegram и восстановил сессию жертвы.
Следует отметить, что уязвимость позволяла аналогичным образом похитить и другие файлы, включая личные документы и конфиденциальную информацию, в зависимости от того, к каким данным на устройстве Telegram имел доступ.
Разработчики мессенджера исправили проблему с релизом Telegram Desktop 7.2.9, выпущенным 17 сентября 2026 года. Теперь обработка разделителей команд работает корректно, а механизм interpret: удалили полностью.
Пользователям рекомендуется обновить мессенджер до последней версии, ограничить возможность добавления в группы в настройках и отключить автоматическое скачивание файлов. Также стоит установить локальный код-пароль, так как это затруднит «угон» аккаунта, хотя и не защитит от кражи файлов.

