Falhas do tipo CWE-468
4 resultadosEscalamento incorreto de ponteiro
Ocorre quando o código multiplica um índice ou offset por um tamanho de tipo incorreto ao calcular endereços de memória com ponteiros. O desenvolvedor usa a unidade errada (bytes vs. elementos) ou o tipo de dados errado, causando acesso a posições de memória indevidas e potencial corrupção de dados ou leitura não autorizada.
Um código que itera sobre um array de inteiros (4 bytes cada) mas multiplica o índice por 1 (tamanho de char) em vez de 4 ao acessar via ponteiro aritmético. Resultado: acessa endereços completamente errados e pode ler/escrever fora dos limites do array.
Use aritmética de ponteiros implícita da linguagem (array[i] em vez de *(ptr + i*tamanho)) ou, se necessário fazer cálculo manual, sempre multiplique o índice pelo sizeof() do tipo correto. Validar offsets em tempo de design e usar ferramentas de análise estática para detectar inconsistências.