Severin Kacianka: Upload von ausführbaren Skripts verhindern

Beitrag lesen

Hallo Hagis,

Nein im Ernst, es muss doch möglich sein die Endungen von Skripts aus einer Umgebungsvariable auszulesen!?

Mir ist kein guter Weg bekannt (abgesehen davon in der httpd.conf nachzusehen).

Falls dies tatsächlich nicht möglich sein sollte müsste ich jedoch den umgekehrten Weg gehen.

Eine Moeglichkeit ist noch das Uploadverzeichnis via .htaccess fuer allen zu verbieten (deny from all) und eine Datei zu schreiben, die Dateien aus dem Uploadverzeichnis liest und direkt an den Client schickt.
Zum Senden der Datei hilft dir vielleicht dieses Codeschnipsel:

  
// das ist noetig damit der download via SSL auch fuer en IE funktioniert  
session_cache_limiter("must-revalidate");  
// $file muss den vollen Pfad zur Datei enthalten.  
// z.B.: /home/www/projekt/uploads/file.ext  
header('Content-Description: File Transfer');  
header('Content-Type: application/octet-stream');  
header('Content-Length: ' . filesize($file));  
header("Content-Disposition: attachment; filename=\"".basename($file)."\";");  
@readfile($file) or die()  

Gruß,
Severin

--
They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety.
-- Benjamin Franklin