Weaknesses of type CWE-75
36 resultsFalha em sanitizar elementos especiais entre planos de interpretação (Injeção de Elemento Especial)
É a incapacidade de neutralizar caracteres ou sequências que mudam o contexto de interpretação (ex: passar dados HTML em um contexto SQL, ou SQL em um contexto de shell). O atacante injeta código legítimo em um plano diferente daquele esperado, conseguindo executar lógica não autorizada porque a aplicação não valida a mudança de contexto.
Um formulário recebe um nome de usuário e o concatena diretamente em uma query SQL: 'SELECT * FROM users WHERE name = "' + input + '"'. Se o input contiver ' OR '1'='1, o atacante muda do plano 'dado string' para o plano 'lógica SQL', quebrando a query. Outro caso: aplicação monta um comando shell com input do usuário sem escapar, e o atacante injeta caracteres como ; ou | para executar comandos adicionais.
Use prepared statements ou parameterized queries para SQL; escape apropriado para o plano alvo (HTML entities para output HTML, shell escaping para comandos do SO); valide e rejeite entrada com caracteres especiais desnecessários; aplique princípio de menor privilégio nos serviços backend.