Sono quattro le vulnerabilità di sicurezza nei prodotti della suite Microsoft Office scoperte lo scorso febbraio e ora divulgate in occasione del rilascio dei rispettivi aggiornamenti: se sfruttate positivamente, potrebbero consentire agli attaccanti di armare documenti Word ed Excel per eseguire codice malevolo e attaccare i sistemi non aggiornati.
In particolare, le quattro vulnerabilità identificate come CVE-2021-31174, CVE-2021-31178, CVE-2021-31179 e CVE-2021-31939 permettono l’esecuzione di codice dannoso tramite documenti della suite Microsoft Office, come Word, Excel e Outlook perché sono il risultato di errori di parsing nel codice legacy trovato nei formati di file Excel 95.
Questo particolare elemento ha suggerito ai ricercatori che le falle di sicurezza possano esistere da diversi anni, ma non è stato chiarito se siano stati trovati indizi di un loro attivo sfruttamento.
In ogni caso, l’invito per tutti gli utenti è di provvedere rapidamente a installare gli aggiornamenti di sicurezza di Microsoft Office per scongiurare il rischio di compromissione del proprio sistema.
È bene ricordare che le prime tre vulnerabilità, CVE-2021-31174, CVE-2021-31178 e CVE-2021-31179, sono state corrette con gli aggiornamenti del mese maggio 2021, mentre l’ultima, la CVE-2021-31939, è stata corretta con il Patch Tuesday del mese di giugno 2021.
Indice degli argomenti
Vulnerabilità in Microsoft Office scoperte con la tecnica del fuzzing
Le vulnerabilità nella suite Microsoft Office sono state scoperte dai ricercatori Check Point Technologies mediante tecniche di fuzzing usate per testare il componente MSGraph COM (MSGraph.Chart.8, GRAPH.EXE) che era incluso nella suite da Office 2003 o precedente.
Il fuzzing, lo ricordiamo, è una tecnica di test automatico che cerca di trovare bug di software sfruttabili da un attaccante potenzialmente malintenzionato e capace di alimentare casualmente input di dati non validi e inaspettati in un programma per computer, al fine di trovare errori di codifica e falle di sicurezza.
È proprio usando questa tecnica che i ricercatori di Check Point hanno scoperto funzioni vulnerabili all’interno di MSGraph, un componente incorporabile nei prodotti Microsoft Office per visualizzare grafici e tabelle.
Dopo alcuni tentativi definiti dai ricercatori come “processi di fuzzing lenti e goffi” sembrava che MSGraph non fosse un obiettivo così semplice da sfruttare per un attacco di fuzzing, in parte a causa dell’esecuzione di un numero molto elevato di componenti e DLL esterne, che rendono più difficile il processo di reverse engineering, ma anche perché MSGraph viene ancora aggiornato puntualmente con le patch di mitigazione.
L’utilizzo di un piccolo stratagemma, consistente in un input mutato verso una delle funzioni del codice binario, ha permesso di ottenere un crash software durante l’ottavo tentativo di mandare il codice in errore.
Identificando da quel momento il codice “affetto dalla debolezza”, è stato identificato anche il codice responsabile del processo di analisi. Questo errore ha fatto capire ai ricercatori il perché Microsoft abbia “isolato” questo componente all’interno di un oggetto COM (Windows COM model).
Nel caso in cui questo componente si fosse bloccato, l’intero documento di Word sarebbe rimasto intatto.
Continuando nel processo di fuzzing (il procedimento dettagliato è disponibile nel blog CPT) sono emerse le quattro vulnerabilità: CVE-2021-31179 legata alla Memory Corruption, la CVE-2021-31174 che presenta un difetto Out-Of-Bounds Read (OOBR) ovvero un difetto di divulgazione delle informazioni di Excel, la CVE-2021-31178 che rappresenta un Integer underflow alla OOBR e la CVE-2021-31939 che è un tipo di vulnerabilità User-After-Free (UAF) che rappresenta la vulnerabilità in Microsoft Excel che potrebbe portare a Remote Code Execution (RCE) se un utente malintenzionato riuscisse a convincere un bersaglio ad aprire un file “malevolmente” predisposto.
Date le evidenze, i tipi di vulnerabilità e il fatto che il componente MSGraph è incorporato in un oggetto “COM”, dunque, risultano potenzialmente afflitti dalle falle tutti i prodotti della suite Microsoft Office, Office Online Server, esplicitamente Excel ed Excel per mac OSX.
Il Professor Aaron Visaggio Professore associato presso l’Università del Sannio e responsabile dell’ISWAT LAB evidenzia che “due delle quattro vulnerabilità in questione risultano teoricamente più pericolose in quanto consentono l’esecuzione di codice. Sono, inoltre, vulnerabilità molto difficili da sfruttare e quindi il rischio è davvero basso. Tuttavia esistono”.
“La questione, invece, sulla quale porre attenzione”, continua il Professor Visaggio, “è un’altra: l’attenzione verso la security anche in software non critici, come possono essere i software di office automation è molto recente. Sono pochi anni che si è affermato il principio della built-in security e la cultura del test per la sicurezza, così come il processo di sviluppo di codice sicuro. E comunque è questa una cultura di processo non ancora diffusa nelle software house, ma patrimonio solo di quelle che fanno software critici o estremamente diffusi”.
“È chiaro”, continua l’analista, “che il software legacy rimane un problema aperto, dove per legacy si intende anche software scritto cinque o sei anni fa, epoca in cui la security non era considerata un valore. Il software legacy offre praterie di opportunità agli attaccanti, considerato anche che non esistono processi “deterministici” per rintracciare le vulnerabilità. Inoltre, il software legacy è spesso complesso da testare perché integrato nei sistemi in modo non sempre “comodo” per eseguire i test”.
“Quello che serve”, conclude Visaggio, “è sviluppare una cultura diffusa di built-in security e, soprattutto, strumenti di test molto più raffinati degli attuali, il cui risultato non è sempre garantito”.
I vettori di attacco
Le vulnerabilità relative a MSGraph possono essere ereditate dai documenti Office che incorporano questo componente (foto sotto); quindi, ci sono molteplici vettori di attacco che possono essere immaginati.
Il più comune potrebbe verificarsi con una sequenza di azioni simili a quelle che seguono e scaturite da un attacco di tipo phishing o spear-phishing:
- la vittima scarica un file Excel dannoso (formato XLS). Il documento può essere scaricabile o essere contenuto all’interno di una e-mail, ma l’hacker non può forzare la vittima a scaricarlo con mezzi di social engineering;
- l’utente apre il file Excel dannoso;
- la vulnerabilità viene attivata.
Dal momento che l’intera suite Office ha la capacità di incorporare oggetti Excel, questo amplia il vettore di attacco, rendendo possibile l’esecuzione dell’azione malevola su quasi tutti i software Office, tra cui Word, Outlook e altri tool.
Yaniv Balmas, Head of Cyber Research di Check Point Software precisa come le vulnerabilità affliggano quasi tutto l’ecosistema Microsoft Office per la possibilità di eseguire un attacco del genere su Word, Outlook gli altri software della suite.
L’analista aggiunge un’osservazione: “abbiamo capito che le vulnerabilità sono dovute a errori di parsing fatti nel codice legacy e questo ci insegna che il codice legacy continua a essere un anello debole nella security chain, specialmente in software complessi come Microsoft Office. Anche se abbiamo trovato solo quattro vulnerabilità sulla superficie di attacco, non si può mai dire quante altre falle come queste siano ancora in giro. Invito caldamente gli utenti di Windows ad aggiornare immediatamente il loro software, poiché ci sono diversi vettori di attacco possibili per sfruttare le vulnerabilità scovate”.