Zobacz pełną wersję : Joomla explorer, apache i dziura ???
Hej Hej,
pisze bo wlasnie zaczalem sie zastanawiac nad jednym problem i nijak nie moge zrozumiec dlaczego tak jest. Moze na przykldzie gdzy bedzie prosciej:
jest sobie katalog a w nim podkatalogi w ktorych znajduja sie site'y z joomla, np.
/data/website_01
/data/website_02
/data/website_03
serwowane sa one przez apache'a ktory ma ustawione virtual hosty z dyrektowa:
DocumentRoot /data/webiste_0x
apache pracuje na uzytkowniku, ktory ma prawa pisania do katalogow /data/website_0x (w koncu trzeba miec mozliwosci uploadu danych).
Na jednym z site'ow zainstalowany jest joomla explorer (powiedzmy website_01) i tu ciekawostka (przynajmniej jak dla mnie). Joomla Explorer ma prawo wgladu do katalgu nadrzednego site'u z ktorego zostal uruchomiony, czyli do /data a co z tym sie wiaze do zawartosci katalogow rowniez website_02 i website_03.
W prosty sposob mozna temu zaradzic poprzez zagniezdzenie katalogow:
/data/chroot01/website_01
/data/chroot02/website_02
/data/chroot03/website_03
wowczas wychodzimy tylko o jeden katalog w gore i juz nie widzimy innych katalogow (website02 i website03).
Uf mam nadzieje ze w miare jasno zarysowalem problem i jest on dla was zrozumialy.
Ja natomiast zastanawiam sie nad kilkoma rzeczami:
- jakim cudem apache pozwolil na wyjscie do katalogu nadrzednego przy pomocy joomla explorer
- jesli mozna wyjsc do katalogu nadrzednego to moze uda sie wyjsc jeszcze kilka poziomow wyzej (w sumie jeszcze nie wiem jak to obejsc ale wlasnie sprawdzam ;)
moze macie jakies pomysly dlaczego tak sie dzieje i dlaczego taka operacja jest mozliwa. Ja troche googlowalem ale nic ciekawego nie znalazlem.
pozdr i z gory dzieki za odpowiedz
m.
jak dodatek podam ze konfiguracja apache jest domyslnie na:
<Directory />
Options none
Order deny,allow
Deny from all
AllowOverride None
</Directory>
i pozniej na poszczegolne katalogi
<Directory /data/website_0x/>
Order Deny,Allow
Allow from All
Options None
AllowOverride None
</Directory>
ciekawe, szkoda, że się na serwerach za bardzo nie znam, ale gdzieś mi się obiło o uszy, że JoomlaExplorer udaje usera "appache" i ma w nosie ograniczenia, tylko czemu dodatkowe zagnieżdżenie rozwiązuje sprawę ?
Mam pytanie, jakie uprawnienia mają katalogi /data/chroot0x ? (w tym UID/GDI) i w jaki sposób zakładasz poszczególne katalogi (ftp, shell, www) ?
Bo teoretycznie Joomla Explorer powinien móc "łazić" po całym katalogu i podkatalogach przeznaczonych na www. Co oczywiście niekoniecznie jest dobre. W każdym razie sprawa jest interesująca i być może przydatna dla bezpieczeństwa niektórych serwisów.
Pozdrawiam
frico
Frico:
prawa na katalogach /data/chroot0x sa takie na jakich pracuje apache i by moc pisac w tym katalogu (apache, www, nobody, whatever), wiec teoreycznie mozna tam pisac.
z tego co zawyazlem joomlaXplorer wychodzi tylko do katalogu nadrzednego i nie ma mozliwosci wyjscia wyzej z jej poziomu.
z tego sparwdzilem majac ustawione dyerktywy w apache ze wszystko od / jest blokowane i nie mozna tych danych przegladac, to dyerktywy Order deny,allow i pozniej Allow from All wlasnie odblokowywuje ci mozliwosci przegladania katalogow podrzednych.
w golym apache te dyerktywy zabezpieczaja ci wlasnie mozliwosci przegadania katalogow zagniezdzonych do tych ktore chcesz przegladac. po prostu na samym apache to dziala i nie ma zadnych przeslanek by nie stosowac tego typu mechanizmu.
Co do joomlaXplorer, to wlasnie nie wiem w jaki sposob joomlaXplorer ma mozlisoci wyjscia o ten wlasnie jeden katalog wyzej, co w przypadku umieszania wielu site'ow w jednym katalagu moze spowodowac iz mamy prawa do zapisu w katalogach ktore do nas nie naleza (w tym przypadku tracimy nawet uzytkownika i haslo do bazy, co moze spowodowac iz osoba nieuprawniona dobierze sie do naszych danych).
na razie jeszcze nie jest gotowy by debugowac kod componentu ale powoli sie do tego zbieram ;)
Rybik:
jesli chodzi o uzytkownika o ktorym mowisz to joomlaXplorer pod nikogo sie nie podszywa tylko po praostu pracuje na uzytkowniku i w pelni pracuje zgodnie z prawami ktore ma ten uzytkownik. wszystko jest w jak najlepszym porzadku z tym jednak szczegolem iz sam apache nie powienien pozwolic na wyjscie do katalogu nadrzednego.
Zaznaczam ze ne mam tu zadnych dyrektyw followsymlink ustawionych i mozliwosci wypuszczenia w jakis sposob apache do katalogu nadrzednego. Jak juz pisalem wyzej, goly apache dziala jak trzeba.
btw. jestes tu adminem, nie znasz jakis guru na tym forum co maja w jednym paluszki wszystkie myki odnosnie joomli.
pozdr
m.
ps. jak bede mial chwile to potestuje ten sam komponet na innych wersjach joomli i moze jeszcze na mambo. Ale do tego to chyba musze urlop sobie wziac.
Mpalyga, bierz urlop i testuj :D Bo wątek ciekawy.
Swoją drogą to, co napisałeś do Rybika to nie dokońca tak. Bo w końcu joomlaXplorer chodzi jako nobody, a moje rzeczy jako user. Przynajmniej u mnie. I tak było od pierwszego wydania.
Oczywiście, należy wziąść pod uwagę ustawienia samego serwera. Niestety hostując serwisy u usługodawcy nie można sobie w tym "pogrzebać" i raczej jest się skazanym na odgórne ustawienia.
Na starej instalacji (mambo + mamboxplorer) dało się wejść w każdy podkatalog katalogu ustawionego jako DocumentRoot apacha.
Pozdrawiam
frico
Frico,
no niezupelnie jest tak jak mowisz... apache dziala w taki sposob iz podajasze w dykerktywach user i group uzytkownika na ktorym chcesz by dzialal (np. www. nobody). apache po wystarowaniu uruchamia proces na uzytkowniku root (ten proces zajmuje sie nadzorem nad procesami potomnymi i nie przyjmuje zadnych requestow), a ten z kolei forkuje na uzytkowniku i grupie zdefiniowanych w konfiguracji apache (te procesy przyjmuja zgloszenia do apache i serwuja odpowiednie pliki).
inna bajka jest suexec ktory pozwala na w jakis sposob uruchamianie skryptow na danycm uzytkowniku zdefiniowanym w konfiguracji suexec (jak dokladnie to dziala, ale sie z doktoryzuje jak mi bedzie potrzebne)
ale to tak poza temtem tematem bylo ....
wracajac jednak do watku ....
z tego co jeszcze wczoraj posnifalem ... to:
- sam apache dziala poprawnie i nie ma mozliwosci wyjscia powyzej katalogu zdefiniwanego w dyrektywie RootDirectory (i tu jest tak jak mowiles, apache umozliwia takie operacje, natomiast wyjscie powyzej root directory jest niemozliwe - pomjajac oczywiscie jak juz pisalem symlinki i takie tam)
- jesli apache dziala z php to chyba wlasnie php umozliwia w jakis blizej niezdefiniowany sposob wyjscie na katalog powyzej zdefiniowanego w RootDirectory w apache.
Wiec wg mnie problem jest z php i samym joomlaXplorer, ktory zostal napisany wlasnie w taki sposob by omijaj dyrektywy apache. Jak znajde jakies rowiazanie to poinformuje tu n forum.
a i jeszcze pewnie mi zostanie napisanie do tworcow joomlaXplorer z pytaniem jaki mieli cel by tak wlasnie napisac ten komponet.
m.
ps. urlopu to pewnie nie dostane ale w weekend zamiast raczyc sie browarem to pewnie sieade i bede kombinowal co tu zrobic by takich dziury wyeliminowac ...
nie ma wszystkowiedzacych, joomla i komponenty to lata pracy sporej liczby ludzi (tez bym czasem chcial wiedziec wszystko :) )
Wystarczy ograniczyć PHP aby nie wychodziło poza DocumentRoot i JoomlaXplorer będzie pokazywał tylko co powinien.
Przykład konfiguracji :
<VirtualHost website_01:80>
...
DocumentRoot /data/website_01
php_admin_value open_basedir /data/website_01
...
</VirtualHost>
Witam
wątek widzę nieużywany od dawna, ale sporo tu treści które mnie interesują.
Jakoś wcześniej nie korzystałem za bardzo z joomlaexplorera i dzisiaj zdębiałem gdy po jego zainstalowaniu wyszedłem przy pomocy tego komponentu z własnego konta domenowego i mogłem poprzegladać zawartość innych domen na resselerze Provider 30+
Wspominane tu jest że to apache i specyfika JoomlaExplorer ale jeśli serwery.pl reklamują Providera jako rozwiązanie do samodzielnego hostingu a tu wystarczy zainstalowana joomla z tym komponentem i wchodze gdzie mi się podoba to nie czuję się już tu bezpiecznie.
Czy ktoś drążył temat wychodzenia do katalogów (a nawet domen) nadrzędnych przy pomocy JoomlaExplorera?
Bartek_F
30-07-2008, 19:07
Pytanie tez czy w J Explorer albo Extplorer mozna gdziekolwiek przypisac "katalog domowy" tak zeby sam komponent sobie ograniczyl to wychodzenie powyzej?
robertsza
28-11-2008, 20:09
Mam pytanie, jakie uprawnienia mają katalogi /data/chroot0x ? (w tym UID/GDI) i w jaki sposób zakładasz poszczególne katalogi (ftp, shell, www) ?
Bo teoretycznie Joomla Explorer powinien móc "łazić" po całym katalogu i podkatalogach przeznaczonych na www. Co oczywiście niekoniecznie jest dobre. W każdym razie sprawa jest interesująca i być może przydatna dla bezpieczeństwa niektórych serwisów.
Pozdrawiam
frico
ja mam podobny problem tylko serwer win2k3 i iis
xplorer włazi mi do katalogu nadrzędnego joomli i widzie wszystkie strony pomimo tego że na iiesie mam ustawiony katalog docelowy
jak to zablokować
pomocy
Na home.pl joomlaexplorer w ogóle nie chce działać.
I to pewnie dlatego, że chce wejść na wyższy poziom.
Co do tego nie ulega wątpliwości, że komponent na źle skonfigurowanych serwerach włazi na poziom wyżej w hierarchii katalogów. No to robi się z niego prawdziwie hakerskie narzędzie. Administrator serwera zawsze może np subdomeny zagnieżdzać w 2 poziomie podkatalogu czyli /user1/user1/.
robertsza
10-12-2008, 01:32
ale jak to zablokowac na iiesie w win2k3
bo na linuxie problemu niema
Zrób subdomeny w podwójnie zagnieżdżonych katalogach.
a wirtualki aby nie wychodziły poza DocumentRoot.
zwiastun
10-12-2008, 04:28
A nie mądrzej zrezygnować z tego komponentu? Do czego on Wam jest potrzebny? Jeśli do rozwiązania problemów z PHP w bezpiecznym trybie, to może
a) lepiej zmienić serwer, bo bezpieczny tryb jest "bezpieczny", ale z nazwy przede wszystkim - warto zajrzeć i zobaczyć, cona ten temat piszą projektanci PHP)
b) namówić admina, żeby "wybierał" ( :) ) , co woli - niebezpieczny komponent czy "niebezpieczny tryb".
Rozumiem, że drugie raczej w rachubę nie wchodzi, ale kto wie...
robertsza
10-12-2008, 08:55
A nie mądrzej zrezygnować z tego komponentu? Do czego on Wam jest potrzebny? Jeśli do rozwiązania problemów z PHP w bezpiecznym trybie, to może
a) lepiej zmienić serwer, bo bezpieczny tryb jest "bezpieczny", ale z nazwy przede wszystkim - warto zajrzeć i zobaczyć, cona ten temat piszą projektanci PHP)
b) namówić admina, żeby "wybierał" ( :) ) , co woli - niebezpieczny komponent czy "niebezpieczny tryb".
Rozumiem, że drugie raczej w rachubę nie wchodzi, ale kto wie...
WItam
ja go osobiście nie używam ale klienci mi go instalują sami razem z joomlą a tego upilnować nie mogę,
to może jest sposób żeby go zainstalować się nie dało albo żeby wcale nie działał
zwiastun
10-12-2008, 10:49
No to wytłumaczyć klientom, że otwierają tylne drzwi do witryny i na serwer. Przecież durniami nie są, żeby nie zrozumieć!
vBulletin® v4.2.5, Prawa przedruku © 2024 vBulletin Solutions, Inc. Wszystkie prawa zastrzeżone.
Tłumaczenie: Polskie Centrum Joomla!