Iscriviti al webinar gratuito del 12 Maggio per diventare Forensic Analyst! Scopri di più
Corso Ethical Hacker: accedi alla promozione fino al 30 Aprile! Scopri di più
La tecnica T1137.006 – Add-ins sfrutta il meccanismo nativo di estensione di Microsoft Office per garantire persistenza su un sistema compromesso. Rientra nella tattica TA0003 – Persistence, la fase della kill chain in cui l'attaccante consolida il proprio accesso sopravvivendo a riavvii, logout e aggiornamenti di credenziali.
Il principio è semplice quanto efficace: Office carica automaticamente componenti aggiuntivi all'avvio di ciascuna applicazione. Depositando un file malevolo nel percorso corretto — o registrandolo via chiave di registro — l'avversario ottiene esecuzione di codice ogni volta che l'utente apre Word, Excel o Outlook, senza alcuna interazione aggiuntiva. I formati abusabili sono numerosi: librerie WLL e XLL per Word ed Excel, add-in VBA, componenti COM, add-in VSTO (Visual Studio Tools for Office) e add-in Outlook.
La superficie d'attacco è ampia perché quasi ogni installazione Office di livello enterprise include almeno un tipo di add-in legittimo, rendendo complicato distinguere il componente malevolo dal rumore di fondo. Con 1 gruppo APT, 3 famiglie malware e 1 mitigazione documentati, la tecnica è selettiva ma concreta — adottata in operazioni di spionaggio dove la furtività conta più della scala.
La simulazione di questa tecnica in laboratorio richiede di comprendere i due vettori principali: il deposito di un file add-in in una directory trusted e la registrazione via registry.
Il caso più documentato è quello usato da Naikon con il builder RoyalRoad: un file .wll viene scritto nella cartella di avvio automatico di Word. In laboratorio, prepara una DLL di test (un semplice payload che scrive un log su disco) e rinominala con estensione .wll. Il percorso target è:
copy payload.dll "%APPDATA%\Microsoft\Word\STARTUP\test.wll"
Al successivo avvio di winword.exe, Word caricherà la libreria come add-in. Per Excel il vettore analogo usa file .xll nella directory XLSTART:
copy payload.dll "%APPDATA%\Microsoft\Excel\XLSTART\test.xll"
Verifica il caricamento osservando i moduli caricati dal processo Office con Process Explorer (Sysinternals, gratuito) oppure con un semplice:
tasklist /m /fi "imagename eq WINWORD.EXE"
Per simulare un add-in COM persistente, crea una chiave sotto il ramo di registro specifico dell'applicazione Office. La chiave varia per versione, ma il pattern è:
reg add "HKCU\Software\Microsoft\Office\16.0\Word\Addins\TestAddin" /v LoadBehavior /t REG_DWORD /d 3 /f
Il valore LoadBehavior a 3 indica caricamento automatico all'avvio. In un engagement reale va abbinato a una DLL COM registrata, ma per il test basta verificare che la chiave compaia e che Word tenti il caricamento (generando un errore visibile nei log applicativi).
Il malware LunarMail e il loader LunarLoader dimostrano l'efficacia degli add-in Outlook. Per simulare questo scenario puoi usare il framework OutlookEnum di TrustedSec oppure creare un progetto VSTO minimo con Visual Studio. L'add-in compilato (.vsto) si registra nel profilo utente e viene caricato ad ogni avvio di Outlook.
Per il cleanup, rimuovi i file depositati e le chiavi di registro create:
reg delete "HKCU\Software\Microsoft\Office\16.0\Word\Addins\TestAddin" /f del "%APPDATA%\Microsoft\Word\STARTUP\test.wll"
Tool consigliati per il laboratorio: Sysmon (open source, Sysinternals), Process Monitor (gratuito, Sysinternals), Atomic Red Team (open source) — il test T1137.006 include atomics per WLL drop.
Scarica la guida gratuita e segui il percorso corretto fin dal primo passo