Weaknesses of type CWE-164
2 resultsNeutralização inadequada de caracteres especiais internos
Ocorre quando o software não sanitiza corretamente caracteres ou sequências especiais que têm significado dentro de um contexto específico (como delimitadores, metacaracteres ou comandos), permitindo que um atacante injete dados maliciosos através desses caracteres não neutralizados. O risco é a execução não intencional de operações, bypass de validações ou manipulação do fluxo de processamento.
Um sistema de geração de relatórios que monta queries SQL concatenando entrada do usuário sem escapar aspas ou ponto-e-vírgula: quando alguém insere um valor como `'; DROP TABLE users; --`, esses caracteres especiais internos ao SQL não são neutralizados, permitindo injeção de comando SQL e comprometimento do banco.
Use consultas parametrizadas (prepared statements) em vez de concatenação; implemente listas brancas rigorosas para entradas; escapeie ou remova caracteres especiais conforme o contexto (SQL, shell, XML, etc.) usando funções específicas da linguagem; valide e normalize todas as entradas antes de usar em contextos onde caracteres especiais têm significado.