![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 145 Pomógł: 18 Dołączył: 11.11.2008 Skąd: Pwo Ostrzeżenie: (0%) ![]() ![]() |
Witam,
przeczytałem trochę o zabezpieczeniu uploadu przed skryptami/atakami, ale nie jestem pewien, które wybrać. Pytam więc Was, jakie skuteczne zabezpieczenia stosujecie? Wywnioskowałem, że najpopularniejsze sposoby to użycie getimagesize, ale jestem ciekawe Waszych opinii. Pozdrawiam. Proszę o pomoc. Ten post edytował iVorIus 13.07.2010, 13:45:50 -------------------- Chcieć to móc, lecz trudnością jest chcieć, nie móc.
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Aktualnie najlepszym zabezpieczeniem jeżeli chodzi o wykrywanie typu pliku to http://pl.php.net/manual/pl/book.fileinfo.php
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 389 Pomógł: 69 Dołączył: 26.04.2010 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
http://mijagi.vot.pl/index.php/2009/08/bez...-uploadu-w-php/
Mysle ze pod tym linkiem, temat jest dosc powaznie rozkminiony ![]() EDIT: No bez kitu, drugi raz (na dwa) zostalem uprzedzony o sekundy, a temat wisial bez odpowiedzi chyba z 20min ![]() Chyba zaczne grac w te szachy...a co! Ten post edytował kapuch 13.07.2010, 21:34:29 -------------------- Nie chce "Pomógł", aktualna ilość (69) w pełni mnie satysfakcjonuje :)
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Mysle ze pod tym linkiem, temat jest dosc powaznie rozkminiony ![]() Na pewno został w nim źle omówiony właśnie temat MIMETYPE ![]() -------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 389 Pomógł: 69 Dołączył: 26.04.2010 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Na pewno został w nim źle omówiony właśnie temat MIMETYPE ![]() Tam twierdza, ze latwo to nadpisac (ale uzywac warto), ja tam sie nie znam na hakierowaniu, wiec nie wiem ![]() Tak czy siak, nie bylo Twojego postu, dlatego dalem ten link - jak zwykle drugi ![]() Ten post edytował kapuch 13.07.2010, 21:41:20 -------------------- Nie chce "Pomógł", aktualna ilość (69) w pełni mnie satysfakcjonuje :)
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 2 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
MIMETYPE samo nic nieda najwazniejsze to kontrola rozszerzenia pliku zalezy tez co uploadujesz czy same obrazy czy all, getimagesize() nie jest najbezpiczniejsze da sie oszukac... jezli ktos ma jakies ale to zapraszam na bloga speca :] http://gynvael.coldwind.pl/?id=219
Co do obrazow to chyba najbezpieczniej jest tworzenie nowego obrazu w przeskalowaniu o 1% co powinno wymieszac kod php tak zeby nam sie do includa niezdal... |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
MIMETYPE samo nic nieda najwazniejsze to kontrola rozszerzenia pliku Że co? -------------------- |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 2 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
translate: "sprawdzenie samego mimetype nic nie da... najważniejsze to dokładnie pilnować rozszerzenia pliku jaki jest wgrywany na serwer"
![]() |
|
|
![]()
Post
#9
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Raczej odwrotnie. Jak narazie fileinfo mnie nie zawiódł i po dokładniejszej lekturze twojego linku przestudiuje to co jest tam podane.
-------------------- |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 2 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
Właśnie zabezpieczenia w php to dość drażliwy problem bo jak się nie znajdzie błąd w samym języku to jakieś nie domówienie w specyfikacji języka o czym możemy dość sporo wyczytać na blogu który podałem. I tu mamy małego zonka bo żeby coś bezpiecznego zrobić to naprawdę wiele trzeba się naczytać przykładowo wiele osób listujących katalogi lub robiących skrypty pobierające pliki zabezpieczenia się przed zejściem katalog niżej a zapominają o streamach data, file itd.
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 145 Pomógł: 18 Dołączył: 11.11.2008 Skąd: Pwo Ostrzeżenie: (0%) ![]() ![]() |
Z fileinfo na razie nie mogę korzystać, bo php jest jeszcze w wersji 5.2
Upload tylko obrazków. Jaką sprawdzoną metodę wybrać? -------------------- Chcieć to móc, lecz trudnością jest chcieć, nie móc.
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Mam podobny problem, fileinfo nie jest obsługiwane na serwerze, na którym muszę pracować. Nic nie dało też sprawdzanie typu mime pliku za pomocą poleceń systemowych, np. exec('file -bi nazwa'); itd. dlatego, że np. nowsze formaty plików office, jako że posiadają skompresowane dane (?) są rozpoznawane jako typ zip. Dodatkowo też występują różnice w niektórych nazwach typów mime na różnych serwerach, w zależności od wersji i rodzaju zainstalowanego systemu operacyjnego (sytuacja sprawdzona). Czy zostaje tylko jakiś flashowy uploader np. uploadify? Z drugiej strony - odpowiedni mechanizm weryfikacji przesyłanych plików pod różnym kątem też trzeba jakoś obsłużyć w php. Czy jedynym skutecznym rozwiązaniem jest faktycznie tylko fileinfo?
-------------------- Nie pomagam na pw, tylko forum.
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 2 Dołączył: 24.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
zalezy co chcesz robic bo jezeli nie sa to obrazy a chcesz te pliki pobierac to dobrze jest przydzielic wlasna nazwe tamta ktora byla podana przefiltrowac i zapisac w bazie i podczas pobierania pliku ustawic zeby wstawialo wczesniejsza nazwe... lub zwykla kontrola rozszerzenia tylko musicie pamietac zeby sprawdzic dlugosc nazwy i jak sprawdzanie rozszerzenie to brac ostatnie .txt a nie losowo bo dosc duzo skrypto sie na tym wyklada wtedy wystarczy zrobic plik.txt.php sprawdzcie tez czy koles nie zmienia czasem katalogow. widzialem tez ze ludzie bawia sie nieraz w htaccess i wylaczaja dzialanie plikow php dla wybranych katalogow
|
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 2 885 Pomógł: 463 Dołączył: 3.10.2009 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
zalezy co chcesz robic bo jezeli nie sa to obrazy a chcesz te pliki pobierac to dobrze jest przydzielic wlasna nazwe tamta ktora byla podana przefiltrowac i zapisac w bazie i podczas pobierania pliku ustawic zeby wstawialo wczesniejsza nazwe... lub zwykla kontrola rozszerzenia tylko musicie pamietac zeby sprawdzic dlugosc nazwy i jak sprawdzanie rozszerzenie to brac ostatnie .txt a nie losowo bo dosc duzo skrypto sie na tym wyklada wtedy wystarczy zrobic plik.txt.php sprawdzcie tez czy koles nie zmienia czasem katalogow. widzialem tez ze ludzie bawia sie nieraz w htaccess i wylaczaja dzialanie plikow php dla wybranych katalogow Wydaje mi się, że to jest jasne, sam robię podobnie, z tym, że jeszcze oprócz filtrowania nazwy (wywalam polskie diakrytyki, zamieniam spacje na podkreślniki itp.) zmieniam też nazwę pliku na ustaloną w ogólnym formacie (dodaję na początku id z bazy+podkreślnik), aby uniknąć przypadkowego nadpisania plików o tej samej nazwie. Do spr. rozszerzenia pliku używam funkcji pathinfo, więc sztuczki typu nazwa_pliku.test.txt.tar.gz.php nie przejdą. -------------------- Nie pomagam na pw, tylko forum.
|
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 145 Pomógł: 18 Dołączył: 11.11.2008 Skąd: Pwo Ostrzeżenie: (0%) ![]() ![]() |
Okej, ostatnie 2 konkretne pytania:
1. W jaki sposób sprawdzić typ pliku nie mając do dyspozycji fileinfo ? 2. Jak zabezpieczyć upload, do wgrywania tylko obrazów (jpeg, png, gif) ? -------------------- Chcieć to móc, lecz trudnością jest chcieć, nie móc.
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 05:33 |