Weaknesses of type CWE-178

87 results

Tratamento inadequado de sensibilidade a maiúsculas/minúsculas

O código não trata corretamente a diferença entre letras maiúsculas e minúsculas em validações, comparações ou operações de segurança. Um atacante pode contornar filtros ou controles de acesso usando variações de caso (exemplo: 'Admin' em vez de 'admin'), já que a aplicação não normaliza ou compara corretamente as strings.

Example

Um sistema valida nomes de arquivo para bloquear '.exe', mas aceita '.EXE' ou '.Exe' porque a verificação é case-sensitive. Ou um WAF bloqueia a palavra-chave 'union' em SQL, mas o atacante injeta 'UnIoN' e consegue contornar o filtro.

How to mitigate

Normalize sempre para um único case (tipicamente minúsculas) antes de comparar strings em contextos de segurança. Use funções de comparação case-insensitive ou converta explicitamente com toLowerCase()/toUpperCase() antes de validações, filtros e controles de acesso.