Falhas do tipo CWE-146

10 resultados

Neutralização inadequada de delimitadores de expressão/comando

Ocorre quando a aplicação falha em escapar ou validar adequadamente caracteres especiais que delimitam comandos ou expressões (como aspas, ponto-e-vírgula, pipes), permitindo que um atacante injete código ou comandos adicionais. O perigo está em executar lógica não intencional com privileégios da aplicação.

Exemplo

Um script shell que constrói um comando usando entrada do usuário sem escapar: `system("grep " + userInput + " /etc/passwd")`. Se o usuário injetar `test'; rm -rf /, a aplicação executa tanto o grep quanto o comando de deleção com seus próprios privilégios.

Como mitigar

Use bibliotecas de escape específicas do contexto (shlex.quote() em Python, PreparedStatements em SQL) ou, melhor ainda, substitua construção dinâmica de comandos por APIs estruturadas que não interpretam delimitadores. Valide entrada contra whitelist de caracteres permitidos quando possível.