Falhas do tipo CWE-772
89 resultadosVazamento de recurso por falta de liberação
Ocorre quando o código adquire um recurso (memória, arquivo, conexão, handle) e nunca o libera explicitamente, mesmo após não precisar mais dele. O recurso fica ocupado indefinidamente, consumindo memória ou limitando a capacidade do sistema até causar esgotamento e falha de serviço.
Uma função abre um arquivo com fopen() para ler dados, processa o conteúdo, mas retorna sem chamar fclose(). Se a função for chamada repetidamente (ou em caso de exceção antes do close), os descritores de arquivo se acumulam até o limite do SO ser atingido e nenhum arquivo poder ser aberto.
Use blocos try-finally ou defer (em Go) para garantir liberação mesmo em caso de erro. Em C++/Java, prefira RAII e garbage collection. Implemente análise estática e testes de vazamento com ferramentas como Valgrind, AddressSanitizer ou verificadores de SonarQube.