SOC Prime Bias: Crítico

29 Jan 2026 18:34

Ataques APT Visam o Governo da Índia com GOGITTER, GITSHELLPAD e GOSHELL | Parte 1

Author Photo
Ruslan Mikhalov Chefe de Pesquisa de Ameaças na SOC Prime linkedin icon Seguir
Ataques APT Visam o Governo da Índia com GOGITTER, GITSHELLPAD e GOSHELL | Parte 1
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Resumo

Zscaler ThreatLabz descobriu duas campanhas – Gopher Strike e Sheet Attack lideradas por um grupo APT vinculado ao Paquistão, que visa organizações governamentais indianas. A atividade introduz ferramentas baseadas em Golang, incluindo GOGITTER, GITSHELLPAD e GOSHELL, para preparar cargas úteis, usar repositórios privados do GitHub para C2 e, finalmente, implantar um beacon do Cobalt Strike. O acesso inicial é conseguido por meio de spearphishing com PDFs que atraem as vítimas a baixar arquivos ISO maliciosos. Os operadores usam vários métodos de evasão, incluindo verificação de ambiente, preenchimento de arquivos, e persistência de tarefas agendadas.

Investigação

A análise mostrou que o GOGITTER valida a presença de um script windows_api.vbs, cria-o se ausente, e registra uma tarefa agendada para executá-lo a cada 50 minutos. O GITSHELLPAD usa a API REST do GitHub para recuperação de comandos e exfiltração de dados, enquanto o GOSHELL carrega condicionalmente um beacon do Cobalt Strike apenas em hostnames selecionados. As ferramentas incorporam URLs e strings user agent codificadas para dificultar a análise automatizada e o sandboxing. As campanhas também usaram repositórios privados do GitHub para hospedar cargas de suporte, como adobe_update.zip.

Mitigação

Bloqueie a execução de binários Golang não confiáveis/não assinados e imponha uma lista de permissões rigorosa e revisão para criação de tarefas agendadas. Monitore o tráfego de saída para domínios maliciosos conhecidos e para recursos do GitHub usados como C2, incluindo uso anômalo da API do GitHub de pontos de extremidade que não são de desenvolvedores. Fortaleça a segurança de e-mail escaneando anexos PDF em busca de ofuscação e bloqueando links que redirecionam para downloads de ISO. As detecções de endpoint devem alertar sobre a criação do windows_api.vbs e padrões de execução de tarefas periódicas consistentes com intervalos de 50 minutos.

Resposta

Se qualquer IOC for detectado, isole o endpoint, pare e remova a tarefa agendada, e exclua artefatos maliciosos associados. Realize uma revisão forense de atividades de C2 baseadas no GitHub, preserve logs de execução de comando e remova qualquer conteúdo exfiltrado ou carregado quando possível. Redefina credenciais para contas afetadas, procure movimentos laterais e atualize detecções com indicadores extraídos para identificar atividades relacionadas em todo o ambiente.

graph TB %% Class definitions classDef action fill:#99ccff classDef technique fill:#b3e5fc classDef tool fill:#ffe0b2 classDef malware fill:#ffcccb classDef process fill:#d5f5e3 classDef operator fill:#ff9900 %% Nodes – Attack Steps step1_initial_access[“<b>Técnica</b> – T1204.002 Execução pelo Usuário: Arquivo Malicioso<br/><b>Descrição</b>: O usuário executa um arquivo malicioso entregue por engenharia social.<br/><b>Detalhe</b>: PDF de spear-phishing disfarçado como atualização do Adobe Acrobat; ao clicar em um botão falso, um ISO com o payload é baixado.”] class step1_initial_access technique step2_recon[“<b>Técnica</b> – T1593.003 Pesquisa em Sites/Domínios Abertos: Repositórios de Código<br/><b>Descrição</b>: O adversário coleta informações de sites públicos de hospedagem de código.<br/><b>Detalhe</b>: Atores de ameaça criam repositórios privados no GitHub que posteriormente hospedam C2 e payloads.”] class step2_recon technique step3_exec_vbscript[“<b>Técnica</b> – T1059.005 Interpretador de Comandos e Scripts: Visual Basic<br/><b>Descrição</b>: Executa scripts Visual Basic para rodar comandos.<br/><b>Detalhe</b>: O GOGITTER solta o windows_api.vbs e o executa para obter comandos adicionais de um servidor web.”] class step3_exec_vbscript technique step4_exec_cmd[“<b>Técnica</b> – T1059.003 Interpretador de Comandos e Scripts: Shell de Comando do Windows<br/><b>Descrição</b>: Usa o shell de comando nativo do Windows para execução.<br/><b>Detalhe</b>: O GITSHELLPAD executa comandos como net user, systeminfo, tasklist e curl.”] class step4_exec_cmd technique step5_persistence[“<b>Técnica</b> – T1053.005 Tarefa/Job Agendado: Tarefa Agendada<br/><b>Descrição</b>: Cria uma tarefa agendada para executar código malicioso periodicamente.<br/><b>Detalhe</b>: O GOGITTER cria uma tarefa chamada MicrosoftEdge_ConfigurationUpdate_<random> que executa o VBScript a cada 50 minutos.”] class step5_persistence technique step6_masquerade[“<b>Técnica</b> – T1036.008 Mascaramento: Tipo de Arquivo Mascarado e T1036.007 Extensão Dupla de Arquivo<br/><b>Descrição</b>: Arquivos são nomeados para parecerem legítimos e ocultar seu tipo real.<br/><b>Detalhe</b>: Arquivos criados com nomes windows_api.vbs, adobe_update.zip, edgehost.exe.”] class step6_masquerade technique step7_obfuscation[“<b>Técnica</b> – T1027.015 Arquivos ou Informações Ofuscadas: Compressão<br/><b>Descrição</b>: Usa compressão para ocultar payloads maliciosos.<br/><b>Detalhe</b>: Payloads empacotados em arquivos ZIP/RAR hospedados no repositório privado do GitHub.”] class step7_obfuscation technique step8_account_disc[“<b>Técnica</b> – T1087.001 Descoberta de Contas: Conta Local<br/><b>Descrição</b>: Enumera contas de usuários locais no sistema.<br/><b>Detalhe</b>: O GITSHELLPAD executa \”net user\” para listar contas.”] class step8_account_disc technique step9_network_disc[“<b>Técnica</b> – T1016.001 Descoberta da Configuração de Rede do Sistema: Descoberta de Conectividade com a Internet<br/><b>Descrição</b>: Verifica conectividade com a Internet e endpoints C2 acessíveis.<br/><b>Detalhe</b>: Usa curl para testar conectividade com domínios do atacante.”] class step9_network_disc technique step10_collection[“<b>Técnica</b> – T1560.002 Arquivar Dados Coletados: Arquivamento via Biblioteca<br/><b>Descrição</b>: Comprime os dados coletados em arquivos para uso posterior.<br/><b>Detalhe</b>: Ferramentas pós-comprometimento entregues como arquivos ZIP/RAR.”] class step10_collection technique step11_c2[“<b>Técnica</b> – T1102.001 Serviço Web: Dead Drop Resolver<br/><b>Descrição</b>: Comunica-se com C2 por meio de um serviço web que atua como dead-drop.<br/><b>Detalhe</b>: Usa a API REST do GitHub para enviar info.txt e consultar command.txt.”] class step11_c2 technique step12_exfil[“<b>Técnica</b> – T1567.001 Exfiltração por Serviço Web: Exfiltração para Repositório de Código<br/><b>Descrição</b>: Exfiltra dados enviando-os para um repositório de código.<br/><b>Detalhe</b>: O info.txt coletado é enviado para um repositório GitHub controlado pelo atacante.”] class step12_exfil technique %% Connections – Attack Flow step1_initial_access –>|leva_a| step2_recon step2_recon –>|leva_a| step3_exec_vbscript step3_exec_vbscript –>|leva_a| step4_exec_cmd step4_exec_cmd –>|leva_a| step5_persistence step5_persistence –>|leva_a| step6_masquerade step6_masquerade –>|leva_a| step7_obfuscation step7_obfuscation –>|leva_a| step8_account_disc step8_account_disc –>|leva_a| step9_network_disc step9_network_disc –>|leva_a| step10_collection step10_collection –>|leva_a| step11_c2 step11_c2 –>|leva_a| step12_exfil

Fluxo de Ataque

Execução de Simulação

Pré-requisito: O Telemetria & Check de Pré-voo de Linha de Base deve ter passado.

Racional: 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. Exemplos abstratos ou não relacionados levarão a um diagnóstico incorreto.

  • Narrativa de Ataque & Comandos:
    Um grupo APT implanta o backdoor GITSHELLPAD (edgehost.exe) em um host Windows comprometido. Para se misturar ao comportamento esperado do sistema, o atacante lança o backdoor via o shell de comando do Windows (cmd /c). Após completar sua carga (por exemplo, baixando módulos adicionais), o backdoor realiza uma “limpeza” terminando seu próprio processo usando taskkill /F /PID <PID>. Ambas as ações geram eventos de criação de processos que contêm o nome do binário e as substrings de linha de comando necessárias, satisfazendo a regra Sigma.

  • Script de Teste de Regressão:

    # -------------------------------------------------
    # Simular execução e limpeza do backdoor GITSHELLPAD
    # -------------------------------------------------
    # 1. Solte um edgehost.exe de marcador de posição (qualquer executável benigno)
    $src = "$env:SystemRootSystem32notepad.exe"
    $dst = "$env:TEMPedgehost.exe"
    Copy-Item -Path $src -Destination $dst -Force
    
    # 2. Lançar edgehost.exe via cmd /c (corresponde ao padrão de cmd_cmd)
    $proc = Start-Process -FilePath "cmd.exe" -ArgumentList "/c `"$dst`"" -PassThru
    
    # 3. Aguarde alguns segundos para garantir que o processo esteja ativo
    Start-Sleep -Seconds 5
    
    # 4. Limpeza: mate o processo edgehost.exe usando taskkill (corresponde ao padrão de taskkill_cmd)
    $pid = $proc.Id
    cmd /c "taskkill /F /PID $pid"
    
    # 5. Remova o arquivo solto
    Remove-Item -Path $dst -Force
  • Comandos de Limpeza:

    # Garanta que qualquer instância de edgehost.exe remanescente seja terminada
    Get-Process -Name "edgehost" -ErrorAction SilentlyContinue | Stop-Process -Force
    
    # Apague o binário temporário se ainda estiver presente
    $tempPath = "$env:TEMPedgehost.exe"
    if (Test-Path $tempPath) { Remove-Item $tempPath -Force }