Avatar billede mick Nybegynder
26. april 2006 - 09:59 Der er 4 kommentarer og
2 løsninger

Sikkerhedsaskter ved upload via script

Jeg skal lave et lille ASP script som kan uploade nogle filer til serveren. I sig selv ikke noget stort problem. Udfordringen er at det er script-filer der skal uploades (asp, php og cgi). Det siger sig selv at dette enkelt kan udnyttes af folk med mindre ærlige hensigter, og jeg ønsker derfor at finde en løsning som gør det muligt at uploade filen, men ikke have mulighed for at køre den på serveren.

Jeg ser for mig to mulige løsninger:
1) Uploade filen til en mappe som ikke kan nåes fra www. Er dette i det hele taget muligt og vil det være en 100% sikring?

2) Uploade filen og ummidelbart rename den til et navn som brugeren ikke kender. Ikke 100% sikkert men en mulig løsning.

Er der nogen som har andre forslag til hvordan man kan sikre sig imod at brugeren forsøger at køre en fil som han selv har uploaded?
Avatar billede eagleeye Praktikant
26. april 2006 - 10:19 #1
Til 1:
1) Uploade filen til en mappe som ikke kan nåes fra www. Er dette i det hele taget muligt og vil det være en 100% sikring?

Ja det er muligt det kan godt være at det afhænger af ens web-hotel, det vil typisk også være sådan en folder man bruger til ens access databaser så folk ikke kan downloade ens database. Ja det vil være sikkert.


3) Undlad at gemme filer som hedder asp,php,cgi,exe,com,... til efternavn

4) Alternativ gem kun hvis filen hedder jpg,jpeg,gif,png,bmp til efternavn


Nogle upload komponenter har faktisk mulighed for et filter som enten tillader nogle bestemte type eller kun acceptere nogle bestemte typer.
Avatar billede eagleeye Praktikant
26. april 2006 - 10:21 #2
Eneste problem til nr.1 er at hvis du skal vse de billeder som er uplaodet kan man ikke vise dem med et almendeligt link da de ligger uden for wwwroot folderen. Så man skal bruge FSO eller ADODB.Stream til at hente dem
Avatar billede fennec Nybegynder
26. april 2006 - 10:32 #3
Da det er scriptfiler der uploades, kan du bare give dem en ny extension (nyFil.asp.txt). Det er nemlig extension der afgør hvad serveren skal gøre ved filen (afvikle den, starte download...). Hvis du ændre den til txt, bliver filerne ikke afviklet, men bare vist som almindelig txt filer.
Avatar billede mick Nybegynder
22. august 2006 - 18:37 #4
Kom med et svar så får i poengene.
Avatar billede eagleeye Praktikant
22. august 2006 - 19:06 #5
Ok, et svar :)
Avatar billede fennec Nybegynder
23. august 2006 - 09:27 #6
.o) <-- One Eyed Jack
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester