Análises IA para segurança e conformidade
Guardrails para apps e agentes de IA: o que detectam, quanto custam e o que importa mais
Por Sheela ·
Assim que seu chatbot ou agente fica diante de clientes, qualquer desconhecido pode digitar o que quiser, e cada página web, e-mail ou documento que ele lê pode trazer instruções próprias. Guardrails são as checagens ao redor do modelo que filtram esse tráfego. Vale a pena tê-las e elas podem ser baratas, mas nenhuma vai salvar um agente que recebeu mais poder do que seu trabalho exige.
Este artigo trata de recursos e agentes de IA que você entrega a usuários. Se a sua preocupação é um agente de programação na máquina de um desenvolvedor, nosso guia para proteger agentes de programação cobre sandboxes, guardas de comandos e portões de CI para esse caso. Cada número vem das nossas análises ou dos documentos de fornecedores e de pesquisa que elas citam; não executamos essas ferramentas nós mesmos.
O que um guardrail realmente detecta
Quatro problemas respondem pela maior parte do que esses produtos prometem resolver. O OWASP Top 10 for LLM Applications é uma lista de verificação útil, e os guardrails atacam mais diretamente três de seus itens: injeção de prompt (LLM01), divulgação de informações sensíveis (LLM02) e agência excessiva (LLM06).
- Injeção de prompt. Texto que tenta trocar as suas instruções pelas de outra pessoa. A forma direta vem do usuário. A indireta se esconde numa página recuperada, num e-mail ou no resultado de uma ferramenta, e é a que prejudica agentes, porque o modelo a lê como parte do trabalho.
- Jailbreaks. Tentativas de convencer o modelo a abandonar suas regras de segurança, muitas vezes espalhadas por vários turnos de conversa.
- Saída insegura. Respostas nocivas ou contrárias à sua política, e respostas que afirmam coisas que os documentos recuperados não sustentam.
- Vazamento de dados. Dados pessoais, segredos ou seu prompt de sistema saindo numa resposta, ou um link numa resposta que aponta para onde não deveria.
Nenhum produto cobre os quatro igualmente bem. Um detector de injeção sinaliza texto que parece instrução, não dano: o cartão da Meta para o Llama Prompt Guard 2 observa que uma documentação que cite "ignore previous instructions" vai dispará-lo. Um modelo de moderação que pontua violência não vai notar uma instrução educada escondida no PDF de um fornecedor. Associe cada checagem a um risco antes de comprar qualquer coisa.
Três tipos de guardrail
Modelos de segurança que você hospeda
São modelos de pesos abertos que você roda ao lado do seu. O texto nunca sai das suas máquinas e não há tarifa por checagem; em troca, a GPU, as atualizações e o ajuste ficam com você.
- Llama Prompt Guard 2 (4.2) é o filtro barato de injeção. O modelo de 86M pega 97.5% dos ataques do conjunto privado de jailbreaks da Meta com taxa de falsos positivos de 1%. No AgentDojo, um benchmark em que atacantes plantam instruções nas ferramentas de um agente, ele barra 81.2% com custo de 3% em tarefas concluídas. Ele lê 512 tokens por vez, então páginas longas precisam ser divididas em trechos, e o download é restrito pela Llama 4 Community License.
- Qwen3Guard (4.3) é o modelo de moderação multilíngue: 119 idiomas e dialetos, tamanhos de 0.6B a 8B, Apache 2.0. Ele rotula o texto como seguro, controverso ou inseguro, de modo que um app infantil e uma plataforma de ficção adulta podem compartilhar um modelo e divergir apenas no que "controversial" significa. Uma variante Stream checa a resposta token a token enquanto ela é escrita.
- Granite Guardian 4.1 (4.0) é o juiz de 8B da IBM. Além de dano, verifica se uma resposta está fundamentada no texto recuperado e se a chamada de função de um agente combina com as ferramentas que ele recebeu. Só funciona em inglês, e a IBM o posiciona para monitoramento e checagens pontuais, não para toda mensagem.
- gpt-oss-safeguard (4.0) recebe uma política escrita em linguagem simples e devolve uma decisão com seu raciocínio, assim uma equipe de confiança e segurança pode mudar uma regra sem rotular novos dados de treino. É mais lento e pesado que um classificador, o 20b precisa de uma GPU de 16 GB, e a OpenAI avisa que o raciocínio visível pode ser alucinado.
APIs de guardrail na nuvem
Um serviço hospedado roda e atualiza os detectores. Você envia cada prompt e cada resposta pela rede e recebe um veredito de volta, trocando um novo operador de dados e um salto de rede por não precisar rodar modelos.
- Google Model Armor (4.2) faz a triagem de injeção, conteúdo nocivo, dados sensíveis e links suspeitos por $0.10 por milhão de tokens, com os primeiros 2 milhões de cada mês grátis. Funciona com modelos fora do Google Cloud. Julga cada requisição sozinha, sem memória da conversa, e não decodifica Base64.
- Azure AI Content Safety (4.1) pontua dano em texto e imagens, e seus Prompt Shields verificam tanto prompts de usuários quanto documentos em busca de comandos injetados. O nível padrão custa $0.375 por 1,000 registros de texto de até 1,000 caracteres. A Microsoft diz que as entradas não são armazenadas nem usadas para treino; o Prompt Shields foi treinado principalmente em inglês.
- Lakera Guard (4.0), agora vendido pela Check Point, aceita uma conversa inteira no formato da OpenAI, chamadas de ferramenta incluídas, e faz a triagem da última troca. O plano gratuito cobre 10,000 requisições por mês; acima disso não há preço publicado.
Frameworks de guardrail
Um framework não é um detector. É o encanamento que roda checagens em cada ponto do seu app e decide o que fazer com o resultado; você pluga modelos ou APIs nele.
- NVIDIA NeMo Guardrails (4.0) tem rails separados para entrada, saída, recuperação e execução de ferramentas, e aceita Llama Guard, os modelos NemoGuard da NVIDIA, Presidio e detectores comerciais. Exige configuração de verdade em YAML e na sua própria linguagem, Colang, a versão 0.24.0 trouxe seis mudanças incompatíveis, e telemetria anônima para a NVIDIA vem ligada por padrão.
- LlamaFirewall (3.8) é o desenho em camadas da Meta: Prompt Guard 2 nas entradas e nas saídas de ferramentas, AlignmentCheck lendo o raciocínio do agente em busca de sinais de sequestro, e CodeShield examinando o código gerado. O artigo dele é a melhor evidência pública de que camadas funcionam; o pacote em si não tem versão nova desde maio de 2025.
- Guardrails AI (3.2) é o exemplo de alerta. O Hub hospedado fechou em 25 de agosto de 2026, a equipe foi para a Harvey, nada foi mesclado desde então, e uma versão maliciosa 0.10.1 chegou ao PyPI em maio. Os validadores offline para regex, esquema e tamanho ainda funcionam; projetos novos têm opções melhores.
Quanto as camadas rendem
Os números mais claros vêm do artigo do LlamaFirewall da Meta, medidos no AgentDojo. Sem guardrail, 17.6% dos ataques tiveram sucesso. O Prompt Guard 2 sozinho reduziu isso para 7.5%. O AlignmentCheck, que pergunta a um modelo grande se o agente ainda está fazendo o que o usuário pediu, baixou para 2.89%. Os dois juntos chegaram a 1.75%, enquanto a fatia de tarefas concluídas pelo agente caía de 47.7% para 42.7%.
Duas lições saem daí. Um filtro rápido e uma checagem de raciocínio mais lenta deixam passar ataques diferentes, então se somam. E proteção custa utilidade além de dinheiro: pelas nossas contas, cerca de uma em cada dez tarefas que antes davam certo deixou de dar.
Latência e custo no caminho da requisição
Cada checagem antes da resposta acrescenta tempo, e um agente pode rodar várias por turno: a mensagem do usuário, cada documento recuperado, cada resultado de ferramenta e a resposta final. Conte checagens por turno, não por conversa.
| Checagem | Latência publicada | Custo |
|---|---|---|
| Prompt Guard 2, 22M | 19.3 ms por 512 tokens numa A100 | Sua GPU |
| Prompt Guard 2, 86M | 92.4 ms por 512 tokens numa A100 | Sua GPU |
| Primeira passada do CodeShield | Cerca de 60 ms | Sua CPU ou GPU |
| AlignmentCheck | Cerca de 860 a 1,490 ms por passo no trace do artigo | Uma chamada a um modelo grande por passo auditado |
| Lakera Guard | Menos de 50 ms (segundo o fornecedor) | Grátis até 10,000 requisições por mês, depois sob cotação |
| Google Model Armor | Não informada nas nossas fontes | $0.10 por milhão de tokens |
| Azure AI Content Safety | Não informada nas nossas fontes | $0.375 por 1,000 registros de texto |
Nesses preços, fazer a triagem de um milhão de mensagens curtas de chat custa poucos dólares no Model Armor e $375 no Azure. Um bilhão de tokens por mês no Model Armor sai por cerca de $100, ou nada dentro dos 3 bilhões incluídos numa assinatura Enterprise ou Premium do Security Command Center. O Lakera conta cada item checado como uma requisição, então um agente que verifica o prompt, dois documentos e a resposta gasta quatro por turno e esgota o plano gratuito em 2,500 turnos.
Hospedar por conta própria leva a conta para o hardware. Modelos abertos não têm tarifa, mas alguém paga as GPUs, e o NVIDIA AI Enterprise, que cobre o microsserviço do NeMo Guardrails, tem preço de tabela de $4,500 por GPU por ano.
Três hábitos mantêm o atraso baixo. Passe o classificador barato em tudo e mande só os passos arriscados para os juízes lentos; a OpenAI descreve o mesmo padrão para o gpt-oss-safeguard, com classificadores rápidos primeiro e uma parte do tráfego enviada ao modelo de raciocínio. Rode checagens independentes em paralelo, que é o que o motor IORails do NeMo faz com as checagens NemoGuard. E, em respostas em streaming, cheque o texto conforme ele chega: a variante Stream do Qwen3Guard pontua cada token, e o Lakera pede trechos de pelo menos 10 tokens.
Falsos positivos são o verdadeiro trabalho de ajuste
Todo detector troca ataques perdidos por clientes bloqueados, e os números de precisão dos fornecedores vêm dos próprios conjuntos de teste deles. O Lakera entrega todos os detectores em L4, seu nível mais rígido, e chama sua política padrão de "intentionally strict". A Meta diz que a precisão do Prompt Guard 2 depende de como é o tráfego normal da sua aplicação e recomenda ajustá-lo com seus próprios dados.
Antes de bloquear qualquer coisa, passe algumas centenas de requisições reais e inofensivas e um conjunto de ataques conhecidos pelo guardrail e registre a taxa de bloqueio e a taxa de falha em cada limiar. Depois entre em produção em modo só de registro, que o Lakera chama de modo Detect, e leia o que ele sinaliza por uma ou duas semanas. Decida antes o que o usuário vê num bloqueio: uma recusa clara com um caminho para falar com uma pessoa é melhor que uma falha silenciosa. O rótulo controverso do Qwen3Guard dá uma terceira opção entre permitir e bloquear: mandar o caso para uma fila de revisão.
Onde entram o red teaming e a varredura da cadeia de suprimentos
Guardrails agem sobre o tráfego real. Red teaming ataca seu app antes dos usuários e diz se os guardrails funcionam; a varredura da cadeia de suprimentos verifica o código e as ferramentas em que seu app confia. Você precisa dos três, em momentos diferentes.
- Na escolha do modelo. CyberSecEval (3.9) mede com que frequência um modelo puro escreve código vulnerável ou obedece a texto injetado. Ele não vê seus prompts, ferramentas nem sua recuperação, então seu lugar é ao lado do cartão do modelo, não no lugar de testar o app.
- Antes do lançamento e a cada mudança. garak (4.3) dispara uma biblioteca de ataques publicados contra um endpoint; aponte-o para o app implantado com os guardrails na frente, porque o prompt de sistema e os filtros mudam o resultado. promptfoo (4.5) coloca os testes de red team num arquivo YAML que roda no CI. DeepTeam (3.9) cobre riscos de agentes como burla de autorização e descrições de ferramentas envenenadas.
- Atacantes pacientes. PyRIT (4.2) roda ataques de vários turnos como o Crescendo, em que um modelo atacante escala aos poucos. É justamente o caso que um filtro que julga uma requisição por vez foi feito para não ver.
O que o red team encontrar deve voltar para os limiares do guardrail e, com mais frequência, para as permissões das ferramentas.
Os próprios guardrails fazem parte da sua cadeia de suprimentos. A versão maliciosa 0.10.1 do Guardrails AI é um exemplo; em março de 2026 atacantes também publicaram duas versões envenenadas do LiteLLM no PyPI usando credenciais roubadas de um mantenedor. Fixe versões e hashes exatos de bibliotecas de guardrail, gateways e SDKs, e faça a varredura junto com o resto do código: Semgrep (4.3) como checagem obrigatória nos pull requests, e Snyk (4.0) para dependências e contêineres, cujo plano gratuito para em 100 testes do Snyk Code por mês. Para os servidores MCP e skills que seu agente carrega, o Snyk Agent Scan (3.8) procura instruções escondidas nas descrições das ferramentas e, para isso, envia essas descrições à Snyk.

Privilégio mínimo importa mais que qualquer filtro
O melhor resultado em camadas acima ainda deixou passar 1.75% dos ataques, num benchmark com ataques conhecidos de antemão, e a Meta avisa que atacantes se adaptam a classificadores. Planeje para a injeção que passa por todos os filtros e pergunte o que ela pode fazer em seguida. A resposta é definida pelas ferramentas que você deu ao agente, não pelo guardrail.
- Agir como o usuário, não como uma conta de serviço. Quando uma chamada de ferramenta carrega a identidade do usuário logado, uma instrução injetada não consegue buscar dados que esse usuário não poderia ver. Verifique a autorização no seu código, nunca no prompt.
- Dar a cada ferramenta a credencial mais estreita. Um agente que responde perguntas sobre pedidos precisa de uma visão somente leitura dos pedidos de um cliente, não do banco de dados.
- Pôr uma pessoa na frente do que não tem volta. Pagamentos, exclusões e mensagens para endereços externos devem esperar uma confirmação que o modelo não pode dar a si mesmo.
- Limitar para onde os dados podem ir. Um agente que pode abrir qualquer URL pode enviar seus dados para qualquer URL.
- Isolar as ferramentas. O ToolHive (4.1) roda cada servidor MCP em seu próprio contêiner sem nenhuma das suas credenciais locais, acrescenta política de acesso baseada em identidade por requisição e mantém logs de auditoria. A análise dele deixa claro que o isolamento não impede um servidor de abusar do acesso que você concede de propósito. Quando um agente executa código, o OpenSandbox (4.1) entrega a ele uma sandbox descartável por API, mas ela é um contêiner comum a menos que você configure gVisor, Kata ou Firecracker, e roda sem autenticação se nenhuma chave de API for definida.
- Registrar cada chamada de ferramenta com o usuário, a entrada e o resultado, para que um incidente possa ser rastreado.

Uma configuração inicial para uma equipe pequena
Pense em cinco pessoas lançando um chatbot de suporte ou um agente pequeno numa única nuvem, sem ninguém cujo cargo diga segurança.
- Permissões primeiro. Liste cada ferramenta, dê a cada uma a credencial mais estreita e acrescente uma etapa de confirmação antes de tudo o que envia, paga ou exclui. Isso custa uma tarde e faz mais que qualquer produto abaixo.
- Uma triagem hospedada nas entradas dos usuários, nos documentos recuperados e nas respostas: Model Armor se você está no Google Cloud ou em nenhuma nuvem em particular, Azure AI Content Safety se já roda no Azure. O plano gratuito do Lakera serve para um protótipo. Se você já roda GPUs, o Prompt Guard 2 22M nas saídas de ferramentas sai quase de graça, e o Qwen3Guard 0.6B é o modelo de moderação multilíngue mais barato de servir.
- Só registro por duas semanas, depois ligue o bloqueio com limiares que você conferiu no seu próprio tráfego.
- Um arquivo de red team no CI. Uma configuração do promptfoo que rode a cada mudança de prompt ou de modelo, e uma varredura focada do garak depois de trocar de modelo.
- Dependências fixadas e Semgrep como checagem obrigatória nos pull requests.
O software aqui é grátis ou quase. As contas vêm da triagem por requisição e dos tokens de modelo que as rodadas de red team consomem.
Uma configuração inicial para uma empresa regulada
Um banco, uma seguradora ou um prestador de saúde tem os mesmos riscos, mais auditores, regras de residência de dados e uma avaliação de fornecedor para cada novo operador de dados.
- Ferramentas ligadas à identidade. Os agentes agem com a identidade do usuário. Os servidores MCP rodam atrás do ToolHive para política por requisição, isolamento e logs de auditoria, e o código gerado roda no OpenSandbox com um runtime seguro e uma chave de API configurados.
- Um ponto de controle único. NeMo Guardrails com rails na entrada, na recuperação, na execução de ferramentas e na saída, versão fixada, telemetria desligada com
DO_NOT_TRACK=1erequire_iorails=True, para que configurações que o motor rápido não consegue rodar falhem de forma visível em vez de voltar em silêncio ao motor antigo. - Detectores que atendem às suas regras de dados. Prompt Guard 2 hospedado por você em cada entrada e cada resultado de ferramenta; Qwen3Guard para moderação multilíngue, ou Granite Guardian se o inglês basta e você quer checagens de fundamentação e de chamadas de função sob Apache 2.0. Se uma API na nuvem for permitida, prefira a que já está aprovada: o Azure mantém o processamento na região escolhida para a maioria das checagens e aceita chaves gerenciadas pelo cliente, e o Google diz que o Model Armor descarta o conteúdo após cada checagem, a menos que o registro esteja ligado. O Lakera oferece auto-hospedagem isolada da rede no Enterprise. Note que vários recursos em prévia do Azure, entre eles a detecção de fundamentação, serão descontinuados em 30 de abril de 2027.
- Juízes lentos onde compensam. gpt-oss-safeguard para decisões de política e recursos que precisam de justificativa por escrito, e uma auditoria no estilo do AlignmentCheck nos passos de maior risco do agente, com um modelo grande com que você já tenha contrato.
- Evidência de testes. CyberSecEval na escolha do modelo, os presets OWASP do DeepTeam para mostrar a um auditor o que foi testado, e PyRIT nas mãos de um especialista em red team para ataques de vários turnos. Repita após cada mudança de modelo, prompt, guardrail ou ferramenta, e guarde as transcrições.
- Cadeia de suprimentos e propriedade. Hashes fixados, Semgrep e Snyk no CI, Snyk Agent Scan em novos servidores MCP depois que o seu encarregado de proteção de dados aprovar o envio de descrições de ferramentas à Snyk. Esse mercado muda de dono depressa: o Lakera agora pertence à Check Point, o promptfoo à OpenAI, e o serviço hospedado do Guardrails AI acabou. Mantenha cada guardrail atrás da sua própria interface para poder trocá-lo.
O porém: a maioria dos guardrails vê o texto um pedaço por vez, e os atacantes sabem disso. O Model Armor não tem memória da conversa, não decodifica Base64 e pula entradas grandes demais em vez de sinalizá-las. O Prompt Guard 2 lê 512 tokens, então um ataque dividido entre trechos pode escapar. Os Prompt Shields do Azure param em 10,000 caracteres para o prompt e 10,000 somando até cinco documentos. Fora do inglês, a maioria perde terreno. Julgue um filtro pelo que custa e pela frequência com que erra, nunca por ser completo.
Nossa opinião: guardrails são o segurança da porta e permissões são as fechaduras dos cômodos. Um segurança barra a maior parte dos problemas e, de vez em quando, um cliente habitual, enquanto as fechaduras decidem quanto estrago pode fazer quem passar mesmo assim. Instale as fechaduras primeiro, contrate o segurança mais barato que fale os idiomas dos seus clientes e mande os juízes caros só para as portas que importam.