- PHPupload -

Generelt

Husk at når du giver en bruger mulighed for at uploade til dit webhotel, kan han uploade kode der giver ham de samme muligheder du som administrator har hvis han kan browse filen bagefter. Det anbefales derfor på det kraftigste at du kun giver mulighed for at uploade til /db folderen, da den ikke er synlig via internettet.

Skal du uploade til en folder der umiddelbart kan browses via internettet, er det derfor vigtigt at du checker på endelsen og f.eks. kun tillader filer der ender på .jpg eller .gif. En bedre løsning er at lade brugere uploade til /db folderen, og derefter bruge programmeringskode til at flytte filen hen et sted hvor den må ligge, samtidig med at du checker endelsen.

Windows

På windows er php file upload slået til som standard, dog kan man kun uploade til /db mappen. Ønsker man at kunne uploade til andre placeringer skal man angive pathen til support afdelingen, se kontakt siden. Unix brugere skal læse videre, se nedenfor.

Unix

PHP file upload er som standard slået fra på de nyeste unixwebservere, f.eks. Hanne og Gudrun. Det skyldes bl.a. problemer med rettigheder af filer uploadet med file upload, og du skal kontakte os via kontaktformularen hvis du vil have det slået til.

PHP fileupload er desuden slået fra som standard da det skal omgås med varsomhed og en vis dygtighed. En ondskabsfuld bruger kan muligvis uploade et script til at kigge i bl.a. din source kode, der f.eks. kan indeholdende MySQL kodeord og andet privat information. Forvent det værste af dine brugere, og husk altid som minimum at checke at den uploadede fil ikke er et script, dvs. ender på pl/cgi/py/php eller php3. Det er der desværre _ikke_ taget højde for i nedenstående script.

Har man adgang til php fileupload skal være opmærksom på bl.a. følgende:

Simpelt eksempel

Lidt kode eksempel, tilpas til dit eget site:

<html><body>

<?
if (is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name']))
{
  umask(033);
  copy($HTTP_POST_FILES['userfile']['tmp_name'], "path/".$HTTP_POST_FILES['userfile']['name']);
  // Bemærk / efter path navnet. Den skal med.
  // Windows brugere, erstat "path" med "d:\\home\\FTPBrugernavn\\db\\"
}
else
{
  echo "Possible file upload attack: filename ", $HTTP_POST_FILES['userfile']['name'];
}
?>

<FORM ENCTYPE="multipart/form-data" ACTION="upload.php" METHOD="POST">
<INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="2000000">
Send this file: <INPUT NAME="userfile" TYPE="file">
<INPUT TYPE="submit" VALUE="Upload">
</FORM>
     
</body></html>

Læs mere på php.net.

Referencer

crossfit

"Team CrossFit Copenhagen takker for støtten fra Azero i vores kamp for at nå til CrossFit Games (VM) i Californien i Juli."

Nikolaj Rønnow

2015-01-19T11:02:53+00:00

Nikolaj Rønnow

crossfit
"Team CrossFit Copenhagen takker for støtten fra Azero i vores kamp for at nå til CrossFit Games (VM) i Californien i Juli."
eyeforimage

Azero has been Eye for Image's ISP from the very beginning. It's reassuring to know that they not only have a great array of products, but that we can always get relevant and timely information from their professional support team, by just picking up the phone and talking to someone.

Matt Coyle, Technical Copywriter / Eye for Image ApS

2015-01-20T03:47:24+00:00

Matt Coyle, Technical Copywriter / Eye for Image ApS

eyeforimage
Azero has been Eye for Image's ISP from the very beginning. It's reassuring to know that they not only have a great array of products, but that we can always get relevant and timely information from their professional support team, by just picking up the phone and talking to someone.

Kontakt Azero

Firmainformationer

AzeroCloud ApS
Nørregade 33
8464 Galten
CVR: 38 70 69 93
VAT: DK38706993

Telefon

Telefon: 38 19 50 17
 

Normal telefontid

Man-Fre: 10:00-12:00