
Vulnerabilità nei fogli di calcolo di LibreOffice e OpenOffice consentono l'esecuzione silenziosa di codice
Fogli di calcolo dannosi possono eseguire codice nascosto in LibreOffice e Apache OpenOffice senza alcun avviso di macro. LibreOffice è stato corretto; gli utenti di OpenOffice dovrebbero disabilitare Java fino alla versione 4.1.17.
Una vulnerabilità di sicurezza in due suite per ufficio ampiamente utilizzate consente a un foglio di calcolo dannoso di eseguire il codice di un utente malintenzionato non appena il file viene aperto, senza mostrare il tipo di avviso di macro (un prompt prima che un piccolo programma incorporato venga eseguito) che normalmente appare prima dell'esecuzione del codice. I ricercatori hanno dimostrato che LibreOffice e Apache OpenOffice possono essere entrambi colpiti quando il supporto Java, un componente opzionale utilizzato per alcune funzionalità avanzate, è abilitato. La scoperta è stata finora mostrata solo come prova di concetto e non ci sono segnalazioni che la tecnica sia stata utilizzata in attacchi reali.
LibreOffice ha già corretto la vulnerabilità, tracciata come CVE-2026-63277, negli aggiornamenti rilasciati il 5 ottobre. Il progetto raccomanda agli utenti di passare alla versione 26.2.5 o 26.8.0; le versioni precedenti restano vulnerabili. Apache OpenOffice non ha corretto la vulnerabilità corrispondente, tracciata come CVE-2026-59265. Tutte le versioni fino alla release corrente, la 4.1.16, sono vulnerabili e il progetto afferma che una correzione è prevista nella versione 4.1.17, ancora in fase di test. Fino all'arrivo di tale versione, gli utenti di OpenOffice possono bloccare l'attacco disattivando Java nelle impostazioni del programma o non aprendo fogli di calcolo di cui non si fidano.
La tecnica inizia con una normale funzionalità dei fogli di calcolo chiamata intervallo di database. In un foglio di calcolo Calc di LibreOffice o Apache OpenOffice, un intervallo di database è un blocco di celle che estrae dati da una fonte esterna e si aggiorna automaticamente. La fonte esterna può essere un file di database separato, chiamato ODB, indicato da un indirizzo web scritto nel foglio di calcolo. Quando il foglio di calcolo viene aperto, l'intervallo si aggiorna e il programma scarica l'ODB da quell'indirizzo web. Questo primo passaggio avviene senza alcun prompt o avviso per l'utente.
L'ODB scaricato può quindi indicare un driver di database Java, noto come driver JDBC, che è un componente software che consente al programma di comunicare con un database esterno. L'ODB può puntare al luogo in cui risiede il codice del driver, che può essere un file JAR (una raccolta impacchettata di codice Java) o una posizione su un server remoto. Il programma scarica quindi il JAR e avvia il driver, che è il codice dell'utente malintenzionato, all'interno del programma stesso. Ogni passaggio è una funzionalità normale della suite per ufficio. Il problema di sicurezza, affermano i ricercatori, è che insieme raggiungono l'esecuzione di codice senza mai chiedere all'utente di fidarsi del documento, come invece fa il programma prima di eseguire una macro.
Nella prova di concetto, il driver apre semplicemente l'app Calcolatrice, un innocuo sostituto, ma lo stesso percorso può eseguire qualsiasi codice Java scelto dall'utente malintenzionato. I ricercatori hanno testato l'attacco su Windows e Linux e affermano che non è legato a un singolo sistema operativo. Nella loro dimostrazione, i file dannosi si trovavano sulla stessa macchina per comodità; un attacco reale collocherebbe invece il file di database e il codice su un server controllato dall'utente malintenzionato. La vulnerabilità in LibreOffice è stata segnalata indipendentemente da Rick de Jager del team di sicurezza V12 e da Thomas Rinsma ed Edoardo Geraci di Codean Labs. Apache attribuisce a Codean Labs la vulnerabilità corrispondente in OpenOffice. Il team V12 ha pubblicato una prova di concetto per entrambi i programmi e Caolán McNamara di Collabora Productivity ha scritto la correzione per LibreOffice.
The Hacker News ha contattato The Document Foundation, che sviluppa LibreOffice, e il progetto Apache OpenOffice per un commento. Per i proprietari di siti web, le aziende e i team IT, la scoperta ricorda che gli attacchi basati su documenti possono aggirare gli avvisi che gli utenti hanno imparato ad aspettarsi. Mantenere le suite per ufficio aggiornate e disabilitare componenti opzionali come Java quando non sono necessari sono modi semplici per ridurre il rischio. Finché gli utenti non adottano queste misure, semplicemente aprire un foglio di calcolo non attendibile può essere sufficiente per consegnare il controllo del computer a un utente malintenzionato. Per i team che gestiscono molte macchine, AEU-I offre IT, infrastrutture e consulenza orientati alla sicurezza che possono supportare la distribuzione di patch e le revisioni di configurazione in tutta l'organizzazione.
Come Proteggerti
- Se usi LibreOffice, aggiornalo ora alla versione 26.2.5 o 26.8.0 o successiva dal sito ufficiale.
- Se usi Apache OpenOffice, apri le impostazioni del programma e disattiva il supporto Java fino al rilascio della versione 4.1.17.
- Non aprire file di fogli di calcolo da email, messaggi o siti web a meno che non ti fidi del mittente e ti aspetti il file.
- Se ricevi un allegato di foglio di calcolo inaspettato, contatta il mittente tramite un canale diverso prima di aprirlo.
- Attiva gli aggiornamenti automatici per il software per ufficio e il sistema operativo in modo che le correzioni di sicurezza future vengano installate rapidamente.
Vulnerabilità e Soluzioni
- CVE-2026-59265 Apache OpenOffice flaw affecting versions up to 4.1.16; fix expected in version 4.1.17, currently being tested. Vedi la soluzione e i dettagli →
- CVE-2026-63277 LibreOffice flaw fixed in updates released on October 5; users should move to version 26.2.5 or 26.8.0. Vedi la soluzione e i dettagli →
I Termini Spiegati
- Java support Una parte opzionale della suite per ufficio che le consente di utilizzare funzionalità extra, incluse le connessioni a database; l'attacco funziona solo quando questa è attivata.
- JDBC driver Un componente software che consente a un programma di comunicare con un database esterno; un driver di database Java.
- JAR file Un singolo file che raggruppa molti pezzi di codice Java insieme.
- ODB file Un file di database separato che un foglio di calcolo può scaricare e utilizzare come fonte di dati esterna.
- database range Un blocco di celle con nome in un foglio di calcolo che può estrarre e aggiornare dati da una fonte esterna.
- macro Un piccolo programma incorporato in un documento che normalmente chiede il permesso prima di essere eseguito.
- Calc L'applicazione di foglio di calcolo inclusa in LibreOffice e Apache OpenOffice.