Falhas do tipo CWE-460
23 resultadosLimpeza 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.
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.
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.