Dropping Elephant APT: Táticas e Ferramentas de Espionagem do Patchwork
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
Dropping Elephant, também conhecido como Patchwork, é um grupo APT focado em espionagem que tem como alvo organizações governamentais e de defesa. O grupo depende de cadeias de ataque em múltiplas etapas envolvendo atalhos maliciosos do Windows, PowerShell ofuscado e aplicativos Android trojanizados. Suas operações usam técnicas avançadas como DLL side-loading, RATs residentes na memória e ofuscação em camadas para manter a persistência e exfiltrar dados sensíveis.
Investigação
O relatório examina a evolução das táticas do Dropping Elephant de 2015 até 2026, incluindo uma recente mudança para side-loading do Windows através do VLC e ferramentas de vigilância especializadas para Android. Analisa várias cadeias de entrega de malware, incluindo o carregador Donut e cargas úteis criptografadas com AES-256-CBC. A investigação também documenta técnicas de ofuscação de linha de comando e injeção de processos usadas para escapar dos controles de segurança.
Mitigação
As organizações devem implantar uma proteção de endpoint robusta capaz de detectar a execução não autorizada de PowerShell e a atividade de side-loading de DLL. Monitorar tarefas agendadas suspeitas e criação de arquivos em diretórios graváveis como C:UsersPublic é essencial. A aplicação de políticas de controle de aplicativo rigorosas e gerenciamento de dispositivos móveis também pode reduzir a exposição a aplicativos Android trojanizados.
Resposta
Se for detectada atividade do Dropping Elephant, os endpoints do Windows e Android afetados devem ser isolados imediatamente para limitar o movimento lateral e a posterior exfiltração de dados. Os respondedores devem realizar forense de memória para identificar códigos injetados e revisar tarefas agendadas para persistência. Uma busca mais ampla também deve cobrir arquivos LNK suspeitos, DLLs maliciosas e conexões C2 não autorizadas.
Fluxo de Ataque
Detecções
Execução Suspeita a partir do Perfil do Usuário Público (via criação de processo)
Proof of Value
Schtasks Aponta para Diretório / Binário / Script Suspeito (via cmdline)
Proof of Value
Tentativa Possível de Comunicação de Lookup de Domínio de IP (via dns)
Proof of Value
Mudança Incomum de Página de Código em Execução (via cmdline)
Proof of Value
Tentativa Possível de Side-Loading de DLL do Libvlc (via image_load)
Proof of Value
Dropping Elephant APT – Carregamento de Código Reflexivo e Injeção de Shellcode [Windows Sysmon]
Proof of Value
Detecção de Script PowerShell Ofuscado pelo Dropping Elephant APT [Windows PowerShell]
Proof of Value
Execução de Simulação
Pré-requisito: O Check de Telemetria & Baseline Pré-voo deve ter sido aprovado.
Rationale (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 exatamente a telemetria esperada pela lógica de detecção. Exemplos abstratos ou não relacionados levarão a erros de diagnóstico.
-
Narrativa e Comandos de Ataque: O adversário visa baixar uma carga útil de segunda etapa enquanto minimiza a pegada do comando de download. Para escapar da detecção por filtros de string simples que buscam por
Invoke-WebRequestoriwr, o atacante usa fragmentação de string:iw''r. Além disso, o atacante suprime a barra de progresso para evitar artefatos de IU que possam alertar um usuário. Uma vez que a carga útil é entregue e executada via mecanismo de persistência baseado em atalho, o atacante exclui o atalhoGRES3001.lnkpara limpar os vestígios do ponto de entrada. -
Script de Teste de Regressão:
# 1. Criar um arquivo fictício para simular a exclusão do atalho $lnkPath = "$env:USERPROFILEDownloadsGRES3001.lnk" New-Item -Path $lnkPath -ItemType File -Force # 2. Executar a sequência de comandos ofuscada projetada para acionar a regra # Isso combina o IWR fragmentado, a supressão de progresso e a exclusão do arquivo. powershell.exe -Command "$ProgressPreference = 'SilentlyContinue'; iw''r -Uri 'http://localhost/test.txt'; Remove-Item -LiteralPath "$env:USERPROFILEDownloadsGRES3001.lnk" -Force" -
Comandos de Limpeza:
# Remover quaisquer artefatos criados durante a simulação Remove-Item -Path "$env:USERPROFILEDownloadsGRES3001.lnk" -ErrorAction SilentlyContinue