Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] upload, dobre zabezpiecenia.
FireMan
post 21.08.2011, 10:15:55
Post #1





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 4.10.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Witam,
chodzi mi o bezpieczeństwo uploadu.
- zrobiłem sprawdzanie rozszerzenia (tylko .JPG),
- file=>type też sprawdzam,
- ilość kropek w nazwie pliku, gdy jest więcej niż 1, plik nie wgra się,
Co mogę jeszcze dać ?
Sprawdzanie treści pliku i szukanie zmiennych PHP i HTML ?


--------------------
Najlepsze filmiki z sieci
Go to the top of the page
+Quote Post
cycofiasz
post 21.08.2011, 10:26:06
Post #2





Grupa: Zarejestrowani
Postów: 711
Pomógł: 127
Dołączył: 5.07.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


sprawdź rozmiary obrazka w pikselach
Go to the top of the page
+Quote Post
FireMan
post 21.08.2011, 10:27:04
Post #3





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 4.10.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Cytat(cycofiasz @ 21.08.2011, 11:26:06 ) *
sprawdź rozmiary obrazka w pikselach


To znaczy ? Czy obrazek ma 0px 0px ?


--------------------
Najlepsze filmiki z sieci
Go to the top of the page
+Quote Post
lukaskolista
post 21.08.2011, 10:27:29
Post #4





Grupa: Zarejestrowani
Postów: 872
Pomógł: 94
Dołączył: 31.03.2010

Ostrzeżenie: (0%)
-----


jak sprawdzasz typ pliku (JPG)?
Go to the top of the page
+Quote Post
FireMan
post 21.08.2011, 10:31:27
Post #5





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 4.10.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Cytat(lukaskolista @ 21.08.2011, 11:27:29 ) *
jak sprawdzasz typ pliku (JPG)?

Najpierw liczę kropki, jak jest 1, to explode i sprawdzam rozszerzenie czy jest JPG czy JPEG, potem file->type czy jest 'image/jpeg', potem jeszcze rozmiar i inne pierdoły.


--------------------
Najlepsze filmiki z sieci
Go to the top of the page
+Quote Post
cycofiasz
post 21.08.2011, 10:42:34
Post #6





Grupa: Zarejestrowani
Postów: 711
Pomógł: 127
Dołączył: 5.07.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Rozszerzenie pliku nie powinno mieć większego znaczenia. Użyj funkcji http://php.net/manual/en/function.getimagesize.php
Go to the top of the page
+Quote Post
FireMan
post 21.08.2011, 10:50:29
Post #7





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 4.10.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Cytat(cycofiasz @ 21.08.2011, 11:42:34 ) *
Rozszerzenie pliku nie powinno mieć większego znaczenia. Użyj funkcji http://php.net/manual/en/function.getimagesize.php

Dzięki, przyda się. Dodam sprawdzanie Width, Height, i Type. Zależy mi na bezpieczeństwie.

//Edit, przydało się. Teraz zrobiłem, że zdjecia z zwykłym tekstem np. php i html, nie będą wgrywane.

Ten post edytował FireMan 21.08.2011, 11:21:21


--------------------
Najlepsze filmiki z sieci
Go to the top of the page
+Quote Post
uirapuru
post 21.08.2011, 12:41:32
Post #8





Grupa: Zarejestrowani
Postów: 182
Pomógł: 9
Dołączył: 30.04.2005

Ostrzeżenie: (0%)
-----


jak Ci bardzo zależy na wyfiltrowaniu danych, które nie powinny się pojawić w pliku przesłanym, to możesz odczytać plik z $_FILES, przeskalować go bądź obrobić w jakikolwiek inny sposob (a i to niekoniecznie) i zapisać z pomocą biblioteki graficznej do pliku wynikowego. Wtedy masz gwarancję, że nowy plik jest _nowy_, stworzony jedynie na podstawie danych graficznych ze źródłowego smile.gif

Kod
$oImage = imagecreatefromjpeg('plik_wejsciowy.jpg');
imagejpeg($oImage, 'nowy_plik.jpg', $jakosc);

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 12.07.2025 - 13:10