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.
La nota inviataci da Telegram
In una breve nota inviata in redazione da Telegram, l’azienda conferma quanto segue. “Tutte le versioni di Telegram sono sicure. Le voci sull’esistenza di vulnerabilità zero-click in Telegram Desktop sono inesatte. Alcuni “esperti” hanno raccomandato di “disabilitare i download automatici” su Telegram: in realtà non c’erano problemi che potessero essere innescati dai download automatici“.
La presa di posizione così prosegue: “Tuttavia, su Telegram Desktop si è verificato un problema che richiedeva all’utente di fare clic su un file dannoso mentre aveva installato l’interprete Python sul proprio computer. Contrariamente a quanto riportato (da alcune testate online, n.d.r.), non si trattava di una vulnerabilità zero-click e poteva colpire solo una piccola parte della nostra base di utenti: meno dello 0,01% dei nostri utenti ha installato Python (…). È stata applicata una correzione lato server per garantire che anche questo problema non si riproduca più, quindi tutte le versioni di Telegram Desktop (comprese quelle più vecchie) non presentano più questo problema“.