Iscriviti al webinar gratuito del 12 Maggio per diventare Forensic Analyst! Scopri di più
Corso Ethical Hacker: accedi alla promozione fino al 30 Arile! Scopri di più
La tecnica Embedded Payloads consiste nel nascondere contenuto malevolo all'interno di file apparentemente innocui — eseguibili, script, immagini, documenti — affinché le difese non rilevino la componente offensiva durante le fasi di scansione statica. A differenza della steganografia classica, che intreccia dati nei pattern legittimi di un formato multimediale, qui il payload viene semplicemente annidato, cifrato o appeso come overlay al file ospite.
La tecnica si colloca nella tattica Defense Evasion (TA0005): l'obiettivo primario dell'attaccante non è ottenere accesso o muoversi lateralmente, ma sfuggire ai controlli. Un binario firmato digitalmente che trasporta un secondo eseguibile cifrato nella propria sezione risorse, ad esempio, può superare le verifiche di firma e i controlli di notarizzazione senza colpo ferire. Il payload incorporato può poi essere estratto a runtime, iniettato in processi legittimi o scritto su disco in una directory temporanea per l'esecuzione successiva.
I numeri danno la misura della diffusione: 3 gruppi APT, 18 software, 2 campagne documentate e 2 mitigazioni formali. Si tratta di una tecnica trasversale, adottata sia da attori nation-state sia da malware commodity come Emotet e IcedID, il che la rende una priorità di detection per qualsiasi SOC operativo.
L'obiettivo in laboratorio è dimostrare che un payload nascosto all'interno di un file legittimo attraversa i controlli senza generare alert, oppure — se le difese funzionano — capire a quale livello scatta la detection. I vettori da testare sono tre: overlay binario su PE, payload embedded in immagini e script annidati.
Overlay su eseguibile Windows. La forma più elementare di embedding è appendere dati dopo la fine logica di un PE. In un ambiente controllato, si può usare un semplice comando di concatenazione per creare un binario con overlay:
copy /b legit.exe + payload.bin combined.exe
Il file risultante mantiene la firma digitale dell'originale (se presente), ma il suo hash cambia. Per analizzare la struttura risultante, lo strumento pecheck.py della suite di Didier Stevens (open source) permette di identificare la dimensione dell'overlay e le sezioni anomale. In alternativa, pestudio (freemium) offre un'interfaccia grafica che evidenzia immediatamente sezioni con entropia elevata.
Embedding in immagini con PowerShell. Il tool Invoke-PSImage (open source) consente di codificare un payload PowerShell all'interno dei byte di un file PNG. La sintassi di base prevede la specifica dell'immagine sorgente, dello script da incorporare e del file di output. Una volta generata l'immagine, il payload si estrae con una one-liner PowerShell che legge i pixel e ricostruisce lo script in memoria, senza mai scrivere su disco. Questo scenario replica direttamente il comportamento documentato per Lazarus Group, che ha distribuito payload malevoli embedded in file PNG.
Script annidati su macOS. Per replicare la catena di macOS.OSAMiner, che annida run-only AppleScript dentro altri run-only AppleScript, si può usare l'editor di Script Editor per esportare uno script in formato run-only, poi incorporarne il percorso di estrazione in un secondo script. Il comando osacompile -o outer.scpt -x inner_loader.applescript produce uno script compilato; il flag -x genera il formato run-only che impedisce la lettura del sorgente.
Payload cifrato nelle risorse PE. Per simulare il pattern usato da malware come CHIMNEYSWEEP o DEADWOOD, è possibile creare un progetto C/C++ che includa un blob cifrato RC4 o AES nella sezione risorse (.rsrc). A compile-time il payload è un RCDATA opaco; a runtime il dropper lo estrae con le API FindResource, LoadResource, LockResource, lo decifra e lo esegue in memoria via CreateThread o process injection. Il framework Metasploit (open source) include template di dropper con embedded payload configurabili tramite msfvenom con l'opzione di encoding multiplo.
Per la validazione, sottomettere il campione generato su un'istanza locale di YARA (open source) con regole che cercano alta entropia nelle sezioni risorse e overlay, e verificare la risposta dell'EDR in ambiente lab.
Scarica la guida gratuita e segui il percorso corretto fin dal primo passo