Momenteel ben ik bezig met een nieuwe upload script voor afbeeldingen, waarbij het ook de bedoeling is dat er een watermerk of te wel het logo van de site reacht in de hoek word getoont bij de afbeelding.
Uploaden werkt wel, alleen op de ene wordt het watermerk niet getoond (wup.ni) en krijg ik diverse errors en bij de andere website gaat dit wel gewoon goed (NK). Graag zou ik willen vragen of iemand weet waar het probleem aan kan liggen, hieronder staan diverse links met daarop de scripts en het phpinfo file.
Hey Jurgen, dank voor het kijken. maar die mimetype is toch meer voor als je het wilt beperken tot een bepaald bestand. in het vorige script stond tie er wel in dus er in zetten zou niet zo moeilijk moeten zijn. maar dit is meer voor de veiligheid lijkt me. Want als voor het testen een gewone afbeelding gebruikt bijvoobeeld een JPG dan slaat hij deze wel op en kan ik hem ook gewoon openen. (het bestandje van jou lol.php.jpg die kan ik niet openen).
Dat komt omdat het geen JPG was, en dat is gevaarlijk.
De inhoud van lol.php.jpg was
<?php
echo phpinfo();
?>
maar ik kon er ook in zetten
<?php
exec('kill all'); //geen idee of dit goed werkt, ligt er aan of je Linux of Windows gebruikt
?>
Met andere woorden, je server wordt afgesloten, en dat vinden ze niet leuk bij je host, als dit eventueel mogelijk is. Ook is het via dit soort geintjes mogelijk om jou gehele /home/(username) map te wissen(jou root map dus)
Het beste is om de 1e zoveel bytes van een file te checken, dit zijn de file headers, als die niet overeenkomen met bijv jpg of gif, niet accepteren, er staat op deze site ook een tutorial van ergens.
?
Onbekende gebruiker
05-06-2008 23:26
Achjah:
Php.net
$_FILES['userfile']['type']
The mime type of the file, if the browser provided this information. An example would be "image/gif". This mime type is however not checked on the PHP side and therefore don't take its value for granted.