SOC Prime Bias: Élevé

01 Dec 2025 14:35 UTC

Le ransomware Play se fait passer pour SentinelOne dans la campagne de reconnaissance Grixba

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Suivre
Le ransomware Play se fait passer pour SentinelOne dans la campagne de reconnaissance Grixba
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Résumé

Le rapport décrit une opération de ransomware Play qui repose sur un utilitaire de reconnaissance .NET personnalisé nommé Grixba, déployé via RDP sur un serveur Windows. Grixba se fait passer pour un exécutable SentinelOne (GT_NET.exe) et stocke les résultats de l’analyse dans ExportData.db. L’outil communique avec une adresse IP VPN PIA et génère une archive data.zip protégée par mot de passe. Une identification précoce de ces artefacts peut arrêter l’attaque avant la phase de ransomware.

Analyse de l’attaque du ransomware Play

Field Effect MDR a observé le binaire Grixba déposé dans C:UsersPublicMusic avec data.dat, suivi de l’exécution et de l’extraction de la clé XOR pour décoder GT_NET.exe and extraction of the XOR key to decode inf_g.dll. Une analyse plus approfondie a révélé des commutateurs en ligne de commande pour la reconnaissance et la création de ExportData.db, contenant des détails système étendus. Les enquêteurs ont également récupéré l’élément de mot de passe intégré nécessaire pour déverrouiller data.zip.

Atténuation

Les mesures recommandées incluent le maintien de sauvegardes fiables, la correction rapide des logiciels, l’utilisation de pare-feu DNS, l’application d’une utilisation sécurisée des VPN, l’application de MFA, et l’utilisation de plateformes MDR/XDR pour détecter l’activité de reconnaissance tôt. Les équipes devraient surveiller en permanence les artefacts distinctifs et les comportements d’exécution associés à Grixba.

Réponse

Lorsque GT_NET.exe, data.dat, inf_g.dll, ou ExportData.db sont détectés, les intervenants doivent mettre en quarantaine le point de terminaison, capturer les preuves volatiles, extraire le mot de passe ZIP depuis la valeur intégrée, et rechercher un mouvement latéral ou une mise en scène de ransomware. Les gestionnaires d’incidents devraient également bloquer l’adresse IP associée et examiner de près les journaux d’accès RDP.

Flux d’attaque

Exécution de la simulation

Préalable : La vérification télémétrique et de référence doit avoir été réussie.

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 TTP 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 entraîneront une mauvaise interprétation.

  • Narratif d’attaque et commandes :

    L’adversaire a obtenu un premier accès à un poste de travail compromis. Pour cartographier le réseau interne avant de se déplacer latéralement, il télécharge le binaire de reconnaissance Grixba (GT_NET.exe) depuis le serveur de commande et contrôle et l’exécute avec l’ensemble d’arguments que la règle Sigma cible. L’argument choisi -m:scanall -i:d force une découverte complète des hôtes appartenant au domaine, tandis que -i:r et -i:f énumèrent respectivement les partages distants et les partages de fichiers. Ces arguments sont typiques de la charge utile par défaut de l’outil et produisent des chaînes en ligne de commande distinctes que la règle de détection surveille.

    Étapes :

    1. Télécharger l’outil (simulé avec une copie depuis un dossier de test).
    2. Exécuter le binaire avec chaque ensemble d’arguments ciblés pour s’assurer que la règle s’active pour chaque cas.
    3. Laisser le processus s’exécuter brièvement pour permettre au SIEM de capturer l’événement.
  • Script de test de régression :

    # Script de test de régression – Exécution de l'outil de reconnaissance Grixba
    # ----------------------------------------------------
    # Hypothèses :
    #   • GT_NET.exe est situé dans C:TempGT_NET.exe (remplacer par le chemin réel)
    #   • Exécution avec des privilèges suffisants pour invoquer le binaire
    # ----------------------------------------------------
    
    $exePath = "C:TempGT_NET.exe"
    
    if (-Not (Test-Path $exePath)) {
        Write-Error "GT_NET.exe non trouvé à $exePath. Abandon."
        exit 1
    }
    
    # 1. Exécuter avec -m:scanall -i:d
    Write-Host "`n[+] Lancement de GT_NET.exe avec '-m:scanall -i:d' ..."
    Start-Process -FilePath $exePath -ArgumentList "-m:scanall -i:d" -WindowStyle Hidden -PassThru | Out-Null
    Start-Sleep -Seconds 5
    
    # 2. Exécuter avec -i:r
    Write-Host "`n[+] Lancement de GT_NET.exe avec '-i:r' ..."
    Start-Process -FilePath $exePath -ArgumentList "-i:r" -WindowStyle Hidden -PassThru | Out-Null
    Start-Sleep -Seconds 5
    
    # 3. Exécuter avec -i:f
    Write-Host "`n[+] Lancement de GT_NET.exe avec '-i:f' ..."
    Start-Process -FilePath $exePath -ArgumentList "-i:f" -WindowStyle Hidden -PassThru | Out-Null
    Start-Sleep -Seconds 5
    
    Write-Host "`n[+] Exécution terminée. Vérifiez la détection dans le SIEM."
  • Commandes de nettoyage :

    # Nettoyage – terminer tous les processus GT_NET.exe persistants et supprimer le binaire
    Get-Process -Name "GT_NET" -ErrorAction SilentlyContinue | Stop-Process -Force
    
    $exePath = "C:TempGT_NET.exe"
    if (Test-Path $exePath) {
        Remove-Item $exePath -Force
        Write-Host "[+] GT_NET.exe supprimé."
    } else {
        Write-Host "[*] GT_NET.exe non présent; rien à supprimer."
    }