SOC Prime Bias: Critico

29 Jun 2026 06:14 UTC

STOCKSTAY un altro giorno: l’ultima aggiunta all’apparato di raccolta informazioni di Turla

Author Photo
SOC Prime Team linkedin icon Segui
STOCKSTAY un altro giorno: l’ultima aggiunta all’apparato di raccolta informazioni di Turla
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Sommario

Il Google Threat Intelligence Group ha identificato STOCKSTAY, una backdoor .NET multi-componente utilizzata dall’attore di minacce Turla collegato alla Russia. Il malware è costruito con un design modulare che include un tunnel, un orchestratore e una componente backdoor, tutti comunicanti tramite WebSocket sicuri. È progettato per supportare operazioni di cyber spionaggio a lungo termine contro obiettivi governativi e militari.

Indagine

GTIG ha eseguito un’analisi approfondita dell’ecosistema STOCKSTAY e ha rintracciato il suo sviluppo a dicembre 2022. I ricercatori hanno mappato i suoi componenti modulari, esaminato l’uso della chiave ambientale per decrittografare i dati di configurazione, e documentato il suo passaggio dal travestirsi come un’utilità di mercato azionario al posare come altre applicazioni benigne. L’indagine ha anche rivelato l’uso di K1MORPHER per l’offuscamento delle stringhe e collegamenti al toolkit KAZUAR noto di Turla.

Mitigazione

Le organizzazioni dovrebbero implementare un forte monitoraggio per il comportamento sospetto delle applicazioni .NET e del traffico WebSocket insolito verso domini non familiari. Difendersi dall’accesso iniziale tramite file RDP dannosi e potenziare le protezioni email contro il phishing sono anche critici. Inoltre, risolvere vulnerabilità come CVE-2025-8088 in WinRAR può aiutare a bloccare l’implementazione basata su sfruttamenti.

Risposta

Se viene rilevata un’attività STOCKSTAY, isolare immediatamente gli host interessati per interrompere la comunicazione di comando e controllo e il movimento laterale. Condurre un’indagine forense dettagliata per determinare l’intera portata della compromissione, con particolare attenzione ai cambiamenti di registro non autorizzati e ai nuovi compiti pianificati creati. I log di rete dovrebbero essere esaminati per sessioni WebSocket di lunga durata e i sistemi dovrebbero essere controllati per la presenza dei file componenti STOCKSTAY.

"flowchart TD step_initial_access["Accesso Iniziale: T1566 – Phishing (Allegati spearphishing come file RDP, MSI, o RAR; Link spearphishing a siti compromessi)"] step_execution["Esecuzione: T1204.002 – Esecuzione Utente: File Maligno (file HTA, config RDP); T1574.014 – Dirottare il Flusso di Esecuzione: AppDomainManager (payload .NET); T1543 – Creare o Modificare Processo di Sistema"] rules_for_execution("<b>Nome Regola</b>: Comportamento di Evasione di Difesa LOLBAS MSHTA Sospetto tramite Rilevazione di Comandi Associati (via process_creation)<br/><b>ID Regola</b>: feb459cf-289a-41ab-9241-d8edc232c487") step_persistence["Persistenza: T1543 – Creare o Modificare Processo di Sistema (voci autorun); T1133 – Servizi Remoti Esterni (connettività a lungo termine)"] step_defense_evasion["Evasione Difensiva: T1036 – Camuffamento (rinominare come utilità benigne); T1027.015 – File o Informazioni Offuscate: Compressione; T1497.001/002 – Evasione Virtualizzazione/Sandbox via WMI"] step_discovery["Scoperta: T1012 – Interrogare Registro; T1497.001 – Evasione Virtualizzazione/Sandbox (raccolta di info di sistema/hardware via WMI)"] step_command_and_control["Comando e Controllo: T1102.002/003 – Servizio Web: Comunicazione Bidirezionale/Monodirezionale (WebSocket via Render); T1568 – Risoluzione Dinamica"] rules_for_c2("<b>Nome Regola</b>: Tentativo di Abuso di Publicnode Ethereum come Canale C2 (via dns_query)<br/><b>ID Regola</b>: 280e86bf-fad9-4b9c-8867-e2355e3f50ba") step_collection_exfiltration["Raccolta ed Esfiltrazione: T1560.002/003 – Archiviazione Dati Raccolti tramite Libreria o Metodo Personalizzato (archivi ZIP in-memory)"] step_initial_access –>|porta_a| step_execution step_execution –>|abilita| step_persistence step_execution -.->|rilevata_da| rules_for_execution step_persistence –>|porta_a| step_defense_evasion step_defense_evasion –>|abilita| step_discovery step_discovery –>|porta_a| step_command_and_control step_command_and_control –>|abilita| step_collection_exfiltration step_command_and_control -.->|rilevata_da| rules_for_c2 "

Flusso di Attacco

Esecuzione di Simulazione

Prerequisito: Il Controllo Pre-volo di Telemetria & Baseline deve essere superato.

Motivazione: Questa sezione descrive l’esatta esecuzione 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 esattamente la telemetria prevista dalla logica di rilevamento. Esempi astratti o non correlati porteranno a una cattiva diagnosi.

  • Narrativa dell’Attacco & Comandi: L’avversario mira a stabilire la persistenza utilizzando uno strumento camuffato come un componente di aggiornamento Microsoft legittimo. Per evitare il rilevamento, l’attaccante ha rinominato la loro backdoor STOCKSTAY in MicrosoftUpdateOneDrive.exe e l’ha posizionato in una directory temporanea. L’obiettivo è di eseguire questo processo per avviare una shell inversa o comunicazione di comando e controllo (C2), facendosi affidamento sul nome “legittimo” per eludere il monitoraggio di base del processo.

  • Script di Test di Regressione:

    # Script di Simulazione: Esecuzione Masquerade STOCKSTAY
    $MaliciousName = "MicrosoftUpdateOneDrive.exe"
    $TargetDir = "$env:TEMPStockstaySim"
    
    # 1. Creare una directory e file "maligno" simulato
    if (!(Test-Path $TargetDir)) { New-Item -Path $TargetDir -ItemType Directory -Force }
    $FakeBinary = Join-Path $TargetDir $MaliciousName
    
    # 2. Creare un eseguibile finto (usando un cmd.exe rinominato per scopi di simulazione)
    Copy-Item "C:WindowsSystem32cmd.exe" -Destination $FakeBinary -Force
    
    Write-Host "[+] Simulazione: Creato $FakeBinary" -ForegroundColor Cyan
    
    # 3. Eseguire il processo "maligno"
    Write-Host "[+] Simulazione: Esecuzione $MaliciousName..." -ForegroundColor Yellow
    Start-Process -FilePath $FakeBinary -ArgumentList "/c echo STOCKSTAY_SIMULATION_ACTIVE" -WindowStyle Hidden
    
    Write-Host "[+] Simulazione: Avviata esecuzione del processo." -ForegroundColor Green
  • Comandi di Pulizia:

    # Script di Pulizia
    $TargetDir = "$env:TEMPStockstaySim"
    if (Test-Path $TargetDir) {
        Remove-Item -Path $TargetDir -Recurse -Force
        Write-Host "[+] Pulizia: Rimossa directory di simulazione $TargetDir" -ForegroundColor Green
    } else {
        Write-Host "[-] Pulizia: Directory di simulazione non trovata." -ForegroundColor Red
    }