Weaknesses of type CWE-771
6 resultsReferência perdida para recurso alocado ativo
Ocorre quando o código aloca um recurso (memória, arquivo, conexão de rede, mutex, etc.) mas perde a referência a ele antes de liberá-lo, impossibilitando a limpeza posterior. O recurso fica "órfão" na memória ou no sistema, causando vazamento e esgotamento gradual.
Uma função aloca um buffer dinamicamente, atribui o ponteiro a uma variável local, mas essa variável é sobrescrita antes do free() ser chamado. Ou um arquivo é aberto, mas a referência é perdida em uma exceção antes do close(). O recurso permanece alocado indefinidamente.
Use padrões como RAII (C++), try-finally ou try-with-resources (Java), context managers (Python). Ferramentas de análise estática (valgrind, sanitizers, linters) ajudam a detectar vazamentos. Revise fluxos de controle para garantir que toda alocação tem um caminho claro de liberação.