A OWASP (Open Worldwide Application Security Project) mantém as classificações de referência mundial sobre os riscos de segurança mais relevantes em cada tipo de tecnologia. Abaixo, um resumo em português das quatro listas mais relevantes para quem desenvolve ou opera aplicações hoje: Web, sistemas de Inteligência Artificial (LLM), aplicativos Mobile e APIs. Nos pentests da WS Vicentin, essas categorias servem de referência para classificar e priorizar os achados.
As 10 categorias de risco mais críticas para aplicações web, segundo a lista mais recente da OWASP.
Usuários conseguem agir fora do que deveriam poder acessar ver dados de outras contas, alterar registros alheios ou chegar a funções administrativas sem a devida permissão.
Serviços, servidores e frameworks deixados com configurações padrão, permissões abertas demais ou recursos desnecessários habilitados, ampliando a superfície de ataque.
Dependências, bibliotecas de terceiros, pipelines de build ou fornecedores comprometidos, introduzindo vulnerabilidades antes mesmo do código próprio entrar em produção.
Dados sensíveis trafegando ou armazenados sem criptografia adequada ou com algoritmos fracos e chaves mal gerenciadas ficam expostos a interceptação e roubo.
Entradas de usuário não tratadas corretamente são interpretadas como comandos pelo sistema, permitindo manipular bancos de dados, sistema operacional ou outros componentes.
Falhas que nascem lá na arquitetura e na concepção do sistema antes de qualquer linha de código e por isso são mais caras e difíceis de corrigir depois.
Processos de login, gestão de sessão e recuperação de senha mal implementados, abrindo espaço para personificação de outros usuários.
Ausência de verificação de integridade em atualizações, pacotes e pipelines de CI/CD, permitindo que código ou dados adulterados entrem no ambiente sem detecção.
Falta de registros e alertas suficientes faz com que ataques em andamento ou já ocorridos passem despercebidos por muito tempo.
Erros, exceções e casos de borda tratados de forma inconsistente, revelando informações internas ou levando o sistema a estados inesperados e inseguros.
Riscos específicos de aplicações que usam Large Language Models (LLMs) e agentes de IA.
Entradas elaboradas para alterar o comportamento pretendido do modelo, fazendo-o ignorar instruções originais ou executar ações não autorizadas.
O modelo ou a aplicação em torno dele acaba expondo dados sensíveis de treinamento, de outros usuários ou internos do sistema.
Modelos, datasets, plugins e dependências de terceiros usados no sistema de IA podem trazer vulnerabilidades ou comportamento malicioso embutido.
Contaminação intencional dos dados de pré-treinamento, fine-tuning ou embeddings para induzir vieses, backdoors ou respostas maliciosas.
A saída gerada pelo modelo é usada por outros sistemas (banco de dados, navegador, shell) sem validação e sanitização adequadas.
Agentes de IA recebem permissões, ferramentas ou autonomia além do necessário, podendo executar ações danosas sem supervisão adequada.
O prompt de sistema que carrega instruções internas e, às vezes, segredos acaba sendo exposto ao usuário final.
Falhas em bancos vetoriais e nos embeddings usados por arquiteturas RAG, permitindo manipulação ou vazamento de contexto.
O modelo gera conteúdo incorreto ou inventado apresentado com confiança, levando decisões erradas por quem confia na resposta.
Ausência de limites de uso e de recursos computacionais, abrindo espaço para custos descontrolados ou negação de serviço.
As 10 categorias de risco mais relevantes para aplicativos mobile (Android e iOS).
Credenciais fixas no código, mal protegidas ou reutilizadas indevidamente dentro do app, facilitando o acesso não autorizado.
SDKs, bibliotecas e componentes de terceiros integrados ao app sem verificação, podendo introduzir código malicioso ou vulnerável.
Mecanismos de login e controle de permissões implementados de forma frágil, client-side ou facilmente contornáveis.
Dados recebidos ou enviados pelo app sem validação adequada, abrindo espaço para injeção e manipulação de dados.
Tráfego de rede do app sem criptografia adequada ou com validação de certificado falha, permitindo interceptação de dados.
Coleta ou exposição de dados pessoais do usuário além do necessário, sem controles suficientes de privacidade.
Ausência de ofuscação, anti-tamper ou anti-debugging, facilitando engenharia reversa e adulteração do aplicativo.
Permissões excessivas, componentes exportados indevidamente ou configurações padrão inseguras deixadas no app.
Dados sensíveis salvos localmente no dispositivo sem proteção adequada, acessíveis por outros apps ou em caso de acesso físico.
Uso de algoritmos fracos, chaves mal gerenciadas ou criptografia implementada de forma incorreta dentro do aplicativo.
As 10 categorias de risco mais críticas específicas de APIs, que hoje sustentam a maior parte das aplicações web, mobile e integrações entre sistemas.
Endpoints que recebem um identificador de objeto (como um ID de pedido ou de usuário) sem checar se quem faz a requisição realmente tem permissão sobre aquele registro específico, permitindo acessar ou alterar dados de outras contas.
Mecanismos de login e de emissão/validação de tokens implementados de forma frágil, permitindo que um atacante assuma temporária ou permanentemente a identidade de outro usuário.
Falta de checagem de permissão sobre campos específicos de um objeto, o que expõe atributos sensíveis na resposta da API ou permite que o cliente altere propriedades que deveriam ser somente leitura ou restritas.
Ausência de limites de uso (rate limiting, tamanho de payload, paginação) permite que requisições excessivas esgotem banda, CPU, memória ou gerem custo elevado em serviços cobrados por chamada, podendo causar indisponibilidade.
Separação pouco clara entre funções administrativas e de usuário comum, permitindo que um atacante acesse endpoints ou ações que deveriam ser restritos a outro nível de permissão.
Funcionalidades legítimas do negócio (como comprar um item ou publicar um comentário) sem proteção contra uso automatizado em massa, o que pode ser abusado para causar prejuízo mesmo sem explorar nenhuma falha técnica de implementação.
A API busca um recurso remoto a partir de uma URL informada pelo usuário sem validar o destino, permitindo que um atacante force o servidor a acessar endereços internos ou não previstos, contornando firewalls e VPNs.
Configurações complexas de infraestrutura e da própria API deixadas fora do padrão recomendado de segurança, abrindo margem para diferentes tipos de exploração.
Falta de documentação atualizada sobre quais endpoints e versões da API estão realmente em produção, deixando versões antigas ou endpoints de debug esquecidos e expostos sem monitoramento.
Dados recebidos de APIs de terceiros tratados com menos rigor do que a entrada de usuários finais, o que abre uma porta indireta: em vez de atacar a aplicação diretamente, o atacante compromete o serviço externo integrado a ela.
Quer saber se sua aplicação Web, seu sistema com IA, seu app mobile ou suas APIs têm alguma dessas falhas? Fale com a gente para orçamento de Pentest.
Falar com especialista ▸