Weaknesses of type CWE-1285

61 results

Validação inadequada de índice, posição ou deslocamento na entrada

A aplicação aceita um índice, posição ou offset fornecido pelo usuário sem validar se ele está dentro dos limites permitidos da estrutura de dados (array, string, buffer, etc.). Isso permite acesso a posições inválidas, causando leitura de dados sensíveis, corrupção de memória ou travamento do programa.

Example

Um API REST que retorna itens de uma lista permite passar um parâmetro ?offset=999999 sem verificar se existe dados naquela posição. Um atacante varre offsets arbitrários para ler dados de outros usuários ou causar erro de negação de serviço.

How to mitigate

Sempre validar que o índice/offset/posição está dentro do intervalo válido (0 até tamanho-1) antes de acessar. Use safeguards na linguagem (bounds checking automático quando disponível) e trate entradas suspeitas como erro, rejeitando-as ou retornando falha explícita.