Mailinglisten-Archive |
Hallo allesamt... On Donnerstag, 8. September 2011 14:39:11 Nico Haase wrote: > > Sicherheit: > > Wodurch wird mein Skript angreifbar wenn ich nicht zuvor prüfe ob > > die abzufragende Variable einen Wert enthält? > > z.B. > > if($_REQUEST['speichern'] == 'ja') > > Ich habe vorhin schon länger darüber nachgedacht, aber mir fällt immer noch > kein konkretes Beispiel ein... > Zunächst mal bin ich dafür $_REQUEST auch gleich mit abzuschaffen.... Hier hast Du die Anfälligkeit, dass - obwohl du einen POST-Parameter erwartest - ein User Dir einen GET-Parameter selben Namens unterjubeln kann... Prinizipiell halte ich es auch für fatal, einfach mal die Notices auszuschalten - zumindest auf den DEV-Servern! Wenn ein Parameter nicht definiert ist, dann hat der Entwickler das Form, die URL oder was auch immer einfach falsch gebaut... Nach 3-x mal gehen die Abfragen wie if (isset($var) && $var == xyz) { } ganz einfach von der Hand. Gerade durch die Typunsicherheit bei php sollte man alle Eventualitäten bedenken und z.B. mit "===" auch auf Typgleichheit prüfen... Jens -- jens reinemuth leonhard-eckel-siedlung 4 67483 edesheim mail: jens at reinemuth.info jabber: jens.reinemuth at jabber.erdfisch.de
php::bar PHP Wiki - Listenarchive