Weaknesses of type CWE-794
5 resultsFiltragem incompleta de múltiplas instâncias de elementos especiais
A aplicação tenta filtrar ou bloquear caracteres ou sequências perigosas (como tags HTML, comandos SQL, scripts), mas o filtro não remove *todas* as instâncias — deixa passar algumas por estar mal implementado ou incompleto. Um atacante explora isso repetindo o padrão bloqueado ou usando variações que o filtro não previu, conseguindo injetar código malicioso apesar da proteção.
Um WAF bloqueia a sequência '<script>' em inputs, mas o código malicioso envia '<<script>script>' — após remover a primeira ocorrência, sobra '<script>' funcional. Ou um filtro remove 'union' de queries SQL, mas 'un/**/ion' passa porque o comentário /*/ não foi considerado.
Use listas brancas (whitelist) em vez de listas negras; aplique filtros recursivos ou iterados até não encontrar mais padrões perigosos; melhor ainda, use APIs seguras que fazem escape automático (prepared statements, templating engines com sanitização nativa). Testes devem cobrir payloads aninhados e variações do padrão bloqueado.