Weaknesses of type CWE-391

25 results

Condição de erro não verificada

É quando o código chama uma função ou operação que pode falhar, mas não valida o resultado antes de usar. O programa segue adiante assumindo sucesso, mesmo que tenha havido erro — isso leva a comportamentos impredizíveis, corrupção de dados ou execução de lógica com estado inválido.

Example

Uma aplicação tenta abrir um arquivo com fopen() para leitura, mas não verifica se o ponteiro retornado é NULL. Depois tenta ler dados desse ponteiro inválido, causando crash ou leitura de lixo de memória.

How to mitigate

Sempre verificar códigos de retorno e exceções: valide NULL para ponteiros, valores de erro para funções C, e capture exceções em linguagens modernas. Use linters e ferramentas de análise estática para detectar retornos não tratados.