Fallos del tipo CWE-672

64 resultados

Operação em recurso após expiração ou liberação

A aplicação tenta usar um recurso (conexão, arquivo, memória, token, etc.) após ele ter sido liberado, expirado ou se tornado inválido. O código não verifica se o recurso ainda está disponível antes de acessá-lo, causando comportamentos imprevíveis: crash, corrupção de dados ou exploração de segurança.

Ejemplo

Um programa fecha uma conexão com banco de dados em uma thread, mas outra thread continua tentando executar queries usando a mesma conexão. Ou uma aplicação web usa um token de autenticação após seu tempo de expiração ter passado sem revalidar.

Cómo mitigar

Sempre valide o estado do recurso antes de usá-lo (check se está ativo, não expirou, não foi liberado). Use gerenciadores de recurso com escopo claro (finally, context managers em Python, try-with-resources em Java) e implemente timeouts com lógica de renewal para recursos sensíveis à expiração.