Weaknesses of type CWE-704
81 resultsTipo, versão ou conversão de tipo incorretos
Ocorre quando o código assume ou força uma conversão de tipo sem validar se o objeto é realmente do tipo esperado, ou quando trata uma versão de estrutura de dados como se fosse outra. Isso pode causar acesso a memória inválida, execução de código não autorizado ou corrupção de dados.
Um serializador desserializa um objeto e o interpreta diretamente como uma classe específica sem verificar seu tipo real; se um atacante enviar um objeto de tipo diferente, o código acessa campos inexistentes ou executa métodos não previstos, causando crash ou fuga de dados.
Sempre valide o tipo do objeto antes de conversão (use instanceof, type checks ou esquemas de validação). Implemente versionamento explícito de estruturas de dados e recuse desserializações de tipos inesperados. Em linguagens com segurança de tipo, prefira parsing explícito e tratamento de erros sobre conversões diretas.