Dentro SHADOW-WATER-084: un Loader Steganografico come Servizio che Distribuisce Remcos, LXBASE e Altro
Detection stack
- AIDR
- Alert
- ETL
- Query
Sintesi
SHADOW-WATER-084 è un’operazione sofisticata di loader-as-a-service che utilizza la steganografia per nascondere codice malevolo all’interno di risorse bitmap incorporate in applicazioni .NET esca benigne. La sua catena di distribuzione si basa su più fasi di caricamento riflessivo e decriptazione in memoria per eludere gli scanner basati su file. Il toolkit è altamente configurabile e può distribuire più payload, tra cui Remcos RAT e il custom LXBASE RAT.
Indagine
TrendAI Research ha analizzato tre campagne separate, tracciate come Operazione LoremDrop, che utilizzavano diverse applicazioni esca ma condividevano lo stesso toolkit sottostante. L’indagine ha rivelato una catena di esecuzione a quattro fasi, un formato di configurazione GraftLoader in 43 campi comune, e tecniche di steganografia distintive in cui ogni canale pixel trasporta dati di payload. I ricercatori sono riusciti a decriptare ogni fase e recuperare le routine di criptazione del payload.
Mitigazione
Le organizzazioni dovrebbero monitorare i comandi di PowerShell sospetti memorizzati nelle chiavi Run del registro e rilevare .inf file creati in directory temporanee per l’esecuzione da parte di cmstp.exe. La protezione degli endpoint dovrebbe anche identificare oggetti COM elevatori del browser istanziati da processi non-browser per aiutare a prevenire il furto di credenziali. Monitorare risorse bitmap ad alta entropia all’interno di assembly gestiti può ulteriormente migliorare il rilevamento di loader steganografici.
Risposta
Se viene rilevata un’attività SHADOW-WATER-084, gli host interessati dovrebbero essere isolati e le chiavi Run del registro esaminate per esecuzioni sospette di PowerShell. Gli investigatori dovrebbero cercare nelle directory temporanee i .inf file non autorizzati e ispezionare AppDataRoaming per eseguibili nascosti con attributi di sistema. Dovrebbe essere eseguita anche la forensica della memoria per identificare gli assembly caricati riflessivamente ed estrarre i payload finali utilizzando le chiavi di decriptazione recuperate.
Flusso Attacco
Stiamo ancora aggiornando questa parte.
Rilevazioni
Esecuzione Sospetta di Taskkill (via cmdline)
Possibile Processo PowerShell in Esecuzione in Directory Sospetta (via cmdline)
LOLBAS CMSTP (via cmdline)
Modifica Sospetta delle Esclusioni di Defender (via cmdline)
IOC (HashSha256) da rilevare: All’interno di SHADOW-WATER-084: Un Loader-as-a-Service Steganografico che Distribuisce Remcos, LXBASE, e Altro
IOC (HashMd5) da rilevare: All’interno di SHADOW-WATER-084: Un Loader-as-a-Service Steganografico che Distribuisce Remcos, LXBASE, e Altro
IOC (SourceIP) da rilevare: All’interno di SHADOW-WATER-084: Un Loader-as-a-Service Steganografico che Distribuisce Remcos, LXBASE, e Altro
IOC (DestinationIP) da rilevare: All’interno di SHADOW-WATER-084: Un Loader-as-a-Service Steganografico che Distribuisce Remcos, LXBASE, e Altro
Thread di Monitoraggio Enumerando i Processi – SHADOW-WATER-084 GraftLoader [Windows Sysmon]
Rileva Tramoggia di Processo SHADOW-WATER-84 e Utilizzo di RegSvcs.exe nella Campagna 1 [Windows Process Creation]
Script Powershell Usato per la Persistenza con Esclusione Defender [Windows Powershell]
Esecuzione Simulazione
Prerequisito: Il Controllo Prevolo di Telemetria & Baseline deve essere superato.
Motivazione: Questa sezione descrive l’esecuzione precisa della tecnica avversaria (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrazione DEVONO riflettere direttamente le TTP identificate e mirano a generare la telemetria esatta prevista dalla logica di rilevamento. Esempi astratti o non correlati porteranno a diagnosi errate.
-
Narrazione & Comandi Attacco: L’attaccante ha distribuito un loader specializzato noto come GraftLoader. Per garantire la sopravvivenza contro l’intervento dell’utente o i riavvii del sistema, il
graftloader.exebinario avvia un thread di monitoraggio. Questo thread enumera continuamente i processi in esecuzione; se rileva che il componente principale del malware è stato terminato, riesegue immediatamente il binario. Questa simulazione crea un dummygraftloader.exeper attivare la regola di rilevamento basata sul nome del file specifico. -
Script di Test di Regressione:
# Script di Simulazione: Trigger Watchdog di GraftLoader # Questo script crea un eseguibile dummy chiamato 'graftloader.exe' e lo esegue # per attivare il rilevamento della regola Sigma. $workDir = "$env:TEMPGraftLoaderSim" if (!(Test-Path $workDir)) { New-Item -ItemType Directory -Path $workDir } Set-Location $workDir # Crea un semplice script PowerShell che funge da 'malware' $scriptContent = @" `$processName = "`$MyInvocation.MyCommand.Name" Write-Host "GraftLoader Watchdog Active..." while(`$true) { # Simulate process enumeration and watchdog loop Start-Sleep -Seconds 5 } "@ $scriptContent | Out-File -FilePath "graftloader.ps1" -Encoding utf8 # Crea un file batch wrapper per imitare il comportamento dell'.exe per la corrispondenza del nome del file $batchContent = "@echo off`npowershell.exe -ExecutionPolicy Bypass -File `"$workDirgraftloader.ps1`"" $batchContent | Out-File -FilePath "graftloader.exe" -Encoding ascii # Esegui il 'malware' Write-Host "Starting simulation: graftloader.exe" Start-Process -FilePath ".graftloader.exe" -WindowStyle Hidden Write-Host "Simulation running. Monitor SIEM for Process Creation of graftloader.exe" Write-Host "Press any key to cleanup..." $null = $Host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown") -
Comandi di Pulizia:
# Script di Pulizia Stop-Process -Name "graftloader" -ErrorAction SilentlyContinue Stop-Process -Name "powershell" -ErrorAction SilentlyContinue # Nota: Usare cautela in ambienti reali Remove-Item -Recurse -Force "$env:TEMPGraftLoaderSim" Write-Host "Pulizia completata."