Fallos del tipo CWE-147

5 resultados

Falha em neutralizar terminadores de entrada

Ocorre quando a aplicação não neutraliza ou valida adequadamente caracteres especiais que terminam ou delimitam dados (como nulo, quebra de linha, aspas). Um atacante injeta esses caracteres para truncar strings, escapar contextos ou contornar validações, alterando o comportamento esperado do programa.

Ejemplo

Um formulário web aceita um nome completo sem filtrar caracteres nulos. Se o atacante envia 'João\x00<script>', a string pode ser truncada no nulo antes de ser armazenada ou processada, contornando filtros XSS. Em outro cenário, um comando shell construído com entrada do usuário pode ser quebrado se não tratar aspas ou quebras de linha, permitindo injeção de comandos.

Cómo mitigar

Valide e sanitize todas as entradas, removendo ou escapando caracteres terminadores relevantes ao contexto (nulo, aspas, quebras de linha). Use listas brancas de caracteres permitidos quando possível, e aplique encoding apropriado antes de usar dados em SQL, shell ou HTML.