Falhas do tipo CWE-460

25 resultados

Limpeza inadequada ao lançar exceção

Ocorre quando o código não libera recursos (conexões, arquivos, memória) corretamente quando uma exceção é lançada antes do ponto de limpeza previsto. O programa pode vazar recursos, deixando conexões abertas ou arquivos trancados, comprometendo a estabilidade e segurança da aplicação.

Exemplo

Um método abre uma conexão com banco de dados, realiza uma query que lança exceção, e o bloco de fechamento nunca é executado. A conexão permanece aberta, esgotando o pool de conexões e indisponibilizando a aplicação para novos acessos.

Como mitigar

Use try-finally ou try-with-resources (Java) para garantir limpeza mesmo com exceção. Em linguagens modernas, prefira gerenciadores automáticos de contexto (context managers em Python, using em C#). Teste cenários de falha explicitamente para validar se recursos são liberados.