Weaknesses of type CWE-484

1 result

Falta de Break em Switch

Quando um case em um switch não possui break, a execução 'cai' para o próximo case (fall-through), executando código não intencional. Isso causa lógica errada e pode levar a comportamentos de segurança imprevistos, como contorno de validações ou execução de operações indesejadas.

Example

Um switch que valida permissões de usuário: se o case 'admin' não tem break, um usuário comum que cair nele por acaso executará operações administrativas. Ou um switch que processa comandos onde a falta de break permite executar múltiplos comandos sequencialmente quando deveria ser apenas um.

How to mitigate

Sempre coloque break explícito no final de cada case (ou retorne). Use linters e análise estática para detectar cases sem break. Se o fall-through for intencional (raro), documente claramente no código.