Falhas do tipo CWE-697
80 resultadosComparação incorreta
O código compara valores ou objetos de forma inadequada, usando operadores errados ou não considerando o tipo de dados envolvido. Isso permite que condições de segurança sejam contornadas: um atacante entra onde não deveria porque a lógica de comparação não funciona como o desenvolvedor pretendia.
Um sistema valida acesso comparando a string do token com == em vez de usar comparação constante: se (token == tokenEsperado). Um atacante testa strings como '0' ou null que podem ser iguais por coerção de tipo, burlando a autenticação.
Use operadores de comparação apropriados ao tipo (=== ou equals() em vez de ==), implemente comparação constante-time para valores sensíveis (HMAC ou funções específicas), e valide tipos explicitamente antes de comparar. Em java, use .equals() ou MessageDigest.isEqual(); em Python, use == com casting apropriado ou bibliotecas como secrets.compare_digest().