Falhas do tipo CWE-1091

1 resultado

Uso de objeto sem invocar método destrutor

Ocorre quando um objeto é utilizado ou descartado sem chamar seu método destrutor, deixando recursos (memória, arquivos, conexões) não liberados. Isso causa vazamento de recursos e pode deixar o sistema em estado inconsistente ou vulnerável.

Exemplo

Um desenvolvedor abre uma conexão com banco de dados em uma classe, mas quando o objeto é descartado, o destrutor não é chamado automaticamente (ou foi suprimido), mantendo a conexão aberta indefinidamente e esgotando o pool de conexões.

Como mitigar

Garanta que o destrutor seja sempre invocado através de padrões como RAII (Resource Acquisition Is Initialization), blocos try-finally ou try-with-resources. Use análise estática para detectar objetos não finalizados e revise a lógica de ciclo de vida dos recursos.