File DOC Infetto. Analisi delle macro maligne

Tempo di lettura: 7 minuti

Negli ultimi tempi, il numero di mail maligne sembra esser diminuito, vuoi per una migliore gestione dello spam da parte dei servizi mail, vuoi per un utilizzo consapevole da parte degli utenti, infettarsi con mail da parte di indirizzi sconosciuti è sempre più difficile (bisogna quasi impegnarsi). Gli spammer si sono dovuti quindi adattare, cercando, tramite tecniche di ingegneria sociale, di aggirare l’utente fingendosi servizi di assistenza o colleghi.

Oggi mi è arrivata una mail particolare, senza oggetto nè testo, con all’interno un bel file .zip allegato.

Ovviamente la prima cosa che ho fatto è stata di cestinarla. Ripensandoci su, con un bel pò di curiosità, l’ho ripescata per vedere cosa conteneva quel file. Ecco cosa ne è venuto fuori.

Analisi dell’Header

Per chi non lo sapesse, l'header di una mail è l’intestazione del messaggio, contenente le informazioni relative allo stesso, come il percorso che ha effettuato fino ad arrivare al nostro indirizzo mail, il soggetto, la data e altri dettagli forniti dal vostro provider mail. Visto che il mittente era definito come hippsheritageusa@windstream.net e il dominio sembrava tutt’altro che violato, ho controllato l’header della mail per capirci qualcosa

Come si può notare, nella prima riga il nome del dominio è gia diverso, ora indicato come hippsheritageusa@skyonline.net.ar. È riuscito ad aggirare il software che gira sul server mail (SpamAssassin) che comunque ci avvisa, informandoci che l’header contiene un altro dominio rispetto a quello dichiarato.

Prima analisi dell’allegato

Una volta scaricato l’allegato, ho passato il file su una VM e l’ho caricato su VirusTotal e Malwr, per avere una prima analisi senza nessuna estrazione.

Mentre Malwr ha avuto problemi nell’analisi, già VirusTotal ha determinato il tipo di malware, ossia un Trojan inserito in un file VBA. Un file VBA è solitamento utilizzato per scrivere script o macro da utilizzare in file Office, ma sono molti utili per nascondere payload da inviare alla vittima.

Se un utente ignaro aprisse il file, si troverebbe un semplice file .doc. Aprendolo con Word infatti, sembrerebbe un documento come tanti, mentre, in modo invisibile, inizierebbe a girare il payload, installando virus e infettando il computer della vittima.

Estrazione del file e analisi approfondita

Visto che ancora non ho scoperto cosa ha all’interno, vediamo di estrarlo. Sempre all’interno di una macchina virtuale, inizio ad estrarre il file, ritrovandomi, come previsto da VirusTotal, un file .doc.

A prima vista, sembrerebbe un comunissimo documento di Word. Provo ad analizzarlo nuovamente con VirusTotal e Malwr, ma, mentre Malwr finalmente lo riconosce ed effettua qualche analisi in più (estrazione delle stringhe, segnalazione di codice maligne) per VirusTotal è ancora, ovviamente, lo stesso file.

Visto che l’intenzione iniziale era capire cosa facesse l’allegato e ancora non è troppo chiaro, analizzo il documento con OfficeMalScanner. Questo software permette di analizzare un documento e rilevare la presenza di codice maligno, shellcode o macro. Nel caso le trovi, riesce ad estrarle e permettere l’analisi delle stesse.

I comandi per analizzare il file possono essere:

  • scan: scansiona il file alla ricerca di codice maligno;
  • _info: _ritorna possibili macro all’interno del file passato a linea di comando;
  • _brute: _effettua una scansione approfondita del file.

Visto che l’opzione scan non mi ha dato risultati, provo con info

Ed ecco che finalmente abbiamo il codice delle macro, salvato comodamente in file txt che possiamo comodamente aprire senza eseguire nessun payload.

Pensando di analizzare ora il codice con tutta tranquillità, mi sono trovato la bella sorpresa! Nessuno dei due file è in chiaro, quindi si capisce poco o niente.

Come ultimo passo, provo ad analizzare le macro con olevba e oledump.

OleVba è un software che permette di estrarre ed analizzare Macro maligne e decodificare codice ofuscato, come nel nostro caso.

Sembra che il codice si autoavvii quando viene aperto il documento, e possiede diverse stringhe ofuscate, che neanche questo software è riuscito a deofuscare.

Provo ora con oledump.

Come si può notare dal primo comando, ha subito individuato le due macro, evidenziando la seconda (n° 10) che è effettivamente la più pesante. Provando (con il secondo comando) ad eseguire lo stream della macro singola, ancora una volta è ofuscata (cosa vi aspettavate?). Ho provato altri comandi con oledump, ma a quanto pare non sono riuscito a deofuscarlo. Per chi volesse provare a capire, il codice estratto dal file è qui.

Conclusioni

Sebbene il tentativo di arrivare al codice sia fallito, l’analisi statica della macro ha funzionato, essendo arrivati a capire la modalità di installazione del virus e la tipologia dello stesso. Per chi volesse altri software utili per l’analisi di documenti, consiglio questa pagina. Purtroppo non sempre si riesce a deofuscare il codice, ma tentar non nuoce!