A América Latina é frequentemente ignorada quando se trata de ameaças persistentes e grupos cujos alvos são selecionados a partir de motivações políticas. No entanto, há uma operação de ciberespionagem em andamento contra organizações de alto perfil que conseguiram permanecer em sigilo. O grupo por trás desses ataques roubou gigabytes de documentos confidenciais, principalmente de agências governamentais. No momento da publicação deste post, o grupo ainda permanecia ativo, apresentando regularmente alterações no malware, na infraestrutura e nas campanhas de spearphishing.

A ESET tem monitorado uma nova versão do Machete (o conjunto de ferramentas do grupo baseadas em Python) vista pela primeira vez em abril de 2018. Embora a principal funcionalidade do backdoor permaneça a mesma das versões anteriores, a ameaça ganhou novas características ao longo de um ano.

Alvos de ataque

Do final de março até o final de maio de 2019, os pesquisadores da ESET observaram que havia mais de 50 computadores comprometidos que estavam se comunicando ativamente com o servidor C&C. Isso equivale a gigabytes de dados roubados semanalmente. Mais da metade desses dispositivos pertenciam a agências governamentais. A maioria das organizações apontadas pelo malware Machete são de países da América Latina, como é o caso da Venezuela (75%), Equador (16%), Colômbia (7%) e Nicarágua (2%). A distribuição desse malware nesses países pode ser vista na Figura 1.

Figura 1. Países com vítimas do Machete em 2019.

Os operadores por trás do Machete

Os operadores do machete usam técnicas eficazes de spearphishing. Sua longa série de ataques, concentrados em países da América Latina, permitiu que eles reunissem inteligência e refinassem suas táticas ao longo dos anos. Os atacantes conhecem bem seus alvos, como se esconder entre comunicações periódicas e quais documentos são mais valiosos para roubar. O Machete não apenas extrai documentos de escritório, mas também tipos de arquivos especializados que são usados ​​por software de sistemas de informações geográficas (GIS).

O grupo Machete envia e-mails bastante específicos diretamente para suas vítimas, sempre mudando de um alvo para outro. Estes e-mails contêm um link ou anexo com um arquivo compactado de extração automática que executa o malware ao abrir um documento que funciona como uma isca.

Para enganar seus alvos desprevenidos, os operadores do Machete usam documentos reais roubados anteriormente. A ESET viu casos em que documentos roubados datados em um determinado dia foram empacotados com malware e usados ​​no mesmo dia como isca para fazer novas vítimas.

Os tipos de documentos usados ​​como isca geralmente são legitimamente enviados e recebidos várias vezes ao dia em organizações escolhidas como alvos. Os atacantes aproveitam isso para criar e-mails de phishing bastante convincentes.

Principais características

O grupo Machete é muito ativo e introduziu várias alterações no malware desde o lançamento de uma nova versão em abril de 2018. As versões anteriores foram descritas pela Kaspersky em 2014 e pela Cylance em 2017. Na Figura 3, mostramos os componentes para a nova versão do malware Machete.

Figura 2. Componentes do Machete.

A primeira parte do ataque consiste em um downloader que é apresentado como um arquivo de extração automática, criado com o 7z SFX Builder. Depois que o arquivo é descompactado pelo código de extração automática, o extrator abre um arquivo PDF ou documento do Microsoft Office que funciona como uma isca e, em seguida, executa o downloader executável do arquivo. Esse executável é outro arquivo de extração automática que contém o binário do downloader (um componente py2exe) e um arquivo de configuração com a URL de download, que é criptografada.

Todas as URLs de download que vimos apontam para o Dropbox ou para o Google Docs. Todos os arquivos baixados foram de extração automática (RAR SFX) e contêm um arquivo de configuração (criptografado) e os componentes do backdoor (executáveis ​​py2exe). No entanto, desde maio de 2019, os operadores do Machete pararam de usar os downloaders e começaram a incluir o arquivo isca e os componentes do backdoor no mesmo arquivo.

Os binários do Py2exe podem ser decompilados para obter o código em Python. Além disso, todos os componentes (downloaders e backdoors) foram ofuscados com pyobfuscate - algo que também foi usado em versões anteriores do malware. Na Figura 3 podemos ver parte de um desses scripts ofuscados.

Figura 3. Scripts ofuscados com pyobfuscate.

Desde agosto de 2018, uma camada de ofuscamento extra foi adicionada aos componentes do Machete. Os scripts agora contêm um bloco de texto comprimido com zlib, anterior a codificação em base64, que após ser decodificada, resulta em um script como o da Figura 3. A primeira camada de ofuscação é criada usando o pyminifier com o parâmetro -gzip.

Componentes do backdoor

O dropper do Machete é um executável RAR SFX. Três componentes py2exe são droppeados: GoogleCrash.exe, Chrome.exe e GoogleUpdate.exe. Um único arquivo de configuração é droppeado (jer.dll), que contém o texto codificado em base64 que corresponde a strings criptografadas com AES. Um esquema que resume os componentes pode ser visto na Figura 4.

Figura 4. Componentes do backdoor py2exe do Machete.

O GoogleCrash.exe é o principal componente do malware - programa a execução dos outros dois componentes e cria tarefas no Programador de Tarefas do Windows para obter persistência.

O componente Chrome.exe é responsável por coletar dados do computador comprometido e tem a capacidade de:

  • Produzir capturas de tela
  • Registrar as teclas digitadas
  • Acessar a área de transferência
  • Criptografar em AES e exfiltrar documentos
  • Detectar novas unidades inseridas e copiar arquivos
  • Executar outros binários baixados do servidor C&C
  • Obter arquivos específicos do sistema
  • Obter dados de perfil de usuário de vários navegadores
  • Coletar informações sobre a localização geográfica das vítimas em redes Wi-Fi próximas
  • Realizar a exfiltração física em unidades removíveis

Os operadores do Machete estão interessados ​​em obter certos tipos de arquivos dos computadores comprometidos. Portanto, além dos documentos do Microsoft Office, os seguintes tipos de arquivos são procurados ​​nas diferentes unidades:

  • Arquivos de backup
  • Arquivos de banco de dados
  • Chaves criptográficas (PGP)
  • Documentos do OpenOffice
  • Imagens vetoriais
  • Arquivos para sistemas de informação geográfica

Com relação à geolocalização das vítimas, o Chrome.exe coleta dados em redes Wi-Fi próximas e os envia para a API do Serviço de Localização do Mozilla. Em resumo, esse aplicativo fornece coordenadas de geolocalização quando outras fontes de dados são fornecidas, como beacons de Bluetooth, antenas de celular ou pontos de acesso Wi-Fi. Em seguida, o malware usa as coordenadas de latitude e longitude para criar uma URL do Google Maps. Parte do código pode ser visto na Figura 5.

Figura 5. Código de geolocalização.

A vantagem de usar o Serviço de Localização do Mozilla é que a ferramenta permite a localização geográfica sem um GPS real e pode ser mais preciso do que outros métodos. Portanto, embora um endereço IP possa ser usado para obter um local aproximado, o mesmo não é tão preciso. Por outro lado, se os dados estiverem disponíveis para a área, o Serviço de Localização do Mozilla poderá fornecer informações como, por exemplo, em qual prédio o alvo está localizado.

O componente GoogleUpdate.exe é responsável pela comunicação com o servidor C&C remoto. A configuração para estabelecer a conexão é lida no arquivo jer.dll: nome de domínio, nome de usuário e senha. O principal meio de comunicação do Machete é via FTP, embora a comunicação HTTP tenha sido implementada como uma alternativa em 2019.

Este componente carrega arquivos criptografados em subdiretórios diferentes no servidor C&C, mas também recupera arquivos específicos que os operadores do Machete colocaram no servidor. Desta maneira, o malware pode atualizar tanto sua configuração, seus arquivos binários maliciosos quanto suas listagens de arquivos, mas também pode baixar e executar outros binários.

Conclusão

O grupo Machete está operando com mais força do que nunca, mesmo depois que os pesquisadores publicaram descrições técnicas e indicadores de comprometimento deste malware. A ESET acompanha esta ameaça há meses e observou várias mudanças, às vezes de forma semanal.

No momento desta publicação, a última alteração introduzida no malware foram seis componentes do backdoor, que não são mais executáveis py2exe. Neste caso, estes são scripts Python ofuscados, um executável original do Python 2.7 e todas as bibliotecas usadas, que são empacotadas em um arquivo de extração automática.

Vários artefatos que vimos no código do Machete e na infraestrutura subjacente nos levam a pensar que é um grupo de língua espanhola. Além disso, a presença de código para exfiltrar dados para unidades removíveis quando há acesso físico a um computador comprometido pode indicar que os operadores do Machete estão presentes em um dos países alvo de seus ataques, embora não possamos ter certeza desta afirmação.

As soluções da ESET detectam essa ameaça como uma variante do Python/Machete.

Para qualquer dúvida ou para nos enviar amostras relacionadas ao ataque, entre em contato conosco através do e-mail threatintel@eset.com.