[PHP] register_globals ?

hi.

ich habe gehört, dass das aktivieren von register_globals ein sicherheitsrisiko bieten soll.

ist da was dran?

...ich sehe zwar keinen vorteil in der aktivierung, aber man will sich ja weiter bilden :)


cya.
 
wenn register globals aktiviert ist kann ich eine variable übergeben mit der du schon irgendwo was machst....es müssen da zwar einige sachen aufeinanderprallen, damit sich was anfangen lässt jedoch ist es ein unnötiges sicherheitsrisiko.
 
Ich will mal kurz das Sicherheitsrisiko darstellen (für den einen ist es eins, für den anderen eben nicht...):

Man nehme an, es gibt Datei 1:
PHP:
<form method="post" action="login.php">
<input type="text" name="narf">
</form>

und nun wird in datei 2 das ganze geprüft. Viele würde schreiben (geht nur bei RegGlob on):
PHP:
<?
if($narf=="hallo") echo "alles okay...";
?>

Nun könnte man aber das script auch per /login.php?narf=Hallo steuern. Nutzt man den kompletten, RICHTIGEN syntax, treten diese fehler nicht auf:

PHP:
<?
if($_POST["narf"]=="hello") echo "alles okay...";
elseif($_GET["narf"]) echo "na, wir werden doch wohl nicht...";
?>

-- ich hoffe, das beispiel hilft die problematik zu verstehen!
 
Zurück
Oben