Falhas do tipo CWE-192
6 resultadosCoerção Inteira Incorreta
Ocorre quando o código converte ou compara inteiros de tipos diferentes (como int para unsigned int, ou int para short) sem validar se o valor cabe no tipo destino. Valores podem ser truncados, transformados em negativos ou assumir valores inesperados, levando a lógica de segurança a falhar.
Um validador de tamanho de arquivo recebe um inteiro de 64 bits (long), mas o compara ou armazena em uma variável de 32 bits (int). Um arquivo de 5GB trunca para valor negativo ou pequeno, burlando a restrição de tamanho máximo e permitindo upload malicioso.
Sempre valide o intervalo do valor antes de converter entre tipos inteiros; use tipos com tamanho explícito e consistente em operações críticas de segurança; ative avisos do compilador para conversões implícitas (-Wconversion no GCC/Clang).