0Pricing
Cyber Security Academy · Aula

Protegendo agentes de IA e o uso de ferramentas

Restrinja as ações de agentes autônomos.

Protegendo agentes de IA e o uso de ferramentas é uma aula grátis de Cyber Security Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Cyber Security Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Cyber Security Academy inclui 4 aulas no total.

O que torna os agentes arriscados

Um agente de IA é um LLM conectado a ferramentas e a um ciclo: ele raciocina, chama funções (pesquisa, execução de código, APIs, acesso a arquivos), observa os resultados e repete o processo até atingir um objetivo. Essa autonomia é poderosa e perigosa.

A principal mudança de segurança é esta: em um chatbot comum, uma saída inadequada é apenas texto. Em um agente, uma decisão inadequada se torna uma ação real: um registro excluído, um e-mail enviado, um valor gasto ou um segredo vazado.

Como conteúdo não confiável pode entrar no ciclo de raciocínio, toda ferramenta que o agente possui é uma superfície de ataque para injeção de instruções.

Menor privilégio para as ferramentas

O controle mais importante é o menor privilégio. Conceda a cada ferramenta o escopo mais restrito que ainda permita realizar a tarefa.

  • Prefira somente leitura a leitura e gravação; restrinja as leituras aos dados do usuário atual.
  • Divida ferramentas amplas em ferramentas restritas (uma ferramenta get_invoice, e não uma ferramenta de SQL bruto).
  • Associe as credenciais da ferramenta à identidade do usuário final, e não a uma conta de serviço compartilhada, para que o agente herde apenas o que o usuário pode fazer.
# Scope queries to the authenticated user, never raw SQL
def get_invoice(invoice_id: str, *, user_id: str):
    return db.query(
        "SELECT * FROM invoices WHERE id=%s AND owner=%s",
        (invoice_id, user_id),
    )

Pontos de verificação com participação humana

Para ações de alto impacto ou irreversíveis, exija aprovação humana explícita antes da execução. O agente propõe; uma pessoa confirma.

  • Enviar e-mails ou mensagens externas.
  • Realizar transações financeiras ou compras.
  • Excluir ou substituir dados.
  • Implantar código ou alterar a infraestrutura.

Mostre ao usuário a ação exata e os argumentos em linguagem simples, para que ele possa identificar um comando injetado ou inventado pelo modelo antes da execução.

Isolamento de código e comandos

Agentes que executam código ou comandos de um interpretador devem fazê-lo em um ambiente isolado, nunca na máquina hospedeira.

  • Use contêineres efêmeros ou microVMs sem montagens da máquina hospedeira.
  • Desative o acesso à rede por padrão; permita apenas uma lista explícita de permissões de saída.
  • Defina limites de CPU, memória e tempo para conter códigos descontrolados ou maliciosos.
  • Execute como um usuário sem privilégios de superusuário, com um sistema de arquivos raiz somente leitura.
docker run --rm \
  --network none \
  --read-only \
  --user 1000:1000 \
  --memory 256m --cpus 0.5 \
  --pids-limit 64 \
  agent-sandbox:latest python /work/task.py

Rompendo a tríade letal

Um agente se torna uma ferramenta de exfiltração de dados quando tem simultaneamente acesso a dados privados, exposição a conteúdo não confiável e capacidade de se comunicar externamente. Essa combinação é a tríade letal.

Projete o sistema para remover pelo menos um desses elementos em qualquer fluxo de trabalho:

  • Isole as sessões que acessam conteúdo não confiável daquelas que contêm dados confidenciais.
  • Restrinja a saída da rede a uma lista de permissões rigorosa.
  • Exija aprovação antes de qualquer envio externo quando houver dados privados no contexto.

Saída de ferramenta não confiável

Os resultados das ferramentas retornam ao contexto do modelo, portanto a saída da ferramenta é uma entrada não confiável. Uma página da Web, um arquivo obtido ou uma resposta da API pode conter instruções injetadas destinadas à próxima etapa de raciocínio.

  • Envolva a saída da ferramenta em delimitadores claros e identifique-a como dados, não como comandos.
  • Remova ou neutralize textos ocultos (comentários HTML, caracteres de largura zero e CSS fora da área visível).
  • Limite o tamanho do conteúdo injetado para reduzir o espaço disponível para a carga útil.

Nunca permita que a saída bruta de uma ferramenta determine silenciosamente a próxima chamada sem verificações de política.

Listas de permissões de ações e aplicação de políticas

Não confie que o modelo fiscalize a si mesmo. Aplique uma camada de política no código entre o agente e cada ferramenta.

  • Valide cada chamada de ferramenta comparando-a com uma lista de permissões de ações permitidas e formatos de argumentos.
  • Rejeite chamadas que estejam fora do escopo da tarefa atual.
  • Aplique limites de taxa e orçamentos por ferramenta e por usuário.

Essa barreira determinística é executada independentemente da decisão do modelo, portanto uma injeção bem-sucedida ainda encontra um bloqueio intransponível.

def authorize(call):
    if call.name not in ALLOWED_TOOLS:
        raise PolicyError("tool not allowed")
    if not SCHEMA[call.name].validate(call.args):
        raise PolicyError("bad arguments")
    if exceeds_budget(call):
        raise PolicyError("rate limit")

Limitando o ciclo

Ciclos autônomos podem sair de controle: tentativas infinitas, chamadas recursivas de ferramentas e gastos descontrolados (esgotamento financeiro). Estabeleça limites.

  • Limite o número máximo de etapas e o total de tokens por tarefa.
  • Defina limites de tempo de execução para todo o processo.
  • Acompanhe o custo acumulado e interrompa a execução ao atingir o limiar.
  • Detecte ciclos (chamadas idênticas repetidas) e saia deles.

Esses limites também reduzem o impacto de ataques de negação de serviço e de consumo sem limites (OWASP LLM10).

Riscos da memória e de vários agentes

Sistemas com memória persistente do agente e vários agentes adicionam uma nova superfície de ataque:

  • Envenenamento da memória: uma injeção gravada na memória de longo prazo em uma sessão influencia sessões posteriores. Use validate e restrinja o escopo do que é persistido.
  • Confiança entre agentes: um agente comprometido pode injetar conteúdo em outro. Trate as mensagens entre agentes como não confiáveis.
  • Confusão de autoridade: um agente privilegiado age com base na solicitação de um agente menos confiável. Propague a autorização da identidade original por toda a cadeia.

Registro e observabilidade

Não é possível proteger aquilo que não se consegue ver. Instrumente o rastreamento completo do agente:

  • Registre cada chamada de ferramenta, seus argumentos e seu resultado.
  • Registre o contexto do raciocínio e todo conteúdo recuperado para análise forense.
  • Emita alertas sobre anomalias: saída de rede inesperada, uso de privilégios, recusas repetidas e picos de custo.
  • Mantenha uma trilha de auditoria imutável vinculada ao usuário que executou a ação.

Uma boa telemetria transforma um comprometimento silencioso em um incidente detectável e investigável.

Uma arquitetura de agente em camadas

Reunindo tudo, uma pilha de agente defensável se parece com isto:

  • Identidade: as ações são executadas como o usuário final, com escopos de menor privilégio.
  • Barreira de política: lista de permissões determinística e validação de esquema em cada chamada de ferramenta.
  • Ambiente isolado: execução isolada com rede e recursos restritos.
  • Pontos de verificação humana: aprovação para ações irreversíveis.
  • Limites: orçamentos de etapas, tokens, tempo e custo.
  • Observabilidade: registro completo de auditoria e alertas de anomalias.

Presuma que o modelo possa ser sequestrado; garanta que, quando isso acontecer, o alcance dos danos permaneça pequeno.

Verificação rápida

Teste sua compreensão dos controles de segurança de agentes.

Recapitulação

Proteção de agentes de IA e do uso de ferramentas:

  • Os agentes transformam saídas inadequadas em ações reais, portanto toda ferramenta é uma superfície de ataque.
  • Aplique o privilégio mínimo a cada ferramenta e associe as credenciais ao usuário final.
  • Exija aprovação humana para ações irreversíveis e execute código em um ambiente isolado.
  • Desfaça a tríade letal; trate a saída das ferramentas como entrada não confiável.
  • Aplique no código, e não no comando, uma barreira de política determinística (listas de permissões, validação de esquema).
  • Limite o ciclo (etapas, tokens, tempo, custo) e registre cada chamada de ferramenta para fins de detecção.

Perguntas Frequentes

A aula “Protegendo agentes de IA e o uso de ferramentas” é grátis?

Sim — o texto completo de “Protegendo agentes de IA e o uso de ferramentas” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Cyber Security Academy, atualize para CoddyKit PRO. O curso de Cyber Security Academy inclui 4 aulas no total.

O que vou aprender em “Protegendo agentes de IA e o uso de ferramentas”?

Restrinja as ações de agentes autônomos. Você pratica Cyber Security Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Cyber Security Academy?

Nenhuma experiência prévia é necessária. Cyber Security Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Protegendo agentes de IA e o uso de ferramentas”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Cyber Security Academy?

Sim. Cada aula de Cyber Security Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Injeção de solicitações e jailbreaks
  2. Os 10 principais riscos de LLM da OWASP
  3. Protegendo agentes de IA e o uso de ferramentas
  4. Riscos de modelo, dados e cadeia de suprimentos
← Voltar para Cyber Security Academy