[ PavleBgd @ 25.05.2004. 13:07 ] @
Pretrazio sam sve na forumu sto ima veze sa komandom "chmod".
Nisam nasao resenje za ovaj problem. Ali ako je neko pisao vec o tome
primite moje izvinjenje.

Na veratu imam www dir, u njemu imam dir "skripte" i fajl baza.php.
Baza.php u sebi sadrzi komande za povezivanje na bazu (mysql_connect())
kao i stringove sa parametrima povezivanja, kao sto je username i
password. Ako bi se neko docepao tog fajla mogao bi da
obrise pola baze ili da pomesa redove u nekoj tabeli zabave radi!

Skriptu baza.php koriste ostale skripte koje postoje u www diru,
negde oko 35 skripti. Nigde se ovaj fajl ne poziva direktno sa
prezentacije vec samo posredno (uz include statement) iz skripti
koje koriste pristup bazi.

E sada ja sam u wincommanderu promenio dozvolu od direktorijuma
"skripte" sa 755 na 711, kao i sve fajlove u tom
direktorijumu sa 644 na 711.

Kada ukucam u browser npr "www.mojsajt.com/skripte", u browseru
se ispise "403 forbidden".

Medjutim kada upisem "www.mojsajt.com/skripte/baza.php"
pojavi se samo prazan prozor, i kada pogledam u
source strane vidim da se php fajl izvrsio, sto znaci da bilo ko
moze da mu pristupi.

Onda sam probao sa chmod 700 i 600 na diru i skripti baza.php
ali u tom slucaju dobijao bih errore kada druge
php skripte pokusavaju da se povezu na bazu.

Da li moze nekako da se ogranici obicnom korisniku da pristupa tim
osetljivim fajlovima, a da sa druge strane se php fajlovi iz
www direktorijuma mogu normalno da se
izvrsavaju, vrse upite u bazi, itd.

Koji chmod je najpouzdaniji da treba da se koristi na ovako osetljivim
fajlovima i direktorijumima u www direktorijumu?

Mozda sam i samo previse oprezan?

Pozdrav
Pavle
[ zoidberg @ 25.05.2004. 13:41 ] @
Pa nema veze sto svako moze da otvori example.org/baza.php I tako se ne
moze prikazati sadrzaj tog PHP dokumenta nego samo rezultati izvrsenja.
Jedino da ti zablokira php na serveru pa da ti neko tada pokupi sifru za
mysql a opet sta ce s njom kad toj bazi mozes pristupati samo sa localhosta.

Ako si bas paranoican, fajl baza.php mozes smjestiti ispod www
direktorija ili mu daj neko cudno ime tako da niko nece ni skontati da
ima taj fajl... Uglavnom, mislim da to nije neki sigurnosni propust.
[ PavleBgd @ 25.05.2004. 17:03 ] @
Hvala ti na savetima
I meni je to logicno ali sve sam mislio da ima neka caka u celoj prici.
pozdrav
Pavle
[ _owl_ @ 25.05.2004. 23:24 ] @
Zavisi da li je PHP instaliran kao CGI ili kao modul. Ako je instaliran kao modul onda ce najverovatnije svi korisnici sistema moci da citaju tvoje fajlove. Ako je instaliran kao CGI sa suexec() podrskom onda mozes da stavis dozvole na 600 za sve fajlove koje "inkludujes". O ovoj temi je bila prica na forumu, u vezi sa podesavanjima Veratovih hosting servera.
[ zoidberg @ 26.05.2004. 00:47 ] @
hmmm, PHP je ispravno instalirati kao modul a ako svi korisnici sistema
mogu da inkludaju ili na bilo koji drugi način pristupaju fajlovima
drugih korisnika, onda nešto debelo nije u redu sa setupom tog servera.
Ako je to zaista tako, rješenje je da ih natjerate da to poprave ili da
mijenjate hosting, barem toga ima na bacanje danas.
[ utvara @ 28.05.2004. 16:55 ] @
Cekaj jel ne mozes da izvuces baze.php van docroot-a, koliko se ja
secam to je ranije na veratu moglo. Onda ne moze da mu se pristupi
preko weba, a mozes da radis include.

poz utvara

--
Sve najlepse,
Best regards,
Slobodan mailto:[email protected]
[ _owl_ @ 28.05.2004. 20:20 ] @
Citat:
zoidberg:hmmm, PHP je ispravno instalirati kao modul a ako svi korisnici sistema
mogu da inkludaju ili na bilo koji drugi način pristupaju fajlovima
drugih korisnika, onda nešto debelo nije u redu sa setupom tog servera.

Gresis ovaj silno gresis. Ako je PHP instaliran kao modul onda se izvrsava sa privilegijama apache servera (npr. user apache grupa web). Svaki korisnik koji zeli da ima podrsku za PHP mora ili da pripada grupi web ili da dozvoljava citanje svakom drugom korisniku na sistemu.
[ zoidberg @ 28.05.2004. 21:19 ] @
heh, ljudi moji, hajde zakupit hosting kod neke profesionalne hosting
kompanije pa includaj fajl nekog drugog korisnika. Šta vam je, to
izgleda samo pogrešno funka na veratu pa ispade to kao nekakvo pravilo :)

Još jednom, ako na veratu možeš includati fajl drugog korisnika to je
ogromna greška. Na koji način onda možeš uopšte osigurati svoje
dokumente. gdje je tu logika!!!
[ _owl_ @ 29.05.2004. 14:12 ] @
Pa na Veratu to ne moze, ako pravilno podesis dozvole fajlova koje inkludujes (npr. 0600, na zalost ovo nije podrazumevano ponasanje kada se fajloviprebacuju preko FTP-a). Ali na Veratu PHP se ne pokrece kao modul vec kao CGI sa podrskom za suexec() sto je druga prica.