As duas listas da OWASP que descrevem a segurança dos sistemas baseados em modelos de linguagem tratam a saída de dados do sistema como uma consequência central: o Top 10 for LLM Applications 2025 inclui a Divulgação de Informação Sensível como LLM02 [2], e o Top 10 for Agentic Applications for 2026, publicado a 9 de dezembro de 2025, menciona a exfiltração em oito das suas dez entradas [4]. Num Mac, essa exfiltração é uma ligação de rede. O FireAI 1.0.4 alarga o seu Agent profile de três agentes reconhecidos para 19, incluindo agentes executados dentro de node ou python, e este artigo expõe quais dos riscos da OWASP esse trabalho aborda e quais não aborda.

Contexto
Um agente de IA num Mac é executado com as permissões da conta que o inicia. Lê ficheiros, executa comandos de shell e abre ligações de rede, e decide o passo seguinte a partir do texto que lê, incluindo texto escrito por terceiros. A OWASP define a injeção de prompt como uma vulnerabilidade que «ocorre quando os prompts do utilizador alteram o comportamento ou a saída do LLM de formas não pretendidas», e inclui a «divulgação de informação sensível» entre os seus impactos [1].
O FireAI é uma firewall de rede. Não é executado dentro de um agente e não lê prompts, ficheiros nem o conteúdo de ligações cifradas. O que observa é qual o programa que abre cada ligação, o anfitrião de destino e quantos bytes são enviados [5]. O Agent profile, introduzido no FireAI 1.0.2, utiliza esses metadados para aprender onde cada agente se liga habitualmente, e assinala um destino nunca antes contactado ou um envio invulgarmente volumoso. O modo de segurança Agent profile, acrescentado na versão 1.0.3, bloqueia um novo destino até que o utilizador o autorize [6].
O que a OWASP descreve
Top 10 for LLM Applications 2025
- LLM01:2025 Injeção de prompt. O cenário de exemplo 2 descreve instruções ocultas numa página web que levam um modelo a «inserir uma imagem com ligação para um URL, conduzindo à exfiltração da conversa privada» [1].
- LLM02:2025 Divulgação de informação sensível. A entrada identifica «informação de identificação pessoal (PII), dados financeiros, registos de saúde, dados empresariais confidenciais, credenciais de segurança e documentos jurídicos» como a informação em causa [2].
- LLM06:2025 Agência excessiva. A entrada atribui o risco a funcionalidades, permissões e autonomia excessivas, e o seu exemplo descreve um e-mail recebido que leva um agente a percorrer a caixa de correio do utilizador e a reencaminhar informação sensível para o atacante [3].
Top 10 for Agentic Applications for 2026
- ASI01 Desvio do objetivo do agente: instruções ocultas em páginas web ou documentos «redirecionam silenciosamente um agente para exfiltrar dados sensíveis ou utilizar indevidamente ferramentas ligadas» [4].
- ASI02 Uso indevido e exploração de ferramentas: os agentes utilizam indevidamente ferramentas legítimas, «conduzindo à exfiltração de dados, à manipulação da saída das ferramentas ou ao sequestro de fluxos de trabalho». Os exemplos incluem um agente que encadeia ferramentas administrativas legítimas, entre elas o cURL, para enviar registos sensíveis para o exterior, e uma ferramenta de ping aprovada usada para divulgar dados através de consultas DNS [4].
- ASI04 Vulnerabilidades na cadeia de fornecimento agêntica: entre os exemplos, um pacote npm comprometido, instalado automaticamente por agentes de programação, que «exfiltrou chaves SSH e tokens de API» [4].
- ASI05 Execução inesperada de código: comandos de shell ocultos num prompt que o agente executa, «resultando em acesso não autorizado ao sistema ou na exfiltração de dados» [4].
- ASI10 Agentes desonestos: um agente que continua a enviar dados para o exterior após uma injeção de prompt indireta, tendo como mitigação uma camada comportamental que monitoriza desvios, incluindo «tentativas inesperadas de exfiltração de dados» [4].
Para o ASI02, a terceira mitigação do documento intitula-se Execution Sandboxes and Egress Controls e diz: «Aplicar listas de permissões de saída e negar todos os destinos de rede não aprovados» [4]. A mesma entrada pede perfis de privilégio mínimo por ferramenta que incluam listas de permissões de saída. Estas duas recomendações são as que uma firewall de rede no Mac pode pôr em prática.
O que o FireAI 1.0.4 reconhece
As versões anteriores reconheciam o Claude Code, a aplicação de secretária Claude e o Cursor pela sua assinatura de código, e o ChatGPT e o Codex pelo seu caminho. Os agentes executados dentro de um ambiente de execução de scripts não eram reconhecidos: para a firewall, o OpenClaw era node e o Aider era python [5]. O FireAI 1.0.4 lê os argumentos dos processos node, bun, deno e python para encontrar o script que executam, e acrescenta 14 agentes.
| Agente | Como o FireAI o reconhece |
|---|---|
| Claude Code, Claude, Cursor | Assinatura de código com o identificador de equipa do programador; o Claude Code também pela sua pasta de instalação |
| ChatGPT, Windsurf, Kiro, Trae, Goose, OpenClaw | O pacote de aplicação a partir do qual o programa é executado |
| Muse, da Meta | O identificador de assinatura da sua aplicação na Mac App Store |
| Codex, opencode, Crush, Goose, agente de linha de comandos do Cursor | O nome do programa nativo de linha de comandos |
| OpenClaw, Hermes Agent, Gemini CLI, GitHub Copilot CLI, Amp, Qwen Code, opencode, Aider, Codex, Claude Code | O script executado por node, bun, deno ou python, ou a pasta onde está instalado |
A OpenAI descreve os dots como agentes que funcionam no seu próprio computador na nuvem [8]. O seu tráfego no Mac passa pela aplicação ChatGPT, pelo que o FireAI o contabiliza como tráfego do ChatGPT. O Muse da Meta [9] é reconhecido pelo seu identificador da App Store.
O reconhecimento estende-se ao que um agente inicia. Quando uma shell, o git, o curl ou um instalador de pacotes abre uma ligação, o FireAI percorre a cadeia de processos-pai, até oito níveis, até encontrar um agente reconhecido, e regista a ligação sob esse agente [5]. É o caso que a OWASP descreve no ASI02, em que ferramentas legítimas como o cURL levam os dados para o exterior: a ferramenta é de confiança, mas o seu processo-pai é um agente.
Os navegadores web agênticos e as aplicações de terminal ficam deliberadamente de fora. Todo o seu tráfego contaria como tráfego do agente, e o modo Agent profile bloquearia então a navegação comum.
Correspondência entre os controlos e as entradas da OWASP
| Entrada OWASP | Controlo do FireAI | O que fica fora do seu alcance |
|---|---|---|
| LLM01, ASI01: instruções injetadas desviam o agente | Um pedido a um anfitrião que o agente nunca contactou é assinalado, ou bloqueado no modo Agent profile | A própria injeção; dados enviados para um destino que o agente já utiliza |
| LLM02: divulgação de informação sensível | Um pico de envio é assinalado: uma hora com pelo menos 4 vezes o volume da hora mais ativa do agente, e nunca abaixo de 25 MB | Fugas pequenas, como uma única chave ou token; o FireAI não consegue determinar se os dados são sensíveis |
| LLM06: agência excessiva | Regras por aplicação limitam os destinos que cada programa pode alcançar | Mensagens enviadas através de um serviço que o agente está autorizado a usar, como o seu fornecedor de correio |
| ASI02: ferramentas legítimas usadas para exfiltrar | Os processos-filho são atribuídos ao agente; o modo Agent profile funciona como uma lista de permissões de saída aprendida | Dados codificados em consultas DNS: o DNS nunca é bloqueado pelo modo Agent profile |
| ASI04, ASI05: um pacote ou comando executado pelo agente | As ligações do código que o agente executa são assinaladas ou bloqueadas como as do próprio agente | O código executado mais tarde, fora do agente, fica sujeito às regras comuns por aplicação |
| ASI10: um agente que continua a enviar dados para o exterior | Cada agente tem uma linha de base; os desvios em relação a ela são assinalados com uma frase em linguagem corrente | O comportamento aprendido durante os primeiros 3 dias passa a fazer parte da linha de base |
O alerta descreve os factos medidos pelo FireAI, por exemplo, que um agente nunca contactou um servidor e lhe enviou 40 MB. Quando o modelo de IA local está ativado, reformula esses factos numa frase. Não avalia se um destino é seguro; a decisão cabe ao utilizador [5].
As restantes entradas da lista de 2026, Abuso de identidade e de privilégios (ASI03), Envenenamento de memória e de contexto (ASI06), Comunicação insegura entre agentes (ASI07), Falhas em cascata (ASI08) e Exploração da confiança entre humano e agente (ASI09), dizem respeito ao que acontece dentro dos agentes e entre eles. Uma firewall de rede no Mac só observa as suas consequências quando estas terminam numa ligação.
Recomendações
- Deixar cada agente funcionar normalmente durante os primeiros 3 dias, para que a sua linha de base reflita o trabalho habitual e não uma experiência com uma nova ferramenta.
- Consultar regularmente o cartão de agentes de IA nas Sugestões. Um destino contactado pela primeira vez logo após o agente ter lido uma página web, um e-mail ou um repositório desconhecido corresponde ao padrão que a OWASP descreve no ASI01.
- Para um agente que trabalha com código ou documentos sensíveis, mudar para o modo de segurança Agent profile, de modo que os novos destinos fiquem bloqueados até serem autorizados [6].
- Manter os segredos fora do alcance do agente. O FireAI vê para onde vão os dados, não o que são, e não pode recuperar dados já enviados para um destino autorizado.
- Para um agente que o FireAI não identifica, criar uma regra para o programa sob o qual é executado [7].
Relevância para o FireAI
O FireAI aplica no próprio Mac a vertente de saída das orientações da OWASP: uma lista de permissões por agente, aprendida em vez de escrita manualmente, com um alerta ou um bloqueio quando é violada. Funciona apenas a partir dos metadados das ligações, e nada sobre a atividade do utilizador sai do Mac. Não impede a injeção de prompt, não inspeciona o que um agente envia e não substitui o isolamento em sandbox, as credenciais de privilégio mínimo nem a aprovação humana de ações de elevado impacto, que os documentos da OWASP também recomendam.
Limitações
- O FireAI reconhece os 19 agentes acima indicados, não todos os agentes. Qualquer outro programa, agente ou não, está abrangido pelos pedidos de ligação e pelas regras por aplicação comuns do FireAI, mas não tem linha de base nem gera alertas de agente.
- O reconhecimento por caminho ou por nome de script é uma etiqueta para a linha de base, não uma prova de identidade. Um programa pode copiar o nome da pasta de outro agente. Apenas o Claude Code, o Claude e o Cursor são verificados contra o identificador de equipa do seu programador; o identificador de equipa do Muse ainda não foi verificado numa cópia instalada.
- Um processo-filho que termine em cerca de um décimo de segundo pode desaparecer antes de o FireAI percorrer os seus processos-pai, e a sua ligação não é então atribuída ao agente.
- Durante os primeiros 3 dias nada é assinalado, e tudo o que o agente fizer nesse período passa a ser considerado normal para ele.
- Os destinos são agrupados por domínio. Os dados enviados para um novo servidor num domínio que o agente já utiliza, ou para um serviço partilhado como um alojamento de código, não são assinalados.
- O FireAI não consegue ler prompts, o conteúdo das ferramentas MCP, skills ou tráfego cifrado, e não vê que ficheiros um agente abre.
- A correspondência acima é a leitura que a HisnLabs faz dos documentos da OWASP. A OWASP não analisou nem endossou o FireAI.
O papel do FireAI e da HisnLabs
Um agente no seu Mac pode ser desviado por uma instrução oculta. O FireAI mostra, e pode bloquear, para onde seguem os seus dados a seguir.
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 FireAI Pilot) 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.