Panelen



Forumnavigering
Senast inloggade
RSS
Sponsorer

Forum > Övrigt > Övrigt

Lista på säkra filtyper

Shadi
Shadi

Gradering

#20484

Tjenare,

Jag håller på att skapa en array med olika filtyper som det är tillåtet att ladda upp. Jag lägger tyngd på textdokument, bilder och lite annat som ligger i närheten. T.ex. så vill jag tillåta majoriteten av Microsoft Office filerna, komprimmerade filer samt alla OpenDocument filerna.

Jag har hittills skapat följande array:

<?php
private $safeFileExt = array(
        'doc','docx','docm','dotx','dotm','cnv','asd','svd','wbk','wll','mcw', //MS Word
        'xlx','xlsx','xlsm','xltx','xlsm','xlsb', 'xlam','xar','xl','xla','xlb','xlc','xll','xlt','xltm','xlw','csv', //MS Excel
        'pptx','pptm','potx','potm','ppam','ppsx','ppsm','sldx','sldm','thmx','pa','pip','ppa','ppam','ppx','ppt','pps', //MS Power Point
        'accdb','accde','accde','accdt','accdr','accda','accdp','accdr','accdu','sldx','sldm','thmx','ade','adp','maf','mam','maq','mar','mat','mda','mdb','mde','mdt','mdw', //MS Access
        'grv', //Groove
        'mpp', 'mpt', //MS Projectplan
        'iaf','msg','oab','obi','oft','ost','prf','pst','rpmsg','vcf','dbx', //MS Outlook
        'pub','puz', //MS Publisher
        'xsf','xsn', //MS InfoPath
        'odt','ods','odp','odb','odg','odf','ott','odm','txt','rtf','xml','odif','openbsd','ort','rtfd','rtx','rt', //OpenDocument
        'pages','numbers','knt','mw', //Pages, Numbers, KeyNote, MacWrite
        'wpd','wp4','wp5','wp6','wp7','wpt','wps','wks','wpt','wrd','wrd','wri','abw','cwk','egt', //Word Perfect, MS Works, WordIt, ThinkFree, MS Write, AbiWord, Claris Works, EGT Universal Document
        'lwp','nb','nbp','sdw','sdm','stw','sxw','pap','uof','qpx','qxd', //Lotus, Mathematica, Staroffice/Openoffice/NeoOffice, Papyrus, Uniform Office Format, QuarkXPress
        'act','lbt','ans','asc','ascii','bean','boc','bna','kwd','latex','lit','log', //FoxPro, ANSI text, Bean Richtext, EasyWord, Barna Word, KeyWord, LaTeX, eBook, log
        'lst','lyx','me','mwd','nwctxt', //Data list, Lyx, Readme, MarinerWrite, NoteWorthy Composer

        'jis','jp1', //Japanese text files
        'pdf','pda','pdax', //Adobe
        'zip','rar','7zip','7z','uzip','deb','gz','sit','sitx','tar.gz','zipx', //Compressed
        'jpg','jpeg','gif','png','bmp' //Images
        );
?>

Känn er fria att ta del av den. Jag skulle även vara tacksam ifall ni skriver om:

  • Ni hittar en fil i listan som kan vara skadlig
  • Ni kommer på en fil som bör vara med i listan.

//Shadi

Administratör på AspKoll.se!
Taggar: filtyp,
Redigerades av Shadi den 15 december 2010. Läs tidigare inlägg.
ID: #20484 | Skapades: 2010-12-15 11:22:09 | Tråden har 3 svar och har lästs 536 gånger.

Timmie
Timmie

Gradering

#20489

Nu vet jag inte vad du ska ha det till eller om du bara ville dela med dig. Men det borde gå att göra detta på ett säkrare sätt, räcker ju med att man byter filändelse när man laddar upp sågår filen igenom.

tif kan vara bra att lägga till för Mac användare.

ID: #20489 | Skapades: 2010-12-15 14:43:37

Shadi
Shadi

Gradering

#20490

Både och Timmie =)

Det jag vill göra är att först och främst endast tillåta vad jag kallar för "arbetsdokument", t.ex. textfiler av olika slag, kalkylfiler, presentationer och bilder. När det gäller säkerhetspunkten du nämnde så har du rätt, det har jag inte tänkt på. Hur skulle du lösa det problemet?

Kan tillägga att dessa filer inte exekveras på något sätt på servern (vad jag vet), utan det som händer är att jag triggar en nedladdning av filen.

Administratör på AspKoll.se!
Redigerades av Shadi den 15 december 2010. Läs tidigare inlägg.
ID: #20490 | Skapades: 2010-12-15 15:15:45

Var ute efter liknande funktion för att kontrollera mime-type för en fil, i mitt fall för att kontrollera
att endast pdf filer kan laddas upp.

Hittade denna funktion,
http://www.php.net/manual/en/functi....finfo-file.php

Här är en artikel som visar hur man använder funktionen.
http://www.sanisoft.com/blog/2010/0...file-mime-type/

Vill du bara ha ut mime-type så använd constant: FILEINFO_MIME_TYPE istället för FILEINFO_MIME

Du måste ha PHP 5.3 och extension php_fileinfo aktiverat i php.ini.

Kan man inte läsa och förstå min kod, kan man inte programmera - Christher Lenander
Redigerades av chrillemeter den 3 januari 2011. Läs tidigare inlägg.
Redigerades av chrillemeter den 3 januari 2011. Läs tidigare inlägg.
ID: #20551 | Skapades: 2011-01-03 03:46:24
© Copyright 2007-2009 Shadi Domat | Version 3.0 | Sidkarta | Policy