Falhas do tipo CWE-666
1 resultadoOperação em recurso em fase incorreta do ciclo de vida
Ocorre quando código tenta usar ou manipular um recurso (arquivo, conexão, objeto) em um momento inadequado do seu ciclo de vida — por exemplo, ler de um arquivo após fechá-lo, ou acessar uma conexão de banco já desconectada. O erro acontece porque não há validação do estado do recurso antes da operação, causando comportamento imprevisto ou crash.
Um aplicativo abre uma conexão com banco de dados, fecha a conexão, mas depois tenta executar uma query nela — resultando em erro de 'conexão inválida' ou mesmo corrupção de dados se a lógica não tratar a falha corretamente.
Valide o estado do recurso antes de qualquer operação (conexão ativa, arquivo aberto, etc.); use padrões como try-finally ou context managers (with em Python) para garantir que recursos são liberados apenas após seu último uso; implemente máquinas de estado explícitas quando o ciclo de vida é complexo.