Fallos del tipo CWE-606

45 resultados

Entrada não validada em condição de loop

Ocorre quando a condição de um laço (for, while) depende de entrada do usuário sem validação prévia. Um atacante pode fornecer valores que causam loops infinitos, consumo excessivo de CPU/memória ou bypass de lógica de segurança. O risco é ainda maior em contextos sensíveis como processamento de requisições web.

Ejemplo

Um servidor aceita um parâmetro 'quantidade' via GET sem validar, usa direto em `for(int i=0; i<quantidade; i++)`. Um atacante envia quantidade=999999999, travando a thread e causando negação de serviço.

Cómo mitigar

Sempre validar e sanitizar entrada do usuário antes de usá-la em condições de loop; estabelecer limites máximos razoáveis e aplicá-los (ex: `Math.min(quantidade, MAX_LIMIT)`); usar timeouts em operações críticas.