Le vulnerabilità RCE (Remote Code Execution) sono falle di sicurezza che consentono a un attaccante di eseguire codice arbitrario su un sistema remoto senza autenticazione o autorizzazione. Queste problematiche sono estremamente pericolose poiché consentono agli aggressori di assumere il controllo completo del sistema vulnerabile e di eseguire qualsiasi operazione, come l'installazione di malware, il furto di dati sensibili, la manipolazione del sistema o il danneggiamento dei dati.
Nei giorni scorsi ha destato scalpore la scoperta di una presunta falla RCE all'interno di Telegram Desktop, la versione del popolare client di messaggistica istantanea utilizzabile sui sistemi Windows. I ricercatori contestavano a Telegram il fatto che l'applicazione potesse essere sfruttata per eseguire codice arbitrario utilizzando un'installazione di Python eventualmente presente sulla stessa macchina Windows.
Come si vede in questo breve video, cliccando su una miniatura di un allegato ricevuta su Telegram Desktop, l'applicazione in questo caso esegue la calcolatrice di Windows.
Telegram: non è una falla RCE ma il problema è adesso corretto
La prima reazione degli sviluppatori di Telegram è stata sferzante: l'azienda ha sostenuto che il presunto problema di sicurezza non era assolutamente riconducibile a una falla RCE. Vediamo più nel dettaglio la tesi dei tecnici della società fondata da Pavel Durov, precisando comunque che nel frattempo Telegram Desktop ha già ricevuto una correzione.
Il nocciolo del problema risiede nel fatto che Telegram mantiene una lista di estensioni potenzialmente pericolose. Quando l'utente prova ad aprire un tipo di file la cui corrispondente estensione è in elenco, Telegram Desktop mostra un avviso, segnalando la possibile pericolosità del file.
I ricercatori hanno scoperto che Telegram ha commesso un errore di battitura nel caso dei file .pyzw
, archivi compressi che contengono script Python indipendenti, pronti per essere eseguiti.
Nell'elenco stilato da Telegram, infatti, si trova l'estensione .pywz
anziché .pyzw
. Questa semplice svista ha portato a far sì che Telegram Desktop disponesse il caricamento del file Python sul sistema dell'utente, senza mostrare avvisi di sicurezza.
Come ha fatto Telegram a risolvere il problema e qual è il reale impatto
Telegram ha voluto innanzi tutto precisare che l'incidente in questione potrebbe impattare, nel caso peggiore, al massimo lo 0,01% degli utenti ovvero coloro che hanno installato Python su un sistema Windows, insieme con una versione vulnerabile del client desktop.
Premesso che sarebbe curioso capire come fa Telegram a stabilire con certezza la configurazione software delle macchine client degli utenti (quindi a disporre di statistiche accurate che indichino chi ha o non ha installato Python…), la problematica appare effettivamente di entità piuttosto contenuta rispetto a come era stata presentata inizialmente.
Per correggere il comportamento anomalo, legato alla gestione dei file .pyzw
, Telegram non solo ha aggiunto l'estensione alla lista di quelle da bloccare ma ha implementato un meccanismo lato serve che aggiunge l'estensione .untrusted
a questi elementi.
Quest'ultima correzione fa sì che all'utente sia sempre richiesto con quale applicazione aprire il file anziché demandarne la gestione al sistema operativo sottostante.