Remcos RAT Consegnato Attraverso un Finto Ordine di Acquisto
Detection stack
- AIDR
- Alert
- ETL
- Query
Riepilogo
Un’email di phishing a tema ordine d’acquisto distribuisce un archivio con una doppia estensione che estrae un caricatore VBS dannoso. Quel caricatore avvia un processo PowerShell nascosto, che recupera un file PNG falso che contiene un payload codificato. Il payload viene quindi deoffuscato, ricostruito come un eseguibile portatile .NET e caricato direttamente in memoria, alla fine distribuendo il trojan di accesso remoto Remcos. La campagna mette in evidenza una catena di esecuzione senza file basata su tecniche di attacco familiari tramite email.
Indagine
L’analisi ha seguito l’intera sequenza di infezione, dall’email di phishing originale alla distribuzione finale del RAT Remcos. Gli investigatori hanno identificato artefatti chiave inclusi il nome del script VBS, l’uso delle variabili d’ambiente PowerShell e l’URL usato per scaricare il file PNG falso. L’assembly .NET ricostruito è stato caricato in memoria, mentre le voci di registro specifiche di Remcos e gli artefatti di mutex hanno aiutato a confermare il payload finale. I ricercatori hanno anche catturato indicatori di rete rilevanti, incluso il dominio di comando-e-controllo legato alla campagna.
Mitigazione
Le organizzazioni dovrebbero rafforzare la scansione degli allegati e bloccare i file di archivio che usano doppie estensioni fuorvianti. Le politiche di esecuzione di PowerShell dovrebbero essere applicate, e l’uso di wscript.exe dovrebbe essere rigorosamente limitato dove possibile. I difensori dovrebbero anche monitorare le chiavi di registro sospette sotto HKCUSOFTWARE e tracciare le impronte digitali TLS JA3 associate all’attività di Remcos. I gateway di sicurezza email dovrebbero essere aggiornati regolarmente per migliorare il rilevamento degli esche di phishing che mirano ai flussi di lavoro di approvvigionamento e finanza.
Risposta
Se questa attività viene rilevata, isolare immediatamente l’endpoint interessato e terminare i processi PowerShell or wscript.exe sospetti. Raccogliere i dump di memoria e gli artefatti di registro pertinenti per analisi forense prima della pulizia. Rimuovere il payload di Remcos e le voci di persistenza correlate, quindi reimpostare eventuali credenziali che potrebbero essere state esposte. Dovrebbe anche essere condotta una ricerca di minacce più ampia nell’ambiente per identificare sistemi che mostrano indicatori simili.
"graph TB %% Class definitions classDef action fill:#99ccff classDef technique fill:#ffcc99 classDef file fill:#e6e6e6 classDef process fill:#ffeb99 classDef malware fill:#ff9999 classDef tool fill:#cccccc classDef config fill:#dddddd %% Node definitions action_phishing["<b>Azione</b> – <b>T1566.001 Spearphishing Attachment</b><br/>La vittima riceve un’email con un archivio dannoso di nome <i>Sarens PO_SB-0407026-001_PDF.txz</i>"] class action_phishing action technique_masquerade["<b>Tecnica</b> – <b>T1036.007 Masquerading: Double File Extension</b><br/>L’archivio usa l’estensione .txz ma sembra essere un .pdf per ingannare l’utente"] class technique_masquerade technique action_user_exec["<b>Azione</b> – <b>T1204.002 User Execution</b><br/>La vittima apre l’archivio, causando l’estrazione di uno script VBS"] class action_user_exec action file_vbs["<b>File</b> – <b>Script VBS</b><br/>Nome: Sarens PO_SB-0407026-001_PDF.vbs"] class file_vbs file process_wscript["<b>Processo</b> – <b>wscript.exe</b><br/>Esegue lo script VBS"] class process_wscript process process_powershell["<b>Processo</b> – <b>PowerShell</b><br/>Avvia con un bypass delle politiche di esecuzione per scaricare un payload remoto"] class process_powershell process file_payload_image["<b>File</b> – <b>Immagine Falsa</b><br/>Nome: optimized_MSI.png<br/>Contiene un payload PE .NET codificato in Base64"] class file_payload_image file technique_proc_inject_tls["<b>Tecnica</b> – <b>T1055.005 Process Injection: Thread Local Storage</b><br/>PowerShell inietta codice tramite TLS"] class technique_proc_inject_tls technique technique_proc_inject_apc["<b>Tecnica</b> – <b>T1055.004 Process Injection: Asynchronous Procedure Call</b><br/>PowerShell inietta codice tramite APC"] class technique_proc_inject_apc technique technique_proc_inject_pe["<b>Tecnica</b> – <b>T1055.002 Process Injection: Portable Executable Injection</b><br/>.NET PE ricostruito caricato in memoria con AppDomain.Load"] class technique_proc_inject_pe technique malware_remcos["<b>Malware</b> – <b>Remcos RAT</b><br/>Stabilisce canale TLS crittografato al dominio C2"] class malware_remcos malware comm_c2_web["<b>Tecnica</b> – <b>T1102.003 Servizio Web: Comunicazione a senso unico</b><br/>Connessione TLS crittografata a <i>dentalux202.ydns.eu</i>"] class comm_c2_web technique registry_key["<b>Configurazione</b> – <b>Chiave di Registro</b><br/>HKCUSOFTWARERmcu2011HQO1B7 creata dal RAT"] class registry_key config mutex["<b>Configurazione</b> – <b>Mutex</b><br/>Identificatore mutex di Remcos Rmcu2011HQO1B7"] class mutex config %% Connections action_phishing –>|consegna| technique_masquerade technique_masquerade –>|porta a| action_user_exec action_user_exec –>|estrae| file_vbs file_vbs –>|eseguito da| process_wscript process_wscript –>|avvia| process_powershell process_powershell –>|scarica| file_payload_image file_payload_image –>|fornisce| technique_proc_inject_tls file_payload_image –>|fornisce| technique_proc_inject_apc file_payload_image –>|fornisce| technique_proc_inject_pe technique_proc_inject_tls –>|abilita| malware_remcos technique_proc_inject_apc –>|abilita| malware_remcos technique_proc_inject_pe –>|abilita| malware_remcos malware_remcos –>|comunica tramite| comm_c2_web malware_remcos –>|crea| registry_key malware_remcos –>|crea| mutex "
Flusso di attacco
Rilevamenti
LOLBAS WScript / CScript (via creazione processo)
Visualizza
Chiamata metodi .NET sospetti da PowerShell (via powershell)
Visualizza
Stringhe PowerShell sospette (via powershell)
Visualizza
È stato contattato un possibile servizio DNS dinamico (via dns)
Visualizza
IOC (HashSha256) da rilevare: Da un Ordine d’Acquisto Ingannevole a Remcos RAT
Visualizza
IOC (SourceIP) da rilevare: Da un Ordine d’Acquisto Ingannevole a Remcos RAT
Visualizza
IOC (DestinationIP) da rilevare: Da un Ordine d’Acquisto Ingannevole a Remcos RAT
Visualizza
Dominio di comando-e-controllo Remcos RAT e accesso all’URL del payload dannoso [Connessione di rete Windows]
Visualizza
Rilevamento dell’esecuzione dello script VBS seguito da PowerShell con bypass ExecutionPolicy [Creazione processo Windows]
Visualizza
Esecuzione di simulazione
Prerequisito: Il controllo preliminare di Telemetria e Baseline deve avere avuto successo.
Narrazione dell’attacco & Comandi
L’avversario invia un’email di phishing con allegato malicious.vbs. L’utente fa doppio click sul file, invocando wscript.exe. Lo script VBS quindi avvia PowerShell con -ExecutionPolicy Bypass per scaricare un payload PowerShell remoto che installa il Remcos RAT. La linea di comando esatta è:
powershell.exe -ExecutionPolicy Bypass -NoLogo -WindowStyle Hidden -EncodedCommand <BASE64_PAYLOAD>
Script di test di regressione
#--------------------------------------------------------------------
# Script di simulazione: EsecuzionePolicy di PowerShell VBS → Bypass
#--------------------------------------------------------------------
# 1. Costruire un piccolo payload PowerShell (ad esempio, scrivere un file marcatore)
$payload = 'Set-Content -Path "$env:Temppwned.txt" -Value "Compromised"'
$encoded = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($payload))
# 2. Creare il file VBS dannoso che esegue il comando PowerShell
$vbsContent = @"
Set objShell = CreateObject("WScript.Shell")
objShell.Run "powershell.exe -ExecutionPolicy Bypass -NoLogo -WindowStyle Hidden -EncodedCommand $encoded", 0, False
"@
$vbsPath = "$env:Tempmalicious.vbs"
Set-Content -Path $vbsPath -Value $vbsContent -Encoding ASCII
# 3. Eseguire lo script VBS (simula il doppio click dell'utente)
Start-Process -FilePath "wscript.exe" -ArgumentList "`"$vbsPath`"" -WindowStyle Hidden
# Optional: attendere qualche secondo per l'esecuzione del payload
Start-Sleep -Seconds 5
Write-Host "Simulazione completa. Controllare $env:Temppwned.txt per l'artefatto."
#--------------------------------------------------------------------
Comandi di ripulitura
# Rimuovere gli artefatti creati durante la simulazione
Remove-Item -Path "$env:Tempmalicious.vbs" -ErrorAction SilentlyContinue
Remove-Item -Path "$env:Temppwned.txt" -ErrorAction SilentlyContinue
# Fermare eventuali processi PowerShell rimanenti avviati dallo script (se necessario)
Get-Process -Name "powershell" -ErrorAction SilentlyContinue | Stop-Process -Force