A maioria dos donos de um Mac acredita que a sua máquina vem com uma firewall a funcionar. E vem, no sentido estrito que a Apple documenta: um filtro que, nas palavras da própria Apple, o protege de «contactos indesejados iniciados por outros computadores quando está ligado à internet ou a uma rede». Essa frase é toda a história, e vale a pena lê-la duas vezes. A firewall integrada no macOS trata das ligações que chegam ao seu Mac. Não diz nada sobre o que o seu Mac envia para fora.
Este artigo é sobre essa segunda metade: a falha de saída, porque importa mais do que antes, o que é realmente uma firewall de saída moderna para macOS e onde um revisor de IA local ajuda de facto. É também, deliberadamente, sobre os limites dessa abordagem. A HisnLabs faz o FireAI, uma firewall com IA para Mac, pelo que temos aqui um interesse óbvio; a forma como mantemos a honestidade é indicar a fonte de cada afirmação e ser tão claros sobre o que uma firewall não pode fazer como sobre o que pode.
O que a firewall da Apple faz, e o que não faz
O Manual do Utilizador do macOS da Apple coloca a firewall em Definições do Sistema, na secção Rede. O guia de segurança da plataforma descreve o que a funcionalidade controla: pode bloquear todas as ligações de entrada independentemente da aplicação, permitir automaticamente que software integrado e assinado aceite ligações de entrada, permitir ou recusar o acesso de entrada a aplicações específicas que indique, e ativar o modo furtivo, que impede o Mac de responder a sondagens ICMP e a varrimentos de portas. Cada uma dessas opções diz respeito ao tráfego que entra.
É também uma definição que a Apple lhe pede para ativar. O Manual do Utilizador está escrito como instruções para ligar a proteção da firewall, não como a descrição de algo que já está a correr; se nunca abriu esse painel, vale a pena verificá-lo hoje. E mesmo depois de ativada, o desenho continua a ser apenas de entrada. O guia de segurança da Apple não menciona de todo a filtragem de ligações de saída, porque simplesmente não é para isso que esta funcionalidade serve.
Nada disto é uma crítica à Apple. Um filtro de entrada é a primeira camada certa: fecha a porta aos estranhos que batem a partir da rede. Mas num portátil que passa o dia entre o Wi-Fi de casa, as redes do escritório e os cafés, a maior parte do risco hoje vem de software que já está lá dentro e está autorizado a falar para fora.
A falha: ninguém vigia o que sai
Pense no que corre realmente num Mac de trabalho: as aplicações que instalou, os processos auxiliares que elas lançam, os utilitários da barra de menus, os verificadores de atualizações, as extensões do browser, algumas ferramentas de linha de comandos de um tutorial que seguiu uma vez. Cada um deles pode abrir uma ligação a qualquer servidor na internet, e o macOS vai permiti-lo. A firewall de entrada não é consultada, porque a ligação começa do seu lado.
É assim que a telemetria comum sai da máquina, que uma aplicação de notas sincroniza em silêncio com um servidor com o qual nunca concordou, e que uma ferramenta de roubo de credenciais, depois de ter conseguido correr, envia para casa o que recolheu. As próprias defesas da Apple contra programas nocivos, o Gatekeeper, a notarização e o XProtect, atuam no ponto em que o software é descarregado e aberto, e o guia de segurança da plataforma da Apple é explícito ao dizer que o XProtect «analisa apenas as aplicações que foram alteradas ou as aplicações na primeira abertura», usando regras de assinaturas. Essas camadas são valiosas; são também silenciosas quanto à rede. Se algo lhes escapar, ou se for simplesmente uma aplicação vulgar a portar-se mal, o único sítio que resta para o apanhar é o momento em que tenta ligar-se.
O que é realmente uma firewall de saída no macOS
No macOS atual, uma firewall de terceiros não altera o kernel. A documentação para programadores da Apple descreve extensões de sistema que correm no espaço do utilizador e que podem ser distribuídas como extensões de rede, incluindo filtros de conteúdo. Um filtro de conteúdo vê cada fluxo de rede, juntamente com o processo que o abriu, e responde a uma pergunta: permitir ou descartar. Como corre como extensão de sistema, o macOS exige que a aprove em Definições do Sistema antes de poder fazer o que quer que seja, e pode voltar a desativá-la no mesmo sítio.
É essa arquitetura que torna possíveis as regras por aplicação. Uma regra pode dizer que determinada aplicação pode chegar a um domínio e a mais nada, que nunca pode usar uma determinada porta, ou que não pode ligar-se de todo. As melhores ferramentas ligam essas regras à assinatura de código da aplicação em vez de ao nome do ficheiro, para que um binário renomeado ou substituído não herde permissões que nunca lhe foram dadas. O FireAI funciona assim: as regras seguem a assinatura da aplicação, e pode permitir ou recusar por host, domínio, endereço IP ou porta.
Onde um revisor de IA local ajuda
O problema clássico das firewalls de saída não é a capacidade, mas a atenção. A primeira semana com uma ferramenta que pergunta a cada ligação é uma parede de caixas de diálogo, e a maioria das pessoas ou carrega em Permitir em tudo ou desinstala-a. As regras resolvem isto para as aplicações que conhece. Não fazem nada pela aplicação que instalou há dez minutos, que é precisamente aquela com que deveria ter cuidado.
É esta a tarefa restrita para a qual um revisor de IA serve. No FireAI, um pequeno modelo que corre no seu Mac revê as ligações de aplicações que ainda não têm regra. Olha para o que pode legitimamente ver: que aplicação está a pedir, se está assinada e por quem, o host e a porta de destino, se esse destino aparece num feed de ameaças, e como o pedido se compara com o que software semelhante faz normalmente. Depois bloqueia ou sinaliza a ligação e escreve o seu motivo em linguagem clara, para que o aviso que vê diga algo como «um utilitário não assinado está a tentar chegar a um endereço IP em bruto numa porta invulgar» em vez de um mero nome de host.
Duas escolhas de desenho importam mais do que o próprio modelo. Primeiro, a revisão acontece no dispositivo. O modelo do FireAI é uma transferência opcional de cerca de 1,5 GB e, depois disso, o seu tráfego nunca é enviado para lado nenhum para análise; uma firewall que carregasse os metadados das suas ligações para um serviço na nuvem para decidir se são seguras estaria a criar precisamente a fuga que afirma evitar. Segundo, cada decisão da IA torna-se uma regra visível que pode anular. O modelo é um assistente que redige uma decisão; continua a ser o utilizador quem a assina.
O que não pode fazer
- Não pode ler dentro do tráfego cifrado. Quase todas as ligações usam TLS, por isso um revisor vê a aplicação, o destino e a forma da ligação, não o conteúdo. Isso chega para julgar se uma aplicação devia estar a falar com determinado sítio; não chega para saber o que disse.
- Não pode conhecer a sua intenção. Se instalou deliberadamente uma ferramenta de partilha de ecrã, a ligação dela a um servidor de retransmissão está bem; a mesma ligação a partir de uma aplicação que não reconhece não está. O revisor dá-lhe o contexto para tomar essa decisão depressa. Não a toma por si no sentido de ter sempre razão, e é por isso que existe a opção de anular.
- Não é um antivírus. O FireAI não analisa ficheiros, não examina processos em memória, não remove nada do disco e não decifra ficheiros depois de um incidente de ransomware. Está na fronteira da rede, e em mais lado nenhum.
- Não pode travar um programa que nunca usa a rede. Uma ferramenta que apenas corrompe ficheiros locais, ou que espera offline, é invisível para qualquer firewall. É o argumento mais forte para manter o Gatekeeper, o XProtect e as atualizações do sistema em vez de os substituir.
Feeds de ameaças: a parte que não é IA, e não precisa de o ser
Grande parte do que as pessoas esperam de uma firewall «inteligente» é na verdade correspondência com listas, e as listas servem perfeitamente. Projetos como o abuse.ch, que publica o URLhaus, o ThreatFox e a SSL Blacklist como informação sobre ameaças mantida pela comunidade, e o Spamhaus Project, cuja lista DROP nomeia gamas de rede que não deveriam ser encaminhadas nem ter peering, mantêm dados públicos sobre infraestrutura usada para abusos. O FireAI pode aplicar feeds do abuse.ch, Spamhaus, Phishing Army, OpenPhish, FireHOL e da lista de nós de saída do Tor como listas de bloqueio de IP para todo o sistema, atualizadas e comparadas localmente no seu Mac.
Vale a pena manter clara a distinção. Um feed responde a «este destino já é conhecido como malicioso?». O modelo local responde a «esta ligação parece errada para esta aplicação, mesmo que ninguém tenha ainda reportado o destino?». Quer ambos, e quer que nenhum deles exija enviar o seu tráfego a terceiros.
Desempenho, privacidade e o preço do modelo
Um filtro de conteúdo acrescenta uma decisão a cada novo fluxo, não a cada pacote, por isso a navegação do dia a dia não parece diferente depois de as suas aplicações habituais terem regras. O modelo local é o componente mais pesado, e é por isso que o FireAI o mantém opcional: a firewall, as regras, os avisos, as listas de bloqueio e os feeds funcionam todos sem ele, e só descarrega o modelo se quiser o revisor. O FireAI requer macOS 14 ou posterior num Mac com Apple Silicon; ainda não há versão para Intel, embora esteja planeada.
Macs domésticos e Macs de empresa
Em casa, o valor é sobretudo a consciência: ver, no mapa-múndi em direto do FireAI, para onde as suas aplicações se ligam e travar as que não têm nenhuma razão para o fazer. Os modos de segurança tornam isso prático: Casa é permissivo, Café aperta as coisas em redes partilhadas, Paranoico e Sob ataque bloqueiam telemetria, rastreadores e aplicações não assinadas, e um interruptor de emergência corta o acesso à internet mantendo a sua rede local. Também pode escrever uma ordem em inglês ou em francês, «block Microsoft Teams» por exemplo, em vez de procurar numa lista de regras.
Numa pequena empresa, as funcionalidades úteis são as aborrecidas: uma proteção de dados não cifrados que impede números de cartão, palavras-passe e chaves de API de saírem por HTTP simples, e ficheiros de regras que pode exportar como texto legível e importar em cada Mac, para que cada máquina parta da mesma política. O FireAI ainda não tem uma consola de administração central nem um guia de implementação por MDM; ambos estão no roteiro, e os ficheiros de regras são a resposta honesta de hoje.
Como começar
Ative primeiro a firewall da Apple em Definições do Sistema; é gratuita e fecha o lado de entrada. Depois acrescente uma firewall de saída, seja o FireAI ou outra das várias ferramentas sérias para macOS, aprove a extensão de rede quando o macOS o pedir, e dê-lhe uma semana. Responda aos avisos das aplicações que reconhece, deixe as regras construírem-se, e leia os motivos que o revisor lhe dá para as aplicações que não reconhece. Depois dessa primeira semana o Mac fica em silêncio, e cada ligação que ainda provoca um aviso é uma sobre a qual queria genuinamente saber.
O papel do FireAI e da HisnLabs
Everything above is the reasoning behind FireAI: an outbound firewall for Apple silicon Macs whose reviewer runs on your own machine, explains itself in plain language, and can be overruled by you at any time.
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.
