Malware KandyKorn para macOS mira engenheiros de blockchain

Segundo a Elastic Security, o novo Malware KandyKorn para macOS mira engenheiros de blockchain de uma plataforma de troca de criptomoedas.

Um novo malware macOS apelidado de ‘KandyKorn’ foi detectado em uma campanha atribuída ao grupo de hackers norte-coreano Lazarus, visando engenheiros de blockchain de uma plataforma de troca de criptomoedas.

Malware KandyKorn para macOS mira engenheiros de blockchain

Malware KandyKorn para macOS mira engenheiros de blockchain
Malware KandyKorn para macOS mira engenheiros de blockchain

Os invasores se fazem passar por membros da comunidade de criptomoedas nos canais Discord para espalhar módulos baseados em Python que desencadeiam uma cadeia de infecção KandyKorn em vários estágios.

A empresa de segurança Elastic Security descobriu e atribuiu os ataques ao Lazarus com base em sobreposições com campanhas anteriores relativas às técnicas empregadas, infraestrutura de rede, certificados de assinatura de código e regras personalizadas de detecção do Lazarus.

O ataque, que começa no Discord, começa com ataques de engenharia social aos alvos para induzi-los a baixar um arquivo ZIP malicioso chamado ‘Cross-platform Bridges.zip’.

A vítima é enganada ao acreditar que está baixando um bot de arbitragem legítimo, projetado para geração automatizada de lucros a partir de transações de criptomoeda.

Em vez disso, o script Python contido (‘Main.py’) importará 13 módulos de um número igual de scripts no ZIP, iniciando a primeira carga útil, ‘Watcher.py’.

Malware KandyKorn para macOS mira engenheiros de blockchain
Malware KandyKorn para macOS mira engenheiros de blockchain – Scripts Python no ZIP (Elastic)

Watcher.py é um downloader que descompacta e executa um segundo script Python chamado ‘testSpeed.py’ junto com outro arquivo Python chamado ‘FinderTools’, baixado de um URL do Google Drive.

FinderTools é um conta-gotas que busca e inicia um binário ofuscado chamado ‘SugarLoader’, que aparece sob dois nomes e instâncias, como executáveis ​​.sld e .log Mach-O.

Sugarloader estabelece uma conexão com o servidor de comando e controle (C2) para obter e carregar a carga final, KandyKorn, na memória usando carregamento binário reflexivo.

Diagrama da cadeia de ataque do Lazarus
Malware KandyKorn para macOS mira engenheiros de blockchain – Diagrama da cadeia de ataque do Lazarus (Elástico)

No estágio final do ataque, é usado um carregador conhecido como HLoader, que personifica o Discord e usa técnicas de assinatura de código binário do macOS vistas em campanhas anteriores do Lazarus.

O HLoader estabelece persistência para o SugarLoader sequestrando o aplicativo Discord real no sistema infectado, seguindo uma série de ações de renomeação binária.

“Observamos o agente da ameaça adotando uma técnica que não vimos antes para obter persistência no macOS, conhecida como sequestro de fluxo de execução”, explica Elastic.

Especificamente, o HLOADER realiza as seguintes operações no lançamento:

  • Renomeia-se de Discord para MacOS.tmp
  • Renomeia o binário legítimo do Discord de .lock para Discord
  • Executa Discord e .log usando NSTask.launchAndReturnError
  • Renomeia ambos os arquivos de volta aos seus nomes iniciais

Esquema de renomeação de arquivos usado para persistência
Malware KandyKorn para macOS mira engenheiros de blockchain – Esquema de renomeação de arquivos usado para persistência (Elastic)

Kandy Korn
KandyKorn é uma carga avançada de estágio final que permite ao Lazarus acessar e roubar dados do computador infectado.

Ele opera em segundo plano como um daemon, aguardando comandos do servidor C2 e evitando o envio de pulsações para minimizar seu rastreio no sistema.

KandyKorn suporta os seguintes 16 comandos:

  1. 0xD1: encerra o programa.
  2. 0xD2: Reúne informações do sistema.
  3. 0xD3: Lista o conteúdo do diretório.
  4. 0xD4: Analisa as propriedades do diretório.
  5. 0xD5: Carrega arquivos do C2 para o computador da vítima.
  6. 0xD6: Exfiltra arquivos da vítima para o C2.
  7. 0xD7: Arquiva e exfiltra diretórios.
  8. 0xD8: Exclui arquivos com segurança usando a substituição por zeros.
  9. 0xD9: Lista todos os processos em execução.
  10. 0xDA: mata um processo especificado.
  11. 0xDB: Executa comandos do sistema através de um pseudoterminal.
  12. 0xDC: Recupera saídas de comando.
  13. 0xDD: Inicia um shell interativo. 
  14. 0xDE: Recupera a configuração atual. 
  15. 0xDF: Atualiza a configuração C2.
  16. 0xE0: Pausa as operações temporariamente.
Código de execução de comando do KandyKorn
Malware KandyKorn para macOS mira engenheiros de blockchain – Código de execução de comando do KandyKorn (Elastic)

Em resumo, KandyKorn é um backdoor particularmente furtivo, capaz de recuperar dados, listar diretórios, fazer upload/download de arquivos, exclusão segura, encerramento de processos e execução de comandos.

O setor de criptomoedas continua sendo o alvo principal do Lazarus, motivado principalmente por ganhos financeiros e não por espionagem, que é seu outro foco operacional principal.

A existência do KandyKorn ressalta que o macOS está bem dentro do alcance do Lazarus, mostrando a notável capacidade do grupo de ameaças de criar malware sofisticado e discreto, feito sob medida para computadores Apple.

Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.