Ataques APT Visam o Governo da Índia com GOGITTER, GITSHELLPAD e GOSHELL | Parte 1
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.
Fluxo de Ataque
Detecções
Tentativa Possível de Comunicações de Domínio de Pesquisa de IP (via dns)
Ver
Processo Suspeito Utiliza um URL na Linha de Comando (via cmdline)
Ver
Uso Suspeito do CURL (via cmdline)
Ver
Possível Enumeração de Sistema (via cmdline)
Ver
Possível Enumeração de Conta ou Grupo (via cmdline)
Ver
Arquivos Extraídos Suspeitos de um Arquivo (via file_event)
Ver
Possível Descoberta de Configuração de Rede de Sistema (via cmdline)
Ver
IOCs (HashSha1) para detectar: Ataques APT visando o governo indiano usando GOGITTER, GITSHELLPAD e GOSHELL | Parte 1
Ver
IOCs (HashMd5) para detectar: Ataques APT visando o governo indiano usando GOGITTER, GITSHELLPAD e GOSHELL | Parte 1
Ver
IOCs (HashSha256) para detectar: Ataques APT visando o governo indiano usando GOGITTER, GITSHELLPAD e GOSHELL | Parte 1
Ver
Detecção do Backdoor GITSHELLPAD e Comandos de Limpeza [Criação de Processos do Windows]
Ver
Detecção do Downloader GOGITTER e Comunicação C2 [Conexão de Rede do Windows]
Ver
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 usandotaskkill /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 }