Falhas do tipo CWE-1330

1 resultado

Dados residuais legíveis após limpeza de memória

Ocorre quando dados sensíveis (senhas, chaves criptográficas, tokens) permanecem recuperáveis na memória após operações de 'apagamento'. O programa acredita ter removido a informação, mas técnicas forenses ou ataques ao hardware conseguem recuperar os dados porque a memória não foi de fato zerada.

Exemplo

Uma aplicação declara uma variável com senha, a processa, chama `free()` e segue adiante. Um atacante com acesso físico ao sistema ou via memory dump consegue recuperar a senha porque o conteúdo anterior da memória ainda está ali, apenas marcado como disponível.

Como mitigar

Use funções seguras de limpeza de memória (como `memset_s()` em C, `SecureZeroMemory()` no Windows, ou `sodium_memzero()` com libsodium) que garantem que o dado é efetivamente zerado. Valide o apagamento com testes e considere usar mecanismos de hardware (como Trusted Execution Environments) para dados muito sensíveis.