wahsaga: Tipp: Fileupload mit PHP und Sicherheit

Beitrag lesen

hi,

bekomme eben von meinem Provider den monatlichen Newsletter. Den PHP- Tipp kopiere ich einfach mal hierher.

abgesehen davon, dass das urheberrechtliche probleme geben könnte: der tipp ist irgendwie, hm, mist.

Man kann ganz einfach prüfen, ob die hochgeladene Datei einem bestimmen MIME-Typ entspricht.
[...]
if( $_FILES['userfile']['type'] == "image/jpeg" )
[...]
Es wird hier geprüft, ob die Datei (userfile) wirklich den MIME-Typ "image/jpeg" hat.

tja, das nur gerade bei jpegs nicht alle browser den gleichen mime-type senden, scheint denen entgangen zu sein. der IE nutzt m.W. image/pjpeg oder sowas in der art.

darüber hinaus muss der client ja auch nicht unbedingt ein vertrauneswürdiger sein - der kann dir auch gerne eine ausführbare datei mit image/jpeg oder auch wurgel/baldtot als mime-type schicken.

gerade bei grafiken bietet es sich an, den typ stattdessen mittels getimagesize() zu überprüfen.

Eine weitere Möglichkeit ist, einfach den Dateinamen der hochgeladenen Datei selbst zu prüfen.

klar, und wenn ich auf einen VW käfer vorne einen dreizackigen stern in einem kreis draufmontiere, kann ich ihn als benz verkaufen ...

Das ".jpg" lässt sich durch jede beliebige Endung ersetzen.

ja, und das kann der client auch.

gruß,
wahsaga

--
"Look, that's why there's rules, understand? So that you _think_ before you break 'em."