OWASP Top 10 para Aplicações Baseadas em Modelos de Linguagem de Grande Escala (LLMs) — Versão 2 (2025)

O OWASP Top 10 para Aplicações que utilizam Modelos de Linguagem de Grande Escala (LLMs) é uma lista abrangente que identifica as vulnerabilidades de segurança mais críticas associadas a essas tecnologias emergentes. Esta iniciativa tem como objetivo fomentar a conscientização entre desenvolvedores, cientistas de dados e profissionais de segurança sobre os riscos inerentes ao uso de LLMs, além de oferecer diretrizes para mitigá-los de forma eficaz. A seguir, estão listadas as principais vulnerabilidades identificadas:

  1. Injeção de Prompt: Atacantes podem manipular prompts de entrada para influenciar as respostas do modelo de maneira prejudicial.
  2. Divulgação de Informações Sensíveis: LLMs podem vazar dados confidenciais por meio de respostas inesperadas, seja por construção inadequada de prompts ou falhas em mecanismos de isolamento.
  3. Vulnerabilidades na Cadeia de Suprimentos: O uso de bibliotecas, plugins ou fontes de dados externas pode comprometer a segurança do sistema.
  4. Envenenamento de Dados e Modelo: Dados manipulados podem influenciar o comportamento do modelo, inserindo vieses ou comandos maliciosos.
  5. Manipulação Insegura da Saída: Saídas do modelo que não passam por validações podem desencadear execuções não autorizadas ou exibir conteúdo perigoso.
  6. Permissão Excessiva: LLMs que atuam com autonomia irrestrita podem executar ações críticas sem o devido controle.
  7. Vazamento de Prompt do Sistema: Prompts internos podem ser expostos e explorados, comprometendo regras e instruções da aplicação.
  8. Fragilidades em Embeddings e Vetores: Dados embutidos podem revelar informações sensíveis ou ser usados para ataques indiretos.
  9. Desinformação: Respostas falsas, alucinações ou informações sem base podem levar a decisões incorretas.
  10. Consumo Ilimitado de Recursos: O uso descontrolado de recursos pode causar negação de serviço ou elevar custos operacionais.

Dentre estas vulnerabilidades, algumas são de responsabilidade da Atos, outras são da Cloud, e algumas podem não ser aplicáveis ao projeto em questão. Na sequência, exporemos cenários específicos e detalharemos as abordagens propostas para mitigar os riscos identificados.


1. Injeção de Prompt (Prompt Injection)

Cenários Possíveis

  • Injeção direta via chatbot, resultando em ações maliciosas.
  • Instruções escondidas em arquivos externos lidos pelo modelo.
  • Comandos divididos em múltiplos campos de entrada para burlar detecção.
  • Instruções disfarçadas em imagens (multimodal).

Ações de Prevenção

  • Restringir o comportamento do modelo com prompts de sistema bem definidos.
  • Definir formatos de saída esperados e validá-los programaticamente.
  • Filtrar entradas e saídas com regras semânticas e verificação de contexto.
  • Aplicar privilégio mínimo e tokens separados para cada função.
  • Aprovação humana para ações de risco.
  • Identificar conteúdo externo e tratá-lo com precaução.
  • Realizar testes adversariais contínuos.

2. Divulgação de Informações Sensíveis

Cenários Possíveis

  • Vazamento de informações do sistema via falhas de prompt.
  • Exposição de dados proprietários em respostas inesperadas.
  • Uso de embeddings que vazam dados originais.

Ações de Prevenção

  • Filtrar conteúdo sensível na entrada e saída.
  • Reduzir persistência de histórico de conversas.
  • Evitar treinar ou ajustar o modelo com dados sensíveis.
  • Monitorar saídas em ambientes de produção.

3. Vulnerabilidades na Cadeia de Suprimentos (Supply Chain)

Cenários Possíveis

  • Componentes ou plugins inseguros.
  • Bibliotecas de embeddings vulneráveis.
  • Dados ou fontes externas maliciosas.

Ações de Prevenção

  • Usar apenas fontes e plugins auditados.
  • Atualizar frequentemente bibliotecas e modelos.
  • Monitorar dependências com ferramentas de segurança.

4. Envenenamento de Dados e Modelo (Data and Model Poisoning)

Cenários Possíveis

  • Injeção de vieses no modelo via ajustes contínuos.
  • Dados contaminados usados em re-treinamentos.
  • Uso de RAG com fontes manipuladas.

Ações de Prevenção

  • Treinar apenas com dados verificados.
  • Validar documentos usados em RAG.
  • Separar fontes confiáveis e não confiáveis.
  • Realizar auditorias regulares no comportamento do modelo.

5. Manipulação Insegura da Saída (Improper Output Handling)

Cenários Possíveis

  • Saída gera código ou comandos maliciosos.
  • RAG ou plugins executam ações baseadas em saída do modelo.
  • Saídas com HTML/JS causam XSS.

Ações de Prevenção

  • Tratar toda saída como entrada não confiável.
  • Validar e sanitizar qualquer conteúdo antes de execução ou exibição.
  • Aplicar codificação e limites de escopo nas respostas.

6. Permissão Excessiva (Excessive Agency)

Cenários Possíveis

  • LLM atua como agente com acesso irrestrito.
  • Execução de ações em nome do usuário sem supervisão.

Ações de Prevenção

  • Separar o LLM do executor de ações (por exemplo, via camada intermediária).
  • Implementar controle de acesso baseado em contexto.
  • Requerer confirmação para decisões críticas.

7. Vazamento de Prompt do Sistema (System Prompt Leakage)

Cenários Possíveis

  • Prompt interno exposto via engenharia social.
  • Respostas revelam regras ou instruções internas.

Ações de Prevenção

  • Evitar incluir dados sensíveis ou operacionais em prompts.
  • Detectar e bloquear respostas que revelem regras internas.
  • Isolar variáveis e instruções críticas fora do alcance do modelo.

8. Fragilidades em Embeddings e Vetores (Vector and Embedding Weaknesses)

Cenários Possíveis

  • Vetores permitem inferência de dados originais.
  • Exploração de semelhança semântica para injeções indiretas.

Ações de Prevenção

  • Usar hashing, truncamento ou vetorização com técnicas de anonimização.
  • Validar similaridade semântica antes de retornar contextos.
  • Evitar exposição direta de vetores.

9. Desinformação (Misinformation)

Cenários Possíveis

  • LLMs alucinam fatos com tom autoritário.
  • Respostas falsas são usadas para decisões críticas.

Ações de Prevenção

  • Exigir fontes e justificativas em respostas.
  • Validar conteúdo com serviços externos ou regras heurísticas.
  • Limitar o escopo de conhecimento do modelo.

10. Consumo Ilimitado de Recursos (Unbounded Consumption)

Cenários Possíveis

  • Ataques de negação de serviço via requisições complexas.
  • Uso abusivo que gera custos elevados.

Ações de Prevenção

  • Definir cotas por usuário e limites de tempo/resposta.
  • Interromper execuções longas ou suspeitas.
  • Monitorar uso com alertas proativos.

Notas Finais

Esta versão 2.0 considera os avanços no uso de arquiteturas com agentes, modelos multimodais e pipelines baseados em RAG. Atribuímos responsabilidades conforme o modelo de aplicação:

  • Atos: validação da entrada, moderação de saída, controle de permissões, escolha de plugins.
  • Cloud Provider segurança do modelo base, isolamento de instâncias, atualizações automáticas.
  • Cliente: definição do contexto e fontes confiáveis, políticas de uso, revisão de prompts de sistema.

A aplicação segura de LLMs é responsabilidade compartilhada. Essa documentação oferece uma base atualizada e contextualizada para projetos que envolvam modelos generativos, com foco em segurança, rastreabilidade e eficiência operacional.