Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> uploadu plików, zabezpiecznie przed uploadem *.php
Cezar708
post
Post #1





Grupa: Zarejestrowani
Postów: 1 116
Pomógł: 119
Dołączył: 10.05.2005
Skąd: Poznań

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


Mam problem

Musze uploadowac pliki, poprzez formularz html, do katalogu, ktory jest dostepny po wpisaniu "z palca" z paska adresu.

Chodzi o to aby haker nie zuploadowal sobie jakiegos pliku w stylu usune_wszystko.php (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) i pozniej go po prostu nie wykonal.

Dodam ze musze uploadowac bardzo duzo typow plikow (nie tylko graficzne) i nie za bardzo wchodzi w rachube filtrowanie ich po MIME.

Jak wy robicie takie zabezpieczenia?... dodajecie header, czy jak?


pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Pedros
post
Post #2





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 17.04.2004
Skąd: Wrocław

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


No niby wystarczyłoby tak zrobić(tylko od drugiej strony... dozwolonych formatów jest mniej (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) )

  1. <?php 
  2. $dozwolone = array(&#092;"gif\",\"jpg\",\"jpeg\",\"png\",\"zip\",\"rar\",\"gz\",\"exe\");
  3. $rozszerzenie = explode( '.', $_FILES[ 'plik' ][ 'name' ] );
  4. $rozszerzenie = array_shift( $rozszerzenie );
  5.  
  6. if( in_array( $rozszerzenie, $zabronione ) )
  7. {
  8.  ....
  9. }
  10. else
  11. {
  12. echo 'Wgrywasz zabroniony typ pliku. Nieładnie :-P';
  13. }
  14. ?>

Pojawia się tylko jeden problem.... W zasadzie można zmienić rozszerzenie pliku i wgrać go na serwer. Nie wiem jak to technicznie wygląda, ale żeby później się nie okazało, że jakaś przeglądarka sprawdzi mime i uruchomi skrypt php... dlatego przydałoby się chyba połączenie tego i sprawdzania mimów, a to nie wiem jak zrobić(i jakie mime mają te rozszerzenia (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) )...
Go to the top of the page
+Quote Post

Posty w temacie
- Cezar708   uploadu plików   5.07.2005, 16:26:18
- - crash   [PHP] pobierz, plaintext <?phpif( substr...   5.07.2005, 16:35:03
- - Cezar708   no dobrze, ale czy czasem nie ma innych plikow wyk...   5.07.2005, 16:47:30
- - NuLL   Można tak [PHP] pobierz, plaintext <?php$_parts...   5.07.2005, 16:50:32
- - crash   Czasem wypadałoby też trochę ruszyć główką [PHP]...   5.07.2005, 16:51:22
- - Cezar708   ochh! Ale ja pytam o przypadku, kiedy NIE WIE...   5.07.2005, 17:04:00
- - Pigula   Cytat(Cezar708 @ 2005-07-05 18:04:00)przeciez...   5.07.2005, 17:18:02
- - dr_bonzo   1. autoryzacja dostepu do formularza uploadu 2. up...   5.07.2005, 17:30:55
- - legorek   Ja to rozwiązałem jeszcze inaczej, w pliku .htacce...   5.07.2005, 17:50:40
- - Cezar708   no to jeszcze raz... 1. Musze uploadowac do katal...   5.07.2005, 17:52:41
- - crash   No to napawdę, sprawdzaj typ MIME, bo poza tym nie...   5.07.2005, 18:06:40
- - hawk   Cytat1. Musze uploadowac do katalogu ktory mozna n...   5.07.2005, 20:31:35
- - Pedros   A jak zrobić coś podobnego...(chodzi dokładniej rz...   23.07.2005, 18:39:07
- - crash   Za pomocą samych typów mime tego nie zrobisz bo zi...   23.07.2005, 18:53:25
- - Pedros   No niby wystarczyłoby tak zrobić(tylko od drugiej ...   24.07.2005, 11:04:26
- - mike_mech   Cytat(Pedros @ 2005-07-24 11:04:26)(...) spra...   24.07.2005, 11:38:15
- - sopel   Cytat(mike_mech @ 2005-07-24 11:38:15)Kiedyś ...   24.07.2005, 14:55:36
- - Pedros   No .... jestem już prawie na ukończeniu. Ale poja...   24.07.2005, 18:10:19
- - sopel   czytaj uwaznie manuala : "array_shift() usuwa...   24.07.2005, 19:04:11
- - Pedros   w takim razie dzięki za pomoc... dla mnie słowo U...   24.07.2005, 19:25:14
- - sopel   Cytat(Pedros @ 2005-07-24 19:25:14)dla mnie s...   24.07.2005, 19:53:10


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

 



RSS Aktualny czas: 9.10.2025 - 09:39