Se han revelado los detalles y el método de explotación de la vulnerabilidad (CVE-2026-107181) en Telegram Desktop, el cliente oficial de Telegram para sistemas de escritorio. El problema es causado por la falta de un manejo adecuado de los caracteres delimitadores no escapados en los comandos IPC, lo que permitía, al hacer clic en un enlace enviado, transferir al atacante cualquier archivo del sistema de la víctima, incluidos los archivos con claves de sesión que pueden usarse para tomar posesión de la cuenta de Telegram. La vulnerabilidad ha sido corregida en la versión Telegram Desktop 7.2.9.
Al hacer clic en enlaces ‘tg://’, el sistema operativo inicia la aplicación Telegram Desktop asociada con este tipo de enlaces. Si ya hay otra instancia de esta aplicación en ejecución, el proceso en ejecución le pasa el enlace a través de un socket utilizando la interfaz IPC. El problema es que, si se incluye el símbolo ‘;’ entre los parámetros del enlace (por ejemplo, ‘tg://x?a=1;OPEN…’), el contenido se divide y las partes que siguen al símbolo ‘;’ se procesan como comandos separados.
Para llevar a cabo el ataque, se utiliza el comando OPEN junto con el esquema URI ‘interpret:’, destinado a ejecutar scripts administrativos a través de IPC, que se utilizaban para enviar automáticamente nuevos lanzamientos a los canales. El script consiste en un archivo local predefinido que especifica el archivo enviado al canal y el identificador del canal. La ruta del archivo a los scripts se procesa en relación con un subdirectorio administrativo, pero debido a la falta de limpieza de ‘../’ en las rutas de archivos, el atacante tiene la posibilidad de acceder a archivos almacenados fuera del directorio base. Por ejemplo, se puede subir un archivo a su grupo de Telegram y luego referirse a este archivo como un script, preparando un enlace como:
tg://x?a=1;OPEN:interpret:../../../Downloads/Telegram%20Desktop/instructions.txt
Fases de realización del ataque:
- El atacante añade a la víctima a su grupo (con la configuración por defecto, añadir no requiere confirmación de la persona añadida) y envía a este grupo un archivo de texto que especifica el canal y la ruta al script. Telegram guardará este archivo en un subdirectorio del sistema predefinido cuando la víctima entre al grupo.
canal: 2005234537
archivo: tdata/D877F783D5D3EF8Cs - El atacante envía a la víctima un enlace que parece inofensivo a su host (por ejemplo, ‘https://coolsite.org’), que al abrirse se redirige a servidor el atacante, reemplazándose por un URI del tipo ‘tg://x?a=1;OPEN:interpret:…;OPEN:interpret:….’
- Al hacer clic en el enlace, el navegador invoca el manejador URI "tg://", que inicia la cadena de comandos mencionada anteriormente, lo que lleva al envío de archivos al canal del atacante sin mostrar ninguna notificación ni solicitar confirmación para el envío.
- Al recibir archivos del subdirectorio tdata con claves de cifrado y autorización, en ausencia de una contraseña local configurada por el usuario, el atacante puede clonar la sesión de conexión de la víctima en su dispositivo.
Fuente: opennet.ru
