Falhas do tipo CWE-466
8 resultadosRetorno de ponteiro fora do intervalo esperado
Uma função retorna um ponteiro que aponta para fora da memória válida que deveria controlar — seja por lógica errada, cálculo de deslocamento incorreto ou falta de validação de limites. Quem chama a função acredita que o ponteiro é seguro, mas na verdade aponta para lixo, stack, heap de outro objeto ou memória não alocada, causando corrupção ou leitura de dados sensíveis.
Uma função que busca um elemento em um array e retorna um ponteiro para ele faz uma aritmética de ponteiro errada no índice: retorna base + index sem verificar se index está dentro do array. Quem chama tenta desreferenciar esse ponteiro e acaba lendo ou escrevendo em memória arbitrária.
Valide sempre limites antes de retornar ponteiros (verificar offset, tamanho, bounds); use abstrações seguras (vetor com iteradores, lista tipada) em vez de aritmética manual de ponteiros; implemente testes que cobram retornos edge-case (índice -1, tamanho máximo, vazio).