Weaknesses of type CWE-401
619 resultsVazamento de memória por falta de liberação
Ocorre quando o programa aloca memória (heap ou recursos) mas não a libera adequadamente após seu uso, deixando-a inacessível para reutilização. O memory leaker consome progressivamente mais RAM, degradando performance e podendo levar a negação de serviço, especialmente em aplicações de longa duração ou servidores.
Um servidor web que cria um objeto para processar cada requisição mas esquece de chamar `free()` ou `delete` ao final. Depois de milhões de requisições, toda memória disponível está consumida por objetos orphans e o servidor para de responder.
Use análise estática (static analyzers) ou ferramentas de profiling (valgrind, sanitizers do GCC/Clang) para detectar leaks em desenvolvimento. Em linguagens com garbage collection, garanta que objetos saiam de escopo corretamente; em C/C++, libere sempre o que alocou, ou prefira smart pointers (unique_ptr, shared_ptr) que liberam automaticamente.