Le campagne di spam sono uno dei maggiori mezzi di diffusione dei malware. Recentemente abbiamo iniziato a osservare varie campagne malspam che sfruttano la vulnerabilità di MS Office CVE-2017-11882.
In questo articolo illustreremo, con un’analisi approfondita, una di queste campagne
Catena di attacco
L’analisi della vulnerabilità CVE-2017-11882 di Microsoft Office Equation Editor
Una vulnerabilità di esecuzione di codice in modalità remota (CVE-2017-11882) può essere attivata nel componente Microsoft Office Equation Editor (EQNEDT32.EXE). Questo strumento, come indica il nome, consente agli utenti di integrare equazioni matematiche nei documenti Office in forma di oggetto OLE dinamico.
Un attaccante può sfruttare con successo una buffer overflow vulnerability nella componente di editor delle equazioni di MS Office e eseguire codice arbitrario. La componente EQNEDT32.EXE genera il proprio processo al di fuori del processo principale di Office, così non utilizza nessuna delle funzioni di sicurezza aggiunte al sistema operativo o alla suite di Office. Questo rende assai facile il buffer overflow (cioè la corruzione della memoria nel file EQNEDT32.EXE).
“Inserendo molti oggetti OLE che sfruttano la vulnerabilità descritta, è possibile eseguire una sequenza di comandi arbitrari (ad esempio scaricare un file da Internet ed eseguirlo). Uno dei sistemi più facili per eseguire codice arbitrario è lanciare un file eseguibile da un server WebDAV controllato dagli attaccanti” .
riferisce il team di Embedi, che individuò per primo la vulnerabilità in questione.
Per sfruttare la vulnerabilità, gli accanti utilizzano file RTF appositamente predisposti con estensioni doc. Questo file RTF contiene una classe di oggetti di equazione incorporata come mostrato in Fig 2.
Il file OLE che è incorporato all’interno del documento RTF creato, ha un nome di flusso “Equation Native” con la seguente intestazione:
Size | Description |
WORD | Size of header(EQNOLEFILEHDR) == 28 (0x1C) |
DWORD | Version |
WORD | Clipboard format |
DWORD | Size of (MTEF header + MTEF data) |
DWORD | Reserved1 |
DWORD | Reserved2 |
DWORD | Reserved3 |
DWORD | Reserved4 |
MTEF è un formato di equazione di tipo matematico utilizzato dall’editor di equazioni. L’intestazione MTEF ha la seguente struttura:
Size | Description |
BYTE | MTEF version |
BYTE | Generating platform |
BYTE | Generating product |
WORD | Product version and subversion |
I dati MTEF sono costituiti da un’intestazione MTEF seguita da più record. Questi record possono essere di diversi tipi e dimensioni. Il record FONT definito nell’oggetto dati MTEF riceve il FONT NAME creato e attiva la vulnerabilità. Di seguito è riportata la struttura dei dati MTEF (record FONT).
Size | Description |
BYTE | FONT tag |
BYTE | Typeface number |
BYTE | Typeface style |
STRING | Font name |
BYTE | Null terminated |
Se FONT NAME è maggiore di 32 byte, siamo di fronte ad un tentativo di exploit.
Analisi degli exploit
In questa campagna, il vettore di attacco iniziale utilizza email di spam con allegati RTF creati con estensione .doc. La Fig 3 mostra l’e-mail di spam utilizzata in questa campagna.
MS Word esegue l’allegato dannoso che da inizio al processo di exploit. Dopo il successo dell’exploit, Microsoft Equation Editor avvia il processo mshta.
Come funziona? Qualche dettaglio in più…
La figura seguente è uno snap che mostra lo scenario di buffer overflow in cui 48 byte di dati vengono copiati in un buffer locale. Questo provoca un overflow del buffer e sovrascrive il puntatore di base e restituisce l’indirizzo.
La figura 6 mostra l’indirizzo (0x00430C12) che viene sovrascritto nell’indirizzo di ritorno.
L’indirizzo sovrascritto proviene da EQUATION32.EXE e tale istruzione punta all’api “WinExec” come menzionato in Fig 7
Dopo il successo dell’exploit, il processo mshta viene eseguito da WinExec che scarica ed esegue il file hta dannoso. Il file hta funge inoltre da downloader per un malware infostealer. Nei Quick Heal Security Labs abbiamo visto diverse varianti di questo exploit usando mshta.exe, cmd.exe e powershell.exe che sono stati eseguiti da WinExec per svolgere ulteriori attività.
Attacchi File-less
Di seguito uno scenario in cui l’exploit contiene un codice che esegue direttamente un malware che è ospitato su un server WebDav pubblico. Il payload è un tipico percorso di rete UNC.
La Fig 8 mostra il diverso malware ospitato sul server WebDav pubblico 185.45.195.7.
Conclusione
Per difendersi da tali exploit, Microsoft ha già implementato funzionalità come DEP e ASLR nel loro arsenale ma l’attacco colpisce eqnedt32.exe, dove entrambe le funzionalità sono disabilitate. Quindi portare a termine tali attacchi usando gli exploit POC facilmente disponibili diventa utile per gli attaccanti. Da Microsoft Office 2007 Service Pack 3, tutte le versioni sono vulnerabili a questa vulnerabilità. Microsoft ha rilasciato una patch per questa vulnerabilità, pertanto consigliamo ai nostri utenti di applicare i pacchetti di aggiornamento Microsoft più recenti e di tenere aggiornato il loro antivirus.
Misure di sicurezza
- Per evitare questi attacchi, si consiglia di disabilitare Equation Editor 3.0 se non viene utilizzato. Per questo, si prega di fare riferimento al link sottostante:
https://support.microsoft.com/en-in/help/4055535/how-to-disable-equation-editor-3-0 - Abbiamo anche menzionato alcune tecniche di phishing per identificare le e-mail di phishing nel nostro precedente post sul blog: http://seqrite.it/dettaglioNews.asp?idNews=190