Falhas do tipo CWE-467
4 resultadosUso de sizeof() em tipo ponteiro
Ocorre quando o desenvolvedor aplica sizeof() a um ponteiro em vez do dado que ele aponta, obtendo o tamanho da variável de endereço (tipicamente 4 ou 8 bytes) em lugar do tamanho real da estrutura ou array. Isso causa alocação insuficiente de memória, corrupção de buffer ou leitura de dados inválidos.
Um código aloca espaço para uma struct: `malloc(sizeof(ptr_struct))` em vez de `malloc(sizeof(*ptr_struct))`. O buffer resultante tem apenas 8 bytes (64 bits), não o tamanho real da struct, causando estouro ao copiar dados para essa região.
Sempre use `sizeof(*ponteiro)` ou `sizeof(tipo)` quando alocar, nunca `sizeof(variavel_ponteiro)`. Ferramentas de análise estática (lint, Clang Analyzer) detectam este padrão automaticamente — integre-as na pipeline de build.