Weaknesses of type CWE-146
10 resultsNeutralização inadequada de delimitadores de expressão/comando
Ocorre quando um aplicativo falha em remover ou escapar caracteres especiais que delimitam expressões ou comandos (como aspas, ponto-e-vírgula, pipes, etc.), permitindo que um atacante injete código ou comandos maliciosos. O perigo: dados não confiáveis são interpretados como parte da sintaxe, não como dado inerte.
Um script recebe um nome de usuário via formulário e o insere diretamente em um comando SQL ou shell sem sanitização. Se o input contiver um delimitador como ' ou ;, o atacante pode fechar a expressão legítima e injetar seu próprio comando, alterando a lógica da aplicação.
Use prepared statements/parameterized queries para SQL, escape rigoroso de caracteres especiais conforme o contexto (shell, regex, XML), e valide entrada contra um whitelist de caracteres permitidos. Nunca confie em dados do usuário como código ou comando.