Weaknesses of type CWE-473
5 resultsModificação de variáveis externas em PHP
Fraqueza que ocorre quando PHP permite que variáveis globais ou superglobais sejam sobrescritas por entrada do usuário (via GET, POST, cookies, etc.), sem validação ou isolamento adequado. Isso acontece principalmente quando se usa `register_globals` ativado ou quando se confia diretamente em `$_GET`, `$_POST` sem filtro, permitindo que um atacante altere lógica crítica da aplicação.
Um script PHP que faz `if ($_GET['is_admin']) { $is_admin = $_GET['is_admin']; }` deixa um atacante definir `is_admin=1` na URL para ganhar privilégios. Ou pior: em versões antigas com `register_globals`, submeter `admin=true` via formulário criava automaticamente a variável `$admin` como global.
Valide e sanitize explicitamente toda entrada externa; use `filter_var()` ou bibliotecas dedicadas; mantenha `register_globals = Off` (já é padrão em PHP 5.4+); use `$_SESSION` para dados sensíveis como autenticação, nunca confie em GET/POST direto; aplique listas brancas de valores aceitos para variáveis críticas.