Falhas do tipo CWE-570

1 resultado

Expressão sempre falsa

Ocorre quando o código contém uma condição lógica que será sempre avaliada como falsa, tornando o bloco correspondente inalcançável. Isso geralmente resulta de erros de lógica, typos em comparações ou condições impossíveis, permitindo que código crítico (como validações de segurança) seja silenciosamente ignorado.

Exemplo

Um validador que deveria rejeitar entradas inválidas, mas usa a condição `if (valor < 0 && valor > 100)` em vez de `||` (OR), tornando a verificação sempre falsa e deixando passar valores fora do intervalo permitido.

Como mitigar

Revise lógica condicional durante code review, use linters estáticos (como SonarQube ou ESLint) que detectam condições impossíveis, e implemente testes unitários que cobrem ambos os caminhos (verdadeiro e falso) de cada decisão crítica.