Esecuzione via DDE: Dynamic Data Exchange (T1559.002)

Dynamic Data Exchange è un protocollo di comunicazione inter-processo (IPC) di Windows, concepito originariamente per consentire ad applicazioni diverse di scambiarsi dati in tempo reale. Sebbene sia stato ufficialmente superato dal Component Object Model (COM), il meccanismo DDE rimane abilitabile in Windows 10/11 e in gran parte delle versioni di Microsoft Office tramite chiavi di registro. Questa sopravvivenza tecnica lo rende un vettore di esecuzione codice estremamente insidioso.

La tecnica ricade nella tattica Execution (TA0002), la fase della kill chain in cui l'avversario cerca di far eseguire codice malevolo sul sistema bersaglio. In pratica, un documento Office avvelenato con campi DDE — o un file CSV con formule DDE embedded — può lanciare comandi arbitrari senza richiedere macro VBA, aggirando così una delle difese più note e pubblicizzate. L'esecuzione può avvenire anche da remoto tramite DCOM, oppure su macchine già compromesse dove l'attaccante non dispone di accesso diretto a un interprete di comandi.

I numeri del framework confermano la rilevanza operativa: 11 gruppi APT, 8 famiglie malware, 1 campagna documentata, 4 mitigazioni e un pacchetto di detection specifico. Gruppi di primissimo livello — da APT28 a FIN7, da Cobalt Group a TA505 — hanno sfruttato DDE in campagne reali di spear phishing, dimostrando che il vettore non è un artefatto accademico ma un'arma offensiva consolidata.


La simulazione dell'abuso DDE in laboratorio è sorprendentemente semplice e non richiede strumenti sofisticati. L'obiettivo è dimostrare al cliente come un documento apparentemente innocuo possa generare esecuzione di codice senza alcuna macro, sfidando il pregiudizio diffuso secondo cui "basta disabilitare le macro per essere al sicuro".

Il metodo classico prevede la creazione di un documento Word con un campo DDE inserito manualmente. In Word, si utilizza la combinazione Ctrl+F9 per inserire un campo vuoto, poi si digita la formula DDE all'interno delle parentesi graffe. Una formula tipica da laboratorio è:

{ DDEAUTO c:\windows\system32\cmd.exe "/k calc.exe" }

Questo campo, quando il documento viene aperto e l'utente accetta i prompt di sicurezza, lancia cmd.exe che a sua volta esegue calc.exe — la proof of concept canonica. Per scenari più realistici si può sostituire calc.exe con un payload PowerShell che stabilisce una reverse shell verso il server C2 del red team.

Per automatizzare la generazione dei documenti, il framework Metasploit (open source) offre un modulo dedicato. Si configura il listener e si genera il payload con:

use exploit/windows/fileformat/office_dde_delivery

Si impostano poi LHOST, LPORT e il tipo di payload desiderato. Il documento risultante contiene il campo DDE già configurato per il callback.

Un approccio alternativo sfrutta i file CSV. Inserendo in una cella una formula come =cmd|'/C powershell -ep bypass -e <base64>'!A0, il file CSV aperto con Excel tenterà di eseguire il comando tramite DDE. Questo vettore è particolarmente efficace nei contesti in cui il target si aspetta di ricevere file dati tabulari — report finanziari, export CRM, liste ordini.

Per la catena d'attacco completa in un engagement, la sequenza operativa è:

  1. Generare il documento avvelenato (Word con DDEAUTO o CSV con formula)
  2. Configurare un listener — msfconsole con exploit/multi/handler oppure un C2 come Cobalt Strike (a pagamento) o Sliver (open source)
  3. Consegnare il documento via phishing simulato usando GoPhish (open source)
  4. Verificare il callback e documentare la catena processo padre → figlio

Lato OLE, è possibile replicare il comportamento osservato in campagne reali incorporando un oggetto OLE in un documento Word tramite Inserisci → Oggetto → Crea da file. In laboratorio conviene usare un file .hta o un eseguibile benigno per dimostrare il concetto senza rischi.

Un controllo utile post-esecuzione: verificare che Sysmon (open source) logghi correttamente la relazione padre-figlio WINWORD.EXE → cmd.exe → powershell.exe. Questo dato serve sia a validare la detection che a fornire evidenza nel report.


Vuoi diventare un Ethical Hacker ma non sai da dove iniziare?

Scarica la guida gratuita e segui il percorso corretto fin dal primo passo

We use cookies

Utilizziamo i cookie sul nostro sito Web. Alcuni di essi sono essenziali per il funzionamento del sito, mentre altri ci aiutano a migliorare questo sito e l'esperienza dell'utente (cookie di tracciamento). Puoi decidere tu stesso se consentire o meno i cookie. Ti preghiamo di notare che se li rifiuti, potresti non essere in grado di utilizzare tutte le funzionalità del sito.