Quebra de controle de acesso: quando um usuário vê dados de outro
Autenticação responde "quem é você". Autorização responde "o que você pode fazer, e ver, depois de provar quem é". Quebra de controle de acesso acontece quando a segunda pergunta não é verificada com o mesmo rigor da primeira — e é, segundo o ranking OWASP, a categoria de vulnerabilidade mais comum em aplicações web nos últimos anos.
Escalação horizontal e vertical
Escalação horizontal acontece quando um usuário autenticado consegue acessar dados de outro usuário do mesmo nível — o clássico exemplo de trocar um identificador numérico na URL e ver o pedido, fatura ou perfil de outra pessoa. Escalação vertical é mais grave: quando um usuário comum consegue executar ações ou acessar áreas reservadas a administradores.
Por que essa falha é tão recorrente
Geralmente não é porque ninguém pensou em controle de acesso — é porque ele foi implementado de forma inconsistente entre diferentes partes do sistema. Uma tela nova, uma funcionalidade adicionada às pressas, uma API criada para um app mobile: cada ponto de entrada precisa repetir a mesma verificação de permissão, e basta um deles esquecer para abrir uma brecha, mesmo que o resto do sistema esteja bem protegido.
Por que scanners automáticos costumam não pegar isso
Ferramentas automatizadas de varredura têm dificuldade em identificar esse tipo de falha porque, tecnicamente, a requisição "funciona" — não gera erro, não quebra nada visível. É preciso entender a lógica de negócio da aplicação para perceber que um usuário está vendo algo que não deveria, o que é exatamente o tipo de análise que um pentest manual foi desenhado para fazer.
O que reduz esse risco
Verificação de permissão centralizada e consistente (em vez de repetida manualmente em cada tela), princípio do menor privilégio por padrão, e testes específicos de autorização entre diferentes perfis de usuário — não só teste de login funcionando.
Sua empresa resiste a um teste de invasão real?
Agende um diagnóstico técnico com a Sovereign Tech e descubra exatamente onde sua aplicação está exposta — antes que alguém mal-intencionado descubra primeiro.