Programmeerimine PHP
on true ning antakse administratiivsed privileegid:
if ($_POST['username'] == 'admin' && $_POST['password'] == 'abc123')
{
$admin = true;
}
...
...
...
if ($admin)
{
// give privilege to manage system users
}
Juhul, kui register_globals on sisse lülitatud ja me teame (või eeldame) muutuja $admin tähtsust - proovime seda sisestada (inject)
meie programmis $_GET parameetri abil: http://www.example.com/script.php?admin=1, mis on ekvivaletne sellele koodile:
$admin = 1;
...
...
...
if ($_POST['username'] == 'admin' && $_POST['password'] == 'abc123')
{
$admin = true;
}
...
...
...
if ($admin)
{
// give privilege to manage system users
}
Nüüd on ilmselt selege, miks PHP turvalisuse eksperdid soovitavad lülitada register_globals alati välja.
2. Display_errors: seadistab, kas veateateid väljastatakse või mitte. Väga mugav arenduse ja testimise etapil, kuigi toob turvalisuse
probleeme avalikus veebis