Wpis z mikrobloga

Zabezpieczenie, żeby nikt mi przez formularz wysyłania plików nie zassał pliku np. .PHP zamiast pliku .STL ze złośliwym skryptem: czy wystarczy pobrać ostatnie 4 znaki z nazwy i sprawdzić czy jest to ".STL" wystarczy czy trzeba się jakoś bardziej zabezpieczać?
#php
  • 8
@LuxEtClamabunt: Twoje zabezpieczenie nie jest wystarczające, jest wiele wektorów ataku które atakujący może wykorzystać przy uploadzie plików, samo sprawdzanie rozszerzenia nie jest wystarczające:

https://stackoverflow.com/questions/38509334/full-secure-image-upload-script

powyżej jest trochę opisane, plus trzeba odpowiednio zabezpieczyć od strony serwera żeby uploadowane pliki nie były wykonywalne/interpretowane po uploadzie, albo wogóle trzymać pliki userów niezależnie od kodu app. https://stackoverflow.com/questions/5885643/prevent-execution-of-uploaded-php-files

żeby przejść audyty bezpieczeństwa / pentesty, trzeba też mieć odpowiedni file detector, i skaner antywirusowy podłączony pod upload,
no ale samo zmienienie file extension to 2 sek roboty


@LaylaTichy: ale jak zmieni niby mi ktoś rozszerzenie na serwerze? musiałby mieć dostęp do plików, po swojej stronie może se wszystko wpisywać a serwer i tak wykonuje po swojej stronie i apache jak jest na domyślnych ustawieniach to chyba nie ma prawa nic wykonać?
Szczerze mówiąc nie rozumiem ale zgłębię się w temat
powyżej jest trochę opisane, plus trzeba odpowiednio zabezpieczyć od strony serwera żeby uploadowane pliki nie były wykonywalne/interpretowane po uploadzie, albo wogóle trzymać pliki userów niezależnie od kodu app. https://stackoverflow.com/questions/5885643/prevent-execution-of-uploaded-php-files


@8478e37fa256bd7240fe50b0cbf227d5: ok czyli z tego co rozumiem, tworzę folder na pliki, w nim tworzę plik .htaccess w nim php_flag engine off
a w samym uploadzie stosuję kod z pierwszego linku który waliduje rozszerzenie pliku i to powinno wystarczyć/

Dzięki za pomoc i