Weaknesses of type CWE-158
28 resultsNeutralização inadequada de byte nulo
Ocorre quando a aplicação não trata corretamente caracteres nulos (\0) em strings ou dados de entrada, permitindo que um atacante contorne validações ou filters. O byte nulo pode truncar strings em linguagens como C, ou ser interpretado diferentemente por componentes diferentes da aplicação, criando divergências no processamento.
Um validador rejeita URLs que contêm 'admin', mas o atacante envia 'admin\0.jpg' — a aplicação vê isso como 'admin' e bloqueia, mas a função de acesso a arquivo vê apenas 'admin' até o nulo e carrega um arquivo de configuração sensível. Outro caso: filtros SQL que param no byte nulo, deixando código SQL após ele ser executado.
Valide e sanitize entrada eliminando ou escapando bytes nulos antes de qualquer processamento; use bibliotecas seguras que tratam strings com comprimento explícito (não apenas terminadas em nulo); prefira linguagens modernas (Python, Java) que gerenciam automaticamente nulos em strings. Teste casos de entrada com caracteres nulos durante code review e testes de segurança.