Hello,
ich hab mal gehört das angeblich ein einfaches einbilden von $_SERVER['PHP_SELF'] alla
echo '<form method="post" action="'.$_SERVER['PHP_SELF'].'">';
ein Sicherheitsrisiko darstellen soll.Ist das Richtig?
Diese Frage kannst Du Dir mit einem kleinen Versuch beantworten, der gar nicht aufwändig ist.
Baue Dir ein Miniscript
<?php ### info.php
phpinfo();
?>
Mehr muss es nicht enthalten.
Nun rufe das Script über die Adressleiste Deines Browsers auf:
http://domain.tld/info.php/hier/kommt/der/text?dumm=gelaufen
Schau Dir die Variablen
$_SERVER['PHP_SELF']
$_SERVER['SCRIPT_NAME']
$_SERVER['PATH_INFO']
usw. an.
Wie man ein Formular mit einem ungeschützten $_SERVER['PHP_SELF'] im action-Attribut entführt, zeige ich hier nicht, aber man kann dies durch Zusendung eines manipulierten Links ganz einfach tun.
Der einfachste Weg ist,
htmlspecialchars($_SERVER['PHP_SELF'])
zu verwenden, oder alternativ $_SERVER['SCRIPT_NAME']
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg