Falhas do tipo CWE-14
10 resultadosRemoção de limpeza de buffers pelo compilador
O compilador otimiza e remove código que limpa buffers sensíveis (senhas, chaves criptográficas) da memória, considerando-o 'código morto'. Isso deixa dados sensíveis na RAM, vulneráveis a ataques de leitura de memória ou forensics.
Exemplo
Um desenvolvedor zera um buffer com senha usando memset(buffer, 0, size) antes de liberar a memória, mas o compilador remove essa chamada porque detecta que o buffer não é mais lido depois. Dados sensíveis persistem na RAM e podem ser recuperados.
Como mitigar
Use funções seguras que o compilador não otimiza (como explicit_bzero, SecureZeroMemory no Windows, ou memset_s em C11), ou declare buffers sensíveis como volatile para forçar a escrita. Considere usar bibliotecas criptográficas que cuidam disso automaticamente.
CVE-2023-32098MEDIUMKey duplication in GSDKEPSS 0.5%CVE-2023-32099MEDIUMKey duplication in GSDKEPSS 0.5%CVE-2023-2481MEDIUMKey duplication in GSDKEPSS 0.5%CVE-2023-32100MEDIUMKey duplication in GSDKEPSS 0.5%CVE-2023-1132MEDIUMKey duplication in GSDKEPSS 0.5%CVE-2023-32096LOWKey duplication in GSDKEPSS 0.5%CVE-2023-32097LOWKey duplication in GSDKEPSS 0.5%CVE-2023-0965LOWKey duplication in GSDKEPSS 0.5%CVE-2025-64646MEDIUMMultiple Vulnerabilities in IBM Concert SoftwareEPSS 0.2%CVE-2026-48984MEDIUMpam_usb: xfree() does not call explicit_bzero — sensitive cryptographic material may linger in freed heapEPSS 0.1%