Lieber pl,
Im Übrigen muss man beim Upload sowieso sicherstellen daß ein Dateiname bestimmten Konventionen genügt.
davon gehe ich grundsätzlich aus. Slashes in jeder Richtung sind z.B. schlicht verboten.
Einem Hacker ist das völlig egal. Er platziert ein agent.php unterhalb der Docroot und kann dann in aller Ruhe sein Unwesen teiben.
Ähm... wie soll denn agent.php ausgeführt werden? Durch welchen Request wird das vom Server tatsächlich aufgerufen, wenn die Ausgabe der Datei an den Browser durch ein Script geschieht, da die Adresse nicht über die URL erreichbar ist?
Und was den Namen betrifft: Bei einer DB gestützten Anwendung kriegt die Datei als Name einfach die ID vom auto_increment, fertig.
Klar. Je nach Anwendung kann das sogar sinnvoll sein, gerade wenn man verschiedene Versionen ein und derselben Datei vorhalten können will.
Tipp: Benutze die FileAPI zum Upload, die liefert neben type auch mtime und size zur jeweiligen Datei.
FileAPI? Du meinst bestimmt File Information, Du alter PHP-ler. ;-)
Liebe Grüße,
Felix Riesterer.