Weaknesses of type CWE-697
80 resultsComparação incorreta
A fraqueza ocorre quando o código realiza comparações lógicas de forma imprecisa — usando operadores errados, comparando tipos incompatíveis ou ignorando casos especiais — resultando em decisões de segurança incorretas. Um atacante pode contornar validações ou controles de acesso explorando o desvio na lógica condicional.
Um código valida senha comparando strings com '==' em vez de usar função de hash segura; ou verifica se um ID de usuário é válido com 'if (id > 0)' quando deveria validar contra uma lista branca específica. Em ambos os casos, a comparação rasa permite bypass de segurança.
Use sempre funções apropriadas para cada tipo de comparação (ex: hash seguro para senhas, igualdade de tipo e valor com operadores estritos); implemente validação contra listas brancas explícitas; adicione testes unitários que cobram casos extremos e valores inesperados; revise a lógica condicional em controles de segurança durante code review.