Tom: XSS-Gefahr beim Formular

Beitrag lesen

Hello,

<form name="" action="<?php echo $_SERVER['PHP_SELF']; ?>"
method="POST" enctype="text/html">

Ich las da in dem anderen Thread gerade "XSS-Problematik", also Cross-Site Scripting == Angriffe auf Formulare in Webseiten. Das ist hier auch möglich, weil Du die Variable $_SERVER['PHP_SELF'] ungefiltert ins Formular einsetzt. Diese enthält aber bei Standardeinstellung des Webservers (zumindest beim Apachen ist es so) auch die sogenannte Path-Info, also den Teil der URL, den der User zusätlich noch hinten anfügt an den Pfad. Bitte nicht verwechseln mit den Parametern.

Mittels dieser Path-Info kann man dann das Formular entführen und/oder JavaScripts verstecken.

Es ist daher sicherer, die Variable $_SERVER['SCRIPT_NAME'] zu verwenden, die von PHP um diese Zusatzinformation bereinigt wird.

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de