Attacco alla supply chain STX RAT colpisce Wallet e X-VPN
Detection stack
- AIDR
- Alert
- ETL
- Query
Riassunto
Il rapporto delinea un framework di caricatore multistadio utilizzato dal gruppo Gamaredon, sponsorizzato dallo stato russo, per preservare l’accesso a lungo termine all’interno degli ambienti governativi ucraini e delle infrastrutture critiche. I caricatori vengono consegnati tramite piattaforme cloud e servizi di messaggistica legittimi, memorizzano i dettagli di comando e controllo nel registro di Windows e si basano sui flussi di dati alternativi e sui compiti pianificati per attivare i carichi utili successivi.
Indagine
Sekoia.io ha ricostruito tre fasi del caricatore basate su VBScript che recuperano codice aggiuntivo da risolutori dead-drop ospitati su servizi come Telegram, Telegraph e Check-Host. La seconda fase scrive un payload in un ADS sotto %TEMP% e crea un’attività pianificata, mentre la terza fase avvia un processo PowerShell nascosto che scarica ed esegue il modulo finale GammaSteel stealer.
Mitigazione
I difensori dovrebbero monitorare i registri per scritture sospette sotto HKCUConsole, compiti pianificati imprevisti nominati DsSvcCleanup, uso anormale di flussi di dati alternativi in %TEMP%, e traffico di rete verso domini noti di Cloudflare, Telegram e Check-Host. L’esecuzione di script VBScript e PowerShell non firmati che dipendono da comandi codificati dovrebbe anche essere bloccata o strettamente limitata.
Risposta
Se viene rilevata una compromissione, isolare immediatamente gli host compromessi, raccogliere le chiavi di registro rilevanti e le definizioni dei compiti pianificati, preservare i file correlati agli ADS e bloccare i domini e gli indirizzi IP di comando e controllo identificati. Eseguire un imaging forense e cercare il modulo stealer GammaSteel sia in memoria che su disco.
"graph TB %% Class Definitions classDef technique fill:#99ccff classDef operator fill:#ff9900 classDef tool fill:#cccccc %% Node definitions initial_driveby["<b>Technique</b> – <b>T1189 Compromissione Driveu2011by</b><br/><b>Descrizione</b>: Compromettere un sito web per consegnare contenuto malevolo quando un utente lo visita."] class initial_driveby technique c2_deadDrop["<b>Technique</b> – <b>T1102.001 Risolutore Dead Drop del Servizio Web</b><br/><b>Descrizione</b>: Utilizzare servizi web legittimi per scambiare dati di comando e controllo."] class c2_deadDrop technique c2_dynamic["<b>Technique</b> – <b>T1568 Risoluzione Dinamica</b><br/><b>Descrizione</b>: Risolvere dinamicamente indirizzi C2 per evitare il rilevamento."] class c2_dynamic technique execution_vbscript["<b>Technique</b> – <b>T1216.002 Esecuzione Proxy Scrittura di Sistema VBScript</b><br/><b>Descrizione</b>: Eseguire script VB malevoli tramite proxy di script di sistema."] class execution_vbscript technique persistence_task["<b>Technique</b> – <b>T1053.005 Attività Pianificata</b><br/><b>Descrizione</b>: Creare un’attività pianificata per mantenere la persistenza."] class persistence_task technique priv_esc_reflect["<b>Technique</b> – <b>T1620 Caricamento di Codice Riflettente PowerShell</b><br/><b>Descrizione</b>: Caricare codice malevolo riflessivamente in memoria usando PowerShell."] class priv_esc_reflect technique propagation_usb["<b>Technique</b> – <b>T1091 Replica Attraverso Media Rimovibili</b><br/><b>Descrizione</b>: Copiare file malevoli su unità USB per la propagazione."] class propagation_usb technique %% Connections showing attack flow initial_driveby –>|porta a| c2_deadDrop c2_deadDrop –>|utilizza| c2_dynamic c2_dynamic –>|abilita| execution_vbscript execution_vbscript –>|stabilisce| persistence_task persistence_task –>|facilita| priv_esc_reflect execution_vbscript –>|abilita| propagation_usb "
Flusso di Attacco
Rilevazioni
La Possibilità di Esecuzione Tramite Linee di Comando PowerShell Nascoste (via cmdline)
Visualizza
Chiamata a Metodi .NET Sospetti da Powershell (via powershell)
Visualizza
LOLBAS WScript / CScript (via process_creation)
Visualizza
Possibile Abuso di Telegram Come Canale di Comando e Controllo (via dns_query)
Visualizza
Comunicazione di Dominio Trycloudflare Sospetta (via dns)
Visualizza
Possibile Abuso di Dominio di Sviluppo Cloudflare (via dns)
Visualizza
IOC (HashMd5) per rilevare: la matryoshka dell’FSB #2/3 – I doni di Gamaredon che continuano a svelarsi – GammaLoad
Visualizza
IOC (SourceIP) per rilevare: la matryoshka dell’FSB #2/3 – I doni di Gamaredon che continuano a svelarsi – GammaLoad
Visualizza
IOC (DestinationIP) per rilevare: la matryoshka dell’FSB #2/3 – I doni di Gamaredon che continuano a svelarsi – GammaLoad
Visualizza
Rilevazione di Esecuzione In-Memory di Gamaredon PowerShell [Windows Powershell]
Visualizza
Rilevazione di Aggiornamenti URL C2 di Gamaredon nel Registro [Evento Registro di Windows]
Visualizza
Esecuzione di Simulazione
Prerequisito: Il Controllo di Pre-volo Telemetria & Baseline deve essere passato.
Ragionamento: Questa sezione dettaglia l’esecuzione precisa della tecnica avversaria (TTP) progettata per attivare la regola di rilevazione. I comandi e la narrativa DEVONO riflettere direttamente i TTP identificati e mirare a generare la telemetria esatta prevista dalla logica di rilevazione.
-
Narrativa di Attacco & Comandi:
L’attore della minaccia, avendo compromesso la sessione dell’utente, deve aggiornare il proprio endpoint C2 affinché i futuri beacon raggiungano un server nuovo. Gamaredon memorizza l’URL in una chiave di registro ben nota sottoHKCUConsole. L’attaccante utilizza PowerShell nativo (Set-ItemProperty) per scrivere il nuovo URL, evitando strumenti di terze parti e restando così “living-off-the-land”. Questa azione genera un evento impostato di valore del Registro (EventID 13) con il percorso completo, che corrisponde alla regola SigmaRegistryPath|containsfiltro.# Aggiornamento simulato dell'URL C2 di Gamaredon – scrive su una chiave monitorata $c2Url = "https://c2.gamaredon.example.com/payload" $targetKey = "HKCU:ConsoleHistoryURL" New-Item -Path $targetKey -Force | Out-Null Set-ItemProperty -Path $targetKey -Name "URL" -Value $c2Url -
Script di Test di Regressione: (PowerShell – auto-contenuto)
<# Simula l'aggiornamento dell'URL C2 di Gamaredon in una chiave di registro monitorata dalla regola Sigma. #> # Parametri (da aggiustare secondo necessità) $c2Url = "https://c2.gamaredon.example.com/payload" $regPath = "HKCU:ConsoleHistoryURL" $valueName = "URL" # Assicurarci che la chiave esista if (-not (Test-Path $regPath)) { New-Item -Path $regPath -Force | Out-Null } # Scrivi l'URL C2 malevolo Set-ItemProperty -Path $regPath -Name $valueName -Value $c2Url Write-Host "[*] URL C2 scritto in $regPath$valueName" -
Comandi di Pulizia: (PowerShell)
# Rimuovere la chiave/valore simulata per lasciare il sistema pulito $regPath = "HKCU:ConsoleHistoryURL" if (Test-Path $regPath) { Remove-ItemProperty -Path $regPath -Name "URL" -ErrorAction SilentlyContinue # Rimuovere eventualmente completamente la chiave Remove-Item -Path $regPath -Recurse -Force -ErrorAction SilentlyContinue Write-Host "[*] Pulizia degli artefatti di registro simulati completata." }