Hallo!
Ich habe einen Upload über ein html-Formular geschrieben, und überlege jetzt, wie ich Mißbrauch berhindern kann. Ich konntrolliere die Datei folgendermaßen:
if (isset($_FILES['userfile']) &&
(!$_FILES['userfile']['error']) &&
($_FILES['userfile']['type'] == "application/octet-stream") &&
(substr($_FILES['userfile']['name'],-4) == ".xls")) {
move_uploaded_file($_FILES['userfile']['tmp_name'], $dateiname);
}
else {
echo "FEHLER";
exit;
}
Erste Fragen, "application/octet-stream", beaue ich mir damit keine Stolperfalle, vielleicht senden das nicht alle Browser?
Außerdem bringt das nicht so viel, wenn ich eine jpg-Datei hochlade und als .xls umbenenne, ist das dann auch "application/octet-stream".
OK, Dateiendung prüfen sollte ich auf alle Fälle, oder?
Wie wärs noch mit einer mindest und Maximalgröße über $_FILES['probe']['size']? Welche Werte würdet ihr empfehlen?
Was könnte man noch machen um zu verhindern das jemand irgendwelche "bösen" Scripte oder so hochläd?
Bin für jeden Tipp dankbar!
Grüße
Andreas