
Campanha abusou de repositórios no GitHub, contas Stargazer Ghost e cargas hospedadas no Bitbucket para acionar scripts maliciosos com baixa detecção por antivírus.
| Componente | GodLoader, executável baseado no Godot Engine, arquivos .pck e script control.gd escrito em GDScript. |
| Vetor | Arquivos RAR distribuídos por repositórios no GitHub promovidos por contas Stargazer Ghost; a execução envolve Launcherkks.exe carregando Launcherkks.pck e acionando GDScript malicioso. |
| Impacto | Download e execução de cargas adicionais, incluindo Updatemmmm.exe identificado como XMRig, tentativa de exclusão do disco C:\ no Microsoft Defender e possível infecção de mais de 17.000 máquinas com base em downloads observados. |
| Prioridade | Bloquear e investigar execuções de binários Godot fora de contexto legítimo, arquivos .pck recebidos de repositórios não confiáveis, chamadas a powershell.exe por processos de jogos e alterações nas exclusões do Defender. |
| Artefatos | Launcherkks.exe, Launcherkks.pck, control.gd, Updatemmmm.exe, UpdateSSSS.exe, arquivos .pck embutidos como seção PE ou transportados separadamente. |
| Infraestrutura | Distribuição por aproximadamente 200 repositórios e mais de 225 contas Stargazer Ghost; cargas adicionais hospedadas em bitbucket.org e configuração de XMRig recuperada de paste privado 7bG9giRJ no Pastebin. |
GodLoader é uma técnica de carregamento de malware que usa o Godot Engine como ambiente de execução para GDScript malicioso. O mecanismo aproveita uma característica legítima do motor de jogos: projetos exportados podem carregar pacotes .pck contendo recursos, cenas, dados estáticos e scripts .gd. Quando o pacote é carregado, funções de inicialização como _ready() podem executar lógica de jogo. Na campanha descrita, esse fluxo foi reaproveitado para executar comandos, realizar verificações do ambiente, baixar cargas adicionais e iniciar executáveis no sistema da vítima.
A atividade foi observada desde pelo menos 29 de junho de 2024 e evoluiu ao longo dos meses seguintes. As primeiras amostras continham o pacote .pck embutido no executável e sem criptografia; versões posteriores passaram a usar arquivos .pck externos e, depois, criptografados com o mecanismo de criptografia de recursos suportado pelo próprio Godot. Essa mudança manteve a maior parte da lógica maliciosa concentrada no pacote de recursos, reduzindo a necessidade de alterar o executável principal e dificultando análise baseada apenas no binário inicial.
A distribuição ocorreu por meio da Stargazers Ghost Network, descrita no contexto como um serviço de distribuição que usa repositórios no GitHub e contas que marcam projetos com estrelas para aparentar legitimidade. Para GodLoader, foram usados aproximadamente 200 repositórios e mais de 225 contas Stargazer Ghost. Em uma onda iniciada em 3 de outubro de 2024, cerca de 100 repositórios distribuíram um arquivo RAR com Launcherkks.exe e Launcherkks.pck. Os repositórios eram atualizados com github-actions[bot], incluindo alterações de data e hora no arquivo LOG, o que favorecia aparência de atividade recente nas buscas.
O fluxo de execução parte de um arquivo compactado sem senha, com nome aleatório, contendo o executável e o pacote de recursos. Após a execução, Launcherkks.exe procura e carrega o arquivo .pck correspondente. O pacote contém o GDScript malicioso, identificado no contexto como control.gd. Como o Godot Engine fornece um interpretador completo para GDScript, o código dentro do pacote consegue coordenar fluxo de controle, threads, chamadas externas e interação com o sistema operacional quando combinado com funcionalidades disponíveis no ambiente de execução.
Antes de baixar cargas, o script aplica verificações de evasão. Uma delas força o uso de aceleração de vídeo 3D e encerra a aplicação quando o recurso não está disponível, comportamento que pode filtrar ambientes de análise sem aceleração gráfica real. Outra técnica cria um botão gráfico e só prossegue após interação do usuário, o que reduz a chance de execução automática em sandboxes. Também há consulta a nomes de controladores de vídeo e checagem de espaço livre para inferir se o processo está em uma máquina virtual ou ambiente de emulação. Essas verificações usam powershell.exe para recuperar propriedades do sistema.
O script também verifica privilégios administrativos e tenta adicionar todo o disco C:\ à lista de exclusões do Microsoft Defender. Esse ponto é defensivamente relevante porque a alteração amplia a superfície não monitorada pelo antivírus nativo e pode permitir que cargas gravadas em diretórios comuns escapem de varreduras locais. Em seguida, a lógica baixa e executa payloads sequencialmente a partir de bitbucket.org, uma plataforma legítima de colaboração de código. O uso de hospedagem legítima não torna o conteúdo confiável, mas pode reduzir bloqueios simples baseados apenas em reputação de domínio.
Entre as cargas observadas, Updatemmmm.exe foi identificado como XMRig. O arquivo teria sido carregado em 29 de junho de 2024, enquanto UpdateSSSS.exe apareceu em 7 de agosto de 2024 e teve três hashes diferentes associados ao mesmo nome ao longo das atualizações. A configuração do minerador era buscada em um paste privado no Pastebin, identificado como 7bG9giRJ, publicado em 10 de maio de 2024 e visitado 206.913 vezes. O contexto também descreve que o ator alterou o C&C duas vezes durante mais de três meses de operação.
A superfície principal envolve usuários que executam arquivos obtidos de repositórios no GitHub apresentados como legítimos por meio de estrelas artificiais. Desenvolvedores, jogadores e usuários gerais são citados como alvos primários das ondas de distribuição. O risco não depende de uma vulnerabilidade no Godot Engine, mas do abuso de sua funcionalidade legítima de empacotamento e execução de GDScript. Assim, controles que só avaliam se o binário pertence a um projeto de jogos podem falhar quando o conteúdo malicioso está concentrado em um pacote .pck externo ou embutido.
As amostras confirmadas são voltadas a Windows, mas a técnica tem características multiplataforma porque o Godot exporta projetos para Windows, Linux, macOS, Android, iOS, Web e outras plataformas. O contexto descreve provas de conceito em Linux e macOS com comportamento semelhante ao loader de Windows, nas quais um botão acionava o download e a execução de uma carga demonstrativa. Um loader Android é considerado possível com modificações no Godot Engine. Para iOS, a implantação é descrita como improvável por causa das restrições da App Store.
A mudança de .pck embutido para .pck separado altera a forma de triagem. Quando o pacote está embutido como seção PE, a análise precisa extrair e interpretar a estrutura de recursos dentro do executável. Quando está separado, o binário pode parecer mais estável enquanto o arquivo de recursos muda. Em ambos os modelos, o pacote contém cabeçalhos, metadados dos arquivos empacotados e conteúdo, que pode estar criptografado quando uma chave AES é definida durante a construção do projeto.
- Ambientes Windows que executaram arquivos
Launcherkks.exeeLauncherkks.pckobtidos de repositórios desconhecidos ou recém-atualizados. - Estáções de desenvolvedores e jogadores que baixaram arquivos RAR de repositórios promovidos por contas com atividade de estrelas coordenada.
- Controles de endpoint que permitem execução de binários Godot e não inspecionam pacotes
.pck, scripts.gdou chamadas subsequentes apowershell.exe.
A investigação deve começar pela correlação entre execução de binários Godot, presença de arquivos .pck próximos ao executável e criação de processos filhos incomuns. Em um uso legítimo, o processo pode carregar recursos do jogo e abrir janelas gráficas, mas não deve chamar powershell.exe para consultar adaptadores de vídeo, espaço livre ou privilégios administrativos. A combinação de GDScript carregado de pacote externo com PowerShell, download de executáveis e alteração de exclusões do Defender é um sinal de alta prioridade.
Em endpoint, busque por processos com nomes próximos a Launcherkks.exe, criação ou leitura de Launcherkks.pck, execução de control.gd dentro do pacote extraído e gravação de payloads com nomes Updatemmmm.exe ou UpdateSSSS.exe. Também vale revisar criação do diretório C:/ProgramData/Update, citado como mudança em uma variante observada em 26 de agosto de 2024. Como o ator alterou versões e empacotamento ao longo do tempo, nomes de arquivos não devem ser o único critério de detecção.
Na camada de rede, priorize downloads iniciados por processos de jogos ou executáveis Godot para bitbucket.org quando não houver justificativa operacional. Também procure tráfego de minerador XMRig e tentativas de recuperar configuração em Pastebin, especialmente envolvendo o paste privado 7bG9giRJ quando a telemetria local registrar URL ou identificador de paste. O contexto não fornece endereços IP, hashes completos ou domínios de C&C além dessas plataformas legítimas, portanto a detecção deve combinar comportamento, origem do arquivo, árvore de processos e mudanças de configuração do sistema.
- Processo Godot ou executável desconhecido chamando
powershell.exepara consultar vídeo, espaço livre, privilégios ou propriedades do sistema. - Comando ou evento administrativo adicionando
C:\às exclusões do Microsoft Defender após execução de um arquivo baixado de repositório. - Download de executáveis a partir de
bitbucket.orgpor processo de jogo, launcher desconhecido ou binário recém-extraído de RAR. - Presença de
Launcherkks.exe,Launcherkks.pck,control.gd,Updatemmmm.exe,UpdateSSSS.exeou diretórioC:/ProgramData/Update.
A resposta deve tratar GodLoader como abuso de cadeia de distribuição e execução local, não como falha corrigível por atualização única do Godot. O primeiro passo é bloquear a execução de artefatos originados de repositórios não confiáveis, especialmente arquivos RAR contendo executável e .pck. Em ambientes corporativos, aplique política de allowlist para executáveis de jogos e ferramentas de desenvolvimento, com atenção a binários que carregam pacotes de recursos externos. Pacotes .pck recebidos de fora do pipeline oficial devem ser analisados antes de execução.
Em máquinas suspeitas, remova exclusões indevidas do Microsoft Defender, principalmente qualquer regra ampla envolvendo C:\. Em seguida, colete a árvore de processos, artefatos em disco, histórico de downloads, arquivos compactados originais, conteúdo de diretórios temporários e eventos de PowerShell. Se houver evidência de XMRig, investigue consumo de CPU, conexões de mineração, arquivos de configuração e persistência associada. O contexto confirma mineração e execução de payloads adicionais, mas não fornece evidência específica de exfiltração de dados; a contenção deve manter o escopo técnico no que foi observado e expandir somente se a telemetria local indicar outros impactos.
Para prevenção, reforce validação de procedência em repositórios GitHub. Estrelas, atualizações recentes por automação e aparência de atividade não devem ser usadas como sinal de confiança. Pipelines internos podem bloquear downloads de repositórios recém-criados ou com histórico inconsistente quando o artefato entregue for um binário compactado. Equipes de AppSec e engenharia que usam Godot devem separar claramente pacotes oficiais de recursos, assinar artefatos quando possível e registrar hashes internos de builds legítimos para facilitar comparação com arquivos externos.
- Bloquear ou isolar arquivos
.pcke executáveis Godot obtidos de repositórios externos sem validação de origem. - Auditar exclusões do Microsoft Defender e remover regras amplas adicionadas após execução de launchers desconhecidos.
- Criar detecções para Godot ou launchers chamando
powershell.exe, baixando executáveis e gravando payloads emC:/ProgramData/Update. - Revisar máquinas que executaram
Launcherkks.exeouLauncherkks.pcke coletar evidências antes de remover artefatos. - Treinar equipes para não confiar em repositórios apenas por quantidade de estrelas, atualização recente ou uso de plataformas legítimas como GitHub e Bitbucket.
0 Comentários