Fallos del tipo CWE-588
3 resultadosAcesso a campo em ponteiro de tipo não-estruturado
A fraqueza ocorre quando o código tenta acessar um membro (campo) de uma estrutura através de um ponteiro que não aponta para uma estrutura válida ou cujo tipo não foi validado. Isso pode causar leitura ou escrita em endereços de memória inválidos, levando a crash, corrupção de dados ou execução arbitrária.
Um código recebe um ponteiro genérico (void*) de uma função externa e tenta acessar um campo como se fosse uma estrutura (p->campo), sem antes validar que p realmente aponta para o tipo esperado. Se o ponteiro for na verdade um inteiro coagido ou outro tipo, o acesso interpreta lixo de memória como um offset válido.
Sempre valide ou documente o tipo real do ponteiro antes de acessar membros. Use type-safe wrappers, casts explícitos com verificação de tipo, ou evite void* quando possível. Em C, considere usar unions ou callbacks tipados; em C++, prefira polimorfismo ou templates em vez de casts genéricos.