O blog de segurança da FireAI

Por FireAI Security & Research Team · Publicado

Ransomware no Mac: uma defesa em camadas que resiste de verdade

Ransomware no Mac: uma defesa em camadas que resiste de verdade

A maioria dos artigos sobre ransomware no Mac começa por o desvalorizar («os Macs não apanham ransomware») ou por o empolar («os ataques estão a explodir»). Nenhuma das duas posturas é honesta. O registo documentado é curto, específico e merece uma leitura atenta, porque diz exactamente para que serve cada camada de uma defesa. Este artigo percorre esse registo, depois as camadas, e é explícito sobre qual delas uma firewall cobre e quais não cobre.

O que aconteceu realmente no macOS

KeRanger, Março de 2016. A Unit 42 da Palo Alto Networks relatou a 6 de Março de 2016 que um instalador comprometido do cliente BitTorrent Transmission, descarregado do próprio sítio do projecto, transportava o primeiro ransomware totalmente funcional para OS X. Estava assinado com um certificado de programador válido, o que lhe permitiu passar pelo Gatekeeper. O seu comportamento é a parte a reter: segundo a Unit 42, esperou três dias, depois ligou-se aos seus servidores de comando e controlo através da rede Tor, e só depois disso começou a cifrar ficheiros. A Apple revogou o certificado e actualizou o XProtect em poucos dias.

ThiefQuest, também chamado EvilQuest, Junho de 2020. A Objective-See, de Patrick Wardle, publicou a sua primeira análise a 29 de Junho de 2020, descrevendo uma amostra que se propagava através de instaladores trojanizados de software pirateado e que persistia através de launch agents e daemons. A ThreatDown (então Malwarebytes) relatou no dia seguinte que os instaladores pirateados incluíam o Little Snitch e o Mixed In Key. A cifragem era quase um pormenor secundário: a amostra transportava também um keylogger e abria uma reverse shell para um servidor de comando e controlo, razão pela qual os investigadores lhe mudaram o nome. Era um ladrão de dados disfarçado de ransomware.

LockBit, Abril de 2023. O BleepingComputer relatou a 16 de Abril de 2023 que tinham sido encontrados encriptadores compilados para macOS do LockBit, na altura uma das maiores operações de ransomware-as-a-service. Os investigadores que examinaram as versões concluíram que se tratava muito provavelmente de versões de teste, com referências a sistemas incompatíveis e partes em falta de funcionalidades específicas do macOS, e que não estavam prontas para ataques reais. A história importa menos pelo que a versão fazia do que pelo que sinalizava: uma grande operação criminosa tinha decidido que o Mac merecia um orçamento de engenharia.

Três casos em sete anos não são uma epidemia. Mas cada um deles entrou por uma via que ainda hoje existe: um descarregamento de confiança trocado discretamente, software pirateado e uma cadeia de abastecimento criminosa industrializada. Uma defesa em camadas constrói-se à volta dessas vias, não à volta de um número de manchete.

Primeira camada: impedir a execução de código não fiável

A própria documentação de segurança da plataforma da Apple descreve a protecção do macOS contra software hostil em três fases: impedir que arranque (a App Store, o Gatekeeper e a notarização), bloquear a sua execução (as mesmas ferramentas mais o XProtect) e remediar depois de ter sido executado (novamente o XProtect). Foi esta a camada que travou o KeRanger em poucos dias, assim que a Apple revogou o certificado. É também a camada que o software pirateado existe para derrotar: todas as vítimas do ThiefQuest tinham contornado deliberadamente o Gatekeeper para instalar uma aplicação pirateada. O controlo mais eficaz contra ransomware num Mac não é, portanto, um produto. É uma política: nada de software pirateado, nada vindo de um torrent, e nenhum «clique direito, Abrir» para forçar a passagem por um aviso do Gatekeeper a menos que saiba exactamente porque o aviso apareceu.

Segunda camada: vigiar a rede, porque o ransomware fala

A cifragem é o último passo, não o primeiro. O MITRE ATT&CK lista-a como Data Encrypted for Impact (T1486), uma técnica da fase de Impacto, e as fases anteriores envolvem a rede. Uma amostra vai buscar uma chave ou instruções a um servidor de comando e controlo; pode exfiltrar ficheiros antes de os cifrar, para que o resgate possa também ameaçar com a publicação, o que o ATT&CK cataloga como Exfiltration Over C2 Channel (T1041); o ThiefQuest chegou a correr uma reverse shell. O KeRanger ficou em silêncio durante três dias e depois fez a sua primeira ligação de saída através do Tor. Essa primeira ligação é o que uma firewall por aplicação está posicionada para ver.

É aqui que o FireAI se encaixa, e o encaixe é estreito mas real. O FireAI não detecta cifragem. Não vigia ficheiros a mudar, não analisa processos nem memória e não consegue decifrar nada. O que faz é tratar cada ligação de saída como uma decisão. Um binário que nunca se ligou antes desencadeia um pedido de autorização, com a razão do modelo local apresentada ao lado; o mesmo modelo pode bloquear ou assinalar por si próprio uma ligação de uma aplicação desconhecida para um destino suspeito. Os feeds de threat intelligence que o FireAI aplica localmente incluem a lista de nós de saída Tor, abuse.ch, Spamhaus, FireHOL e listas de phishing, pelo que uma primeira ligação a infra-estruturas criminosas conhecidas é bloqueada por regra e não por juízo. E se suspeitar que algo está a correr, o interruptor de corte (kill switch) corta o acesso à Internet mantendo a rede local, o que quebra a ligação de comando e controlo sem desligar da corrente uma máquina de que pode precisar para análise forense.

Sejamos claros quanto aos modos de falha. Uma amostra que cifra sem nunca se ligar, usando uma chave embutida no seu próprio código, é invisível para uma firewall. Uma amostra que usa uma aplicação já aprovada, um navegador por exemplo, para chegar ao seu servidor confunde-se com o tráfego permitido. Uma firewall reduz as probabilidades de o ataque ser silencioso e completo; não torna a cifragem impossível.

Terceira camada: cópias de segurança fora do alcance do atacante

Se um evento de cifragem é uma tarde má ou uma semana que acaba com um negócio é algo decidido inteiramente por esta camada. O #StopRansomware Guide da CISA coloca-a em primeiro lugar entre os passos de preparação: manter cópias de segurança offline e cifradas dos dados críticos e testá-las regularmente, e considerar armazenamento imutável que proteja os dados guardados sem precisar de um ambiente separado. A palavra que faz o trabalho é offline. Um disco Time Machine permanentemente ligado é um volume montado, e um volume montado é um alvo; uma pasta de sincronização na nuvem não é cópia de segurança nenhuma se sincronizar fielmente as versões cifradas dos seus ficheiros por cima dos originais.

Num Mac a versão prática é simples. O guia da Apple para o Time Machine explica como configurar cópias de segurança automáticas para um disco externo ou para um volume de rede suportado. Alterne dois discos e mantenha um deles desligado, ou pelo menos ejecte o disco entre cópias. Guarde uma segunda cópia num sítio que crie versões dos ficheiros em vez de os espelhar, para que a versão limpa de ontem sobreviva à substituição de hoje. Depois teste o restauro de um ficheiro real, a partir do disco desligado, para saber que o processo funciona antes de precisar dele sob pressão. O FireAI não tem qualquer papel nesta camada, e vale a pena dizê-lo: nenhuma firewall faz cópias de segurança do que quer que seja.

Quarta camada: limitar o que um único Mac consegue alcançar

Nas empresas, o ransomware faz a maior parte dos estragos no armazenamento partilhado, e um Mac com uma partilha montada pode cifrar tudo aquilo em que consegue escrever. Dê às pessoas acesso de escrita apenas às partilhas que realmente usam, e dê às contas de serviço credenciais próprias, para que um único início de sessão comprometido não abra todo o servidor de ficheiros. No próprio Mac, as regras por aplicação do FireAI permitem-lhe decidir quais as aplicações que podem sequer chegar ao seu NAS, aos seus anfitriões de armazenamento na nuvem ou à rede do escritório: um binário desconhecido que tente chegar ao servidor de ficheiros na porta 445 tem de passar por uma regra que nunca lhe foi concedida. Os modos de segurança mais rigorosos, Paranoid e Under attack, vão mais longe e recusam por completo o acesso à rede a aplicações não assinadas.

Se acontecer mesmo assim

  • Desligue primeiro o Mac da rede. O interruptor de corte do FireAI faz isto mantendo a rede local disponível; desligar o cabo fá-lo de forma mais completa.
  • Não pague antes de ter verificado as suas cópias de segurança. O guia da CISA percorre o isolamento, a triagem e a comunicação antes de qualquer decisão sobre um resgate.
  • Preserve a máquina. Apagá-la destrói as provas que lhe dizem como a amostra entrou e o que enviou para fora.
  • Comunique o incidente. Nos Estados Unidos, à CISA ou ao FBI; em França, à Cybermalveillance.gouv.fr e com uma queixa à polícia; noutros países, ao CERT nacional.
  • Restaure a partir da cópia offline para uma instalação limpa, não para o sistema comprometido.

O que «defesa completa» significa honestamente

Nenhuma ferramenta isolada é uma defesa contra ransomware, e qualquer fornecedor que diga o contrário está a vender uma camada como se fossem quatro. O Gatekeeper e a sua própria disciplina nos descarregamentos impedem a execução da maior parte do código hostil. Uma firewall por aplicação obriga o código que chega a correr a pedir antes de falar, e bloqueia os destinos que já são conhecidos como criminosos. As cópias de segurança offline tornam a cifragem sobrevivível. O privilégio mínimo nas partilhas impede que um Mac comprometido se torne um incidente para todo o escritório. As camadas sobrepõem-se de propósito, porque cada uma tem uma falha que as outras cobrem. É este o aspecto de uma defesa que resiste: não impenetrável, mas construída para que nenhuma falha isolada seja fatal.

O papel do FireAI e da HisnLabs

As duas famílias de ransomware para Mac mais bem documentadas, KeRanger e ThiefQuest, falaram ambas com um servidor antes ou durante a cifragem — e vigiar essa conversa, vinda de um binário que nunca se ligou antes, é a única parte da defesa que uma firewall por aplicação como o FireAI pode honestamente reivindicar.

O FireAI é o produto da HisnLabs: uma firewall com IA que corre diretamente no seu Mac. Mostra, em linguagem clara, cada ligação que as suas aplicações fazem e deixa-o decidir o que sai do seu Mac — a IA funciona localmente, pelo que o seu tráfego nunca é enviado para nós nem para mais ninguém. A equipa de investigação em segurança da HisnLabs é quem mantém essas decisões fiáveis: cataloga que domínios são simples telemetria e quais são um serviço real, acompanha o país e a rede por detrás de uma ligação e treina o modelo local (a funcionalidade Autopilot) com padrões de tráfego reais, sem que nada disso saia do seu Mac.

Pode ler as decisões técnicas por detrás dele, ou experimentar o FireAI durante 17 dias, em FireAI, da HisnLabs.

Fontes