Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Zabezpieczenia listowanie katalogu
Forum PHP.pl > Forum > Przedszkole
phpcodex
Witam. Zastanawiam się czy da się jakoś "wylistować" zawartość katalogu zdalnego? Czy wymaga on jakichś zabezpieczeń?
Na swoim serwerze zrobiłem tak:
  1.  
  2. $iterator = new DirectoryIterator( 'http://jakiś_tam_server.pl/' );
  3. foreach( $iterator as $fileInfo ) {
  4. if( !$fileInfo->IsDot() ) {
  5. echo $fileInfo->getFileName() . "<br>";
  6. }
  7. }
  8.  


Kod zerżnięty praktycznie ze stron dokumentacji - i oczywiście mam listę plików.
Zastanawia mnie czy ktoś inny może zrobić coś takiego z moim serverem ? - to by znaczyło, że weryfikację logowania musiał bym robić w inny sposób, niedostępny dla zewnętrznych userów ... jak to jest. edycja .htaccess niewiele tutaj pomoże chyba - jak to jest ?
vokiel
To listowanie, które pokazałeś listuje pliki na serwerze na którym jest uruchomione. Serwer zewnętrzny przecież nie udostępnia plików do gmerania w nich. To byłoby przecież podstawowe naruszenie bezpieczeństwa jakby każdy z netu mógł sobie przeglądać pliki źródłowe.
phpcodex
No tak vokiel mam nadzieję, że jest tak jak napisałeś "Serwer zewnętrzny przecież nie udostępnia plików do gmerania w nich". Zastanawiam się tylko czy można na tym "nie udostępnianiu" całym polegać, czy trzeba o to dodatkowo we własnym zakresie zadbać. Ewentualne niedopatrzenie w tym punkcie oznaczało by że całe kombinacje z haszowaniem haseł etc mogę sb wsadzić .... dla tego pytam czy nie istnieje jakiś knif żeby to odczytać z zewnątrz ... hmm questionmark.gif
dublinka
Czytanie plikow czy zawartosci katalogow z zewnetrznego serwera byloby lamaniem podstawowych zasad bezpieczenstwa.

Inaczej mozna by bylo zczytac kazdy plik po kolei i go pootwierac zagladajac do srodka.
gino
Dalej nie rozumiesz, więc może po kolei i na spokojnie.
Setki milionów aktywnych stron działają i mają się dobrze. O bezpieczeństwo witryn dbają serwery WWW, interpretery językowe, bazodanowe itd. Twój host (serwer) jest Twój, zabezpieczony hasłem i user-em, skrypty, które tam umieszczasz są tylko do odczytu przez innych, mają prawa użytkowników www.
Co można:
- zobaczyć skrypty js, czyli wpisanie z palca http://www.stronamoja.pl/kod.js wyświetli całość kodu w tym pliku.
- zobaczyć co jest w pliku tekstowym (jeśli nie jest zabezpieczony inaczej)
- no i oczywiście kod html-a.
- włamać się na serwer a wtedy to już wszystko jest do zrobienia

Nie można zobaczyć plików asp, php itp. W momencie wpisania adresu do tych plików kod, który jest w nich wykona się i zobaczysz efekt jego działania.
Co do listowania plików. To tylko wypisanie nazw, nie można z nimi nic zrobić, ale jest to ważna informacja do ewentualnego ataku (to rozległy temat i nie na ten post). Nikt inny, prócz Ciebie (na ta chwilę) nie może swoim kodem umieszczonym na innym serwerze wylistować Twoich plików ani tym bardziej zobaczyć oryginalny kod w nim zawarty.
Zasady bezpieczeństwa o których pisali poprzednicy leżą u podstaw tych narzędzi i nie można ich w tak prosty sposób złamać.
phpcodex
Dzięki gino. Elegancko to wyjaśniłeś. Na tym etapie budowy serwisu w zupełności mi to wystarczy.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.