![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 65 Pomógł: 0 Dołączył: 2.07.2005 Ostrzeżenie: (30%) ![]() ![]() |
Mam server na Windows XP Professional SP2, system plików FAT32, wersja php 4.3.11, wersja apache 1.* (niepamiętam ile).
Server jest dla sieci lokalnej, safe_mode = On, register_globals = Off. Skrypt rmdir('c:/windows'); zwraca Permissions Denied, ale np. unlink('c:/windows/jakiś_plik_systemowy'); już nie. Łatwo mi rozwalić komp. Da sie to jakoś zabezpieczyć (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? (Chciałbym tak, żeby skrypty nie mogły operować na plikach, które znajdują się wyżej niż katalog domowy użytkownika) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 1 717 Pomógł: 0 Dołączył: 12.06.2002 Skąd: Wolsztyn..... Studia: Zielona Góra Ostrzeżenie: (0%) ![]() ![]() |
No niestety z tego co mi wiadomo nie da sie zrobic tego na tyle fajnie, ze ustawisz sobie UserDir w apachu, a sciezki do open_basedir sie same poustawiaja automatycznie, wiec trzeba kazdemu userowi zrobic vhosta, cos na ten wzor:
Kod <VirtualHost *> DocumentRoot c:\usr\krasnal\www\ibp php_admin_value open_basedir c:\usr\krasnal\www\ibp [...inne opcje VH...] </VirtualHost> <VirtualHost *> DocumentRoot c:\usr\krasnal\www\inny_user php_admin_value open_basedir c:\usr\krasnal\www\inny_user [...inne opcje VH...] </VirtualHost> itd.. dla reszty uzytkownikow. Takie cos napewno zadziala, bo kiedys tak komus udostepnialem konto w akademiku i tez nie chcialem, zeby za bardzo sobie szalal. Nie pamietam w tej chwili, ale jestem prawie pewien, ze mimo tego open_basedir'a uzytkownik bedzie mogl sobie odpalic zewnetrzny program i z niego namieszac.. np. exec("del C:\\Windows\\jakis_plik"); dlatego dobrym pomyslem bedzie tez wylaczenie wszytkich funkcji umozliwiajacych odpalanie zewnetrznych procesow. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 22:03 |