Fallos del tipo CWE-484

1 resultado

Falta de break em switch

Ocorre quando um case em um switch não possui break, fazendo a execução "cair" para o próximo case — comportamento chamado de fall-through. Isso causa lógica inesperada, permitindo que código não previsto seja executado e comprometendo a integridade das decisões da aplicação.

Ejemplo

Um validador que checa permissões: se o usuário é 'admin' e falta o break, a execução continua para o case 'user' e aplica permissões reduzidas sobre as de admin, ou vice-versa, deixando a lógica de autorização quebrada.

Cómo mitigar

Sempre feche cada case com break (ou return) a menos que fall-through seja intencional e explicitamente documentado. Use linters (ESLint, pylint, etc.) configurados para alertar sobre breaks ausentes e revise cases adjacentes em code review.