Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Udostepnianie plikow do includowania
Forum PHP.pl > Forum > PHP
Azek
Na wstepie przeprasza, ale nie mam polskiej klawiatury.
Mam nastpujacy problem: czy jest mozliwe podejrzenie zrodla pliku udostepnionego do includowania? Chodzi o to, ze ja udostepniam plik, np: www.mojastrona.pl/plik_do_includowania.php i ktos to sobie includuje:
  1. include("www.mojastrona.pl/plik_do_includowania.php");

Czy on w jakis sposob moze poznac tresc tego pliku?
Adrian77
Źródła plików php może zobaczyć tylko ten, kto ma dostęp do serwera ftp, na którym te pliki się znajdują.
maly_swd
Mozna przez FTP itp.

Przez "www" nie mozna podejzec (bez modyfikacji serwera) tzn po "includowaniu" takiego pliku zobaczysz efekt jego dzialania a nie kod.
Yorki
Cytat(Azek @ 11.09.2012, 19:09:28 ) *
Na wstepie przeprasza, ale nie mam polskiej klawiatury.
Mam nastpujacy problem: czy jest mozliwe podejrzenie zrodla pliku udostepnionego do includowania? Chodzi o to, ze ja udostepniam plik, np: www.mojastrona.pl/plik_do_includowania.php i ktos to sobie includuje:
  1. include("www.mojastrona.pl/plik_do_includowania.php");

Czy on w jakis sposob moze poznac tresc tego pliku?


To zależy czy kod tego pliku może ujrzeć światło dzienne wink.gif
Wykonywanie plików *.php możesz obejść zmieniając rozszerzenie tego pliku na inne. Np.
  1. include 'test.my_ext';

Jeśli w pliku umieścisz kod w tagach php to kompilator automatycznie potraktuje to jako kod php.

Minusem tego rozwiązania jest fakt, że kod będą widzieć wszyscy.
tehaha
normalnie nie da się tego zrobić, ponieważ serwer wykona kod php zawarty w pliku i pokaże tylko wynik skryptu. Możesz natomiast dodać plik .htaccess, który sprawi, że plik .php będzie traktowany jak tekstowy i wyświetli się w przeglądarce, aczkolwiek wtedy nie będzie można go wczytać funkcją include() czy require() tylko pewnie trzeba by użyć eval(). Można by też zmienić ustawienie w php.ini -> allow_url_include i powinno się wtedy dać go include'ować jako plik php. Generalnie wszystkie te opcje to bardzo zły pomysł i stworzyły by potencjalne dziury bezpieczeństwa. Do wymiany danych między serwerami wystawia się jakieś API z autoryzacją. Jeżeli to nie są jakieś poufne dane to możesz je wyświetlić w przeglądarce np. w formacie JSON, wtedy łatwo je będzie przeparsować.
Azek
Cytat(Yorki @ 11.09.2012, 22:40:44 ) *
To zależy czy kod tego pliku może ujrzeć światło dzienne wink.gif
Wykonywanie plików *.php możesz obejść zmieniając rozszerzenie tego pliku na inne. Np.
  1. include 'test.my_ext';


Kod nie może ujrzeć światła dziennego :-) Więc udostępniam tylko API.
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.