Weaknesses of type CWE-914
8 resultsControle inadequado de variáveis identificadas dinamicamente
Ocorre quando a aplicação permite que nomes de variáveis sejam construídos ou recebidos dinamicamente (por entrada do usuário ou dados não confiáveis) sem validação adequada. Um atacante pode acessar, modificar ou executar variáveis sensíveis que não deveriam estar acessíveis, contornando controles de segurança pretendidos.
Um sistema recebe um nome de variável como parâmetro (ex: `eval('$' . $_GET['var'])`) e executa-a diretamente. Um atacante pode passar 'admin_token' ou 'is_authenticated' para acessar ou sobrescrever valores críticos armazenados em variáveis globais.
Nunca construa nomes de variáveis a partir de entrada não confiável. Use whitelist rigorosa de variáveis permitidas, evite `eval()` e funções de interpretação dinâmica, e prefira estruturas de dados explícitas (arrays/dicts chaveados) com validação de chaves conhecidas.