Vulnerabilità in OpenOffice che consente l'esecuzione di codice all'apertura di un file

È stata scoperta una vulnerabilità nel pacchetto per ufficio Apache OpenOffice (CVE-2021-33035), che consente l'esecuzione di codice aprendo un file appositamente formattato in formato DBF. Il ricercatore che ha segnalato il problema ha avvertito della creazione di un exploit funzionante per la piattaforma Windows. Al momento, la correzione della vulnerabilità è disponibile solo sotto forma di patch nel repository del progetto, che è stata inclusa nelle versioni di prova di OpenOffice 4.1.11. Gli aggiornamenti per il ramo stabile non sono ancora stati formati.

Il problema è causato dal fatto che, durante l'assegnazione della memoria, OpenOffice si affidava ai valori fieldLength e fieldType nell'intestazione dei file DBF, senza verificare la corrispondenza con il tipo di dati effettivo nei campi. Per portare a termine l'attacco, è possibile specificare nel valore fieldType il tipo INTEGER, ma inserire dati di dimensioni maggiori e indicare un valore fieldLength non corrispondente alla dimensione dei dati di tipo INTEGER, il che porta a scrivere la coda dei dati del campo oltre il buffer allocato. A seguito di un buffer overflow controllato, il ricercatore è riuscito a sovrascrivere il puntatore di ritorno dalla funzione e, utilizzando tecniche di programmazione orientate al ritorno (ROP - Return-Oriented Programming), ha ottenuto l'esecuzione del proprio codice.

Utilizzando la tecnica ROP, l'attaccante non cerca di collocare il proprio codice in memoria, ma opera su porzioni di istruzioni macchina già esistenti nelle librerie caricate, che si concludono con un'istruzione di ritorno (di solito si tratta delle conclusioni delle funzioni di libreria). Il funzionamento dell'exploit si riduce a costruire una catena di chiamate a questi blocchi ('gadgets') per ottenere la funzionalità desiderata. Nel suo exploit per OpenOffice, sono stati utilizzati come gadgets i codici provenienti dalla libreria libxml2 utilizzata in OpenOffice, che, a differenza dello stesso OpenOffice, è stato compilato senza i meccanismi di protezione DEP (Data Execution Prevention) e ASLR (Address Space Layout Randomization).

Gli sviluppatori di OpenOffice sono stati avvisati del problema il 4 maggio, dopodiché il 30 agosto è stata fissata una divulgazione pubblica dei dettagli sulla vulnerabilità. Poiché alla scadenza prevista non era stata rilasciata una versione stabile, il ricercatore ha spostato la divulgazione dei dettagli al 18 settembre, ma gli sviluppatori di OpenOffice non sono riusciti a rilasciare la versione 4.1.11 entro quella data. È significativo che durante la stessa ricerca sia stata identificata una vulnerabilità simile nel codice di supporto del formato DBF in Microsoft Office Access (CVE-2021-38646), i dettagli della quale saranno rivelati in seguito. Non sono stati trovati problemi in LibreOffice.

Fonte: opennet.ru

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