Fallos del tipo CWE-1108
3 resultadosDependência excessiva de variáveis globais
A fraqueza ocorre quando o código depende intensamente de variáveis globais para manter estado e lógica, dificultando o rastreamento de mudanças e criando vulnerabilidades de segurança. Variáveis globais podem ser alteradas de forma não esperada em qualquer lugar do programa, facilitando exploração por injeção de dados, race conditions ou lógica corrompida.
Um aplicativo web usa uma variável global `user_logged_in` para controlar acesso. Atacante descobre que pode chamar uma função em paralelo que reseta essa variável; entre o check da autenticação e a execução da ação sensível, a variável é limpa e a operação restrita executa sem autorização.
Elimine variáveis globais em favor de parâmetros, propriedades de classe ou contexto thread-local. Use padrões como Dependency Injection, encapsule estado em objetos e valide permissões a cada operação sensível em vez de confiar em estado global imutável.