Falhas do tipo CWE-562
8 resultadosRetorno de endereço de variável de pilha
A função retorna o endereço de memória de uma variável local (alocada na pilha), que deixa de existir quando a função termina. Quem chama a função fica com um ponteiro inválido apontando para memória que pode ser sobrescrita, causando corrupção de dados ou execução de código arbitrário.
Uma função em C retorna `&variavel_local` onde `variavel_local` é declarada no escopo da função. Após a função retornar, esse endereço aponta para espaço de pilha reutilizável por outras chamadas, levando a leitura ou escrita de dados não pretendidos.
Alocar a variável no heap com `malloc()` e retornar o ponteiro (ou usar RAII em C++), ou refatorar para retornar o valor diretamente em vez do endereço. Em análise estática, ferramentas como `-fstack-protector` e linters avisam sobre esse padrão.