Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kako zaobici SAFE MODE ogranicenja u PHP-u???

[es] :: PHP :: Kako zaobici SAFE MODE ogranicenja u PHP-u???

[ Pregleda: 4189 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

misxa
Podgorica

Član broj: 28513
Poruke: 68
*.crnagora.net



Profil

icon Kako zaobici SAFE MODE ogranicenja u PHP-u???02.07.2004. u 07:42 - pre 240 meseci
Imam galeriju slika, smjestenu po folderima na UNIX serveru, tamo na nekom udaljenom racunaru provajdera. Foldere popunjavam preko FTP konekcije.

Kad pokusam da procitam sadrzaj galerije pomocu PHP funkcija (opendir...), pojavi mi se upozorenje da mi SAFE MODE ogranicenje ne dozvoljava ove funkcije.

Kako da zaobidjem ovo ogranicenje? Provajder je teska stipsa, tako da ne vrijedi traziti bilo sta od njega...
 
Odgovor na temu

Goran Rakić
Beograd

Moderator
Član broj: 999
Poruke: 3766

Sajt: blog.goranrakic.com


+125 Profil

icon Re: Kako zaobici SAFE MODE ogranicenja u PHP-u???02.07.2004. u 13:00 - pre 240 meseci
Safe mod nikako ne možeš "zaobići" ali se možeš pomiriti sa njim.

Pogledaj da nije slučaj opisan u http://bugs.php.net/bug.php?id=27498

Dalje, pasulj ne volim da koristim pa ćeš ti morati da napraviš test case i postujeć ovde 10-tak linija koje pokazuju problem. Obrati pažnju i na privilegije, tj. dozvole za otvaranje.

Pogledaj i podešavanje open_basedir i disable_functions varijabli (phpinfo()).

Naravno, ako ti korisnik pod kojim "trči" php nije ujedno i vlasnik direktorijuma i datoteka koje si ubacio preko FTP-a, ništa od ovoga ti neće pomoći i moraćeš da nađeš neko zaobilazno rešenje.
http://sr.libreoffice.org — slobodan kancelarijski paket, obrada teksta, tablice,
prezentacije, legalno bez troškova licenciranja
 
Odgovor na temu

crews_adder
Serbia

Član broj: 28500
Poruke: 2159
*.dial.b92.net.

ICQ: 302374108


+2 Profil

icon Re: SAFE MODE ogranicenja u PHP-u???30.03.2005. u 13:22 - pre 231 meseci
Citat:
Q: Do you run PHP in Safe Mode?
A: Yes, all our servers run PHP in Safe Mode.


Moze li neko da mi pojasni sta ovo znaci? Za sta bih eventualno bio uskracen u odnosu na web-hosting koji nema ovo ogranicenje? Da li je vas savet da odmah odustanem od takvog hostinga?

[Ovu poruku je menjao crews_adder dana 30.03.2005. u 14:32 GMT+1]
 
Odgovor na temu

Goran Rakić
Beograd

Moderator
Član broj: 999
Poruke: 3766

Sajt: blog.goranrakic.com


+125 Profil

icon Re: Kako zaobici SAFE MODE ogranicenja u PHP-u???30.03.2005. u 13:29 - pre 231 meseci
http://www.php.net/features.safe-mode
http://sr.libreoffice.org — slobodan kancelarijski paket, obrada teksta, tablice,
prezentacije, legalno bez troškova licenciranja
 
Odgovor na temu

Perica Mali
Perica Mali
slobodni strelac
Bgd

Član broj: 4935
Poruke: 84
*.bankerinter.net.



Profil

icon Re: Kako zaobici SAFE MODE ogranicenja u PHP-u???29.03.2006. u 02:37 - pre 219 meseci
Citat:
Goran Rakić: Obrati pažnju i na privilegije, tj. dozvole za otvaranje.

Pogledaj i podešavanje open_basedir i disable_functions varijabli (phpinfo()).

Naravno, ako ti korisnik pod kojim "trči" php nije ujedno i vlasnik direktorijuma i datoteka koje si ubacio preko FTP-a, ništa od ovoga ti neće pomoći i moraćeš da nađeš neko zaobilazno rešenje.


Kako resiti isti problem ako fajl preuzet iz attachmenta e-mail poruke sa IMAP-a, a zelim da smestim u novi dir koji se formira tako da njegovo ime odgovara Subject-u e-mail poruke.
Napominjem da sve radi bez mkdir, a kad stavim mkdir("putanja/do/novog/direktorijuma", 0777) sledi upucavanje fopen-a od strane SAFE MODE-a:

Warning: fopen(): SAFE MODE Restriction in effect. The script whose uid/gid is 8441/8441 is not allowed to access /www/sajtovi/mojsajt/upload/Web str. br.1 owned by uid/gid 99/99 in /www/sajtovi/mojsajt/attach_read.class.php on line 94

Direktorijumi mojsajt i upload imaju chmod 777.

Evo i kôda:

$path_pre = "/www/sajtovi/mojsajt/upload";

//mkdir from Subject
$path_pre.= '/'.$subject[$x];
if( !file_exists ( $path_pre ) ) mkdir($path_pre);

// smesti attach u dir
$att_file = $path_pre."/".$att_name;
$fp = fopen($att_file,'w+');
$fw = fwrite($fp,$att_content);
fclose($fp);

Problem je, naravno, u shared hostingu?
Sta je ustvari uid/gid 99/99?

[Ovu poruku je menjao Perica Mali dana 29.03.2006. u 03:38 GMT+1]

[Ovu poruku je menjao Perica Mali dana 29.03.2006. u 03:39 GMT+1]
 
Odgovor na temu

Miroslav Ćurčić
ex mVeliki
Novi Sad

Član broj: 19034
Poruke: 1118
..mtsns-ns.customer.sbb.co.yu.



+19 Profil

icon Re: Kako zaobici SAFE MODE ogranicenja u PHP-u???29.03.2006. u 21:21 - pre 219 meseci
Privilegije su Ok, ali VLASNIK tih direktorijuma je različit, to si ti uid/gid brojevi.
Svrha safe-moda je baš u tome da dozvoljava rad samo sa direktorjumima koje je korisnik napravio.
Obrada privilegija je na nivu OSa a ovo je dodatno.

Dok si uploadovao preko FTPa logovan si a sistem kao običan user sa svojim identifikatorim (uid),
ali datoteke koje nastaju kao rezultat izvršavanja PHPa (koji se svaki put poziva od strane Apacha) dobijaju Apachev identifikator i eto problema.

Jedino rešenje koje sam video je da kreiranje novih datoteka ide preko FTP zaobilaznice:
$handle = fopen ("ftp://$ftpuser:$ftppass@$ftphost$ftpdir$writefile", "w");
tako da ti sve datoteke budu sa istim uid-om.
"The quieter you become, the more you are able to hear."
Blog | PowerCMS
 
Odgovor na temu

Perica Mali
Perica Mali
slobodni strelac
Bgd

Član broj: 4935
Poruke: 84
*.beotel.net.



Profil

icon Re: Kako zaobici SAFE MODE ogranicenja u PHP-u???29.03.2006. u 23:17 - pre 219 meseci
Ok, probacu... ali pre toga se otvara gomila krucijalnih pitanja:

1. Kakva je sigurnost slanja ftppass-a na ovaj nacin? Da li je to jednako kao da Web browserom pokusam ftp pristup?
2. Nakon ovoga $handle sadrzi odgovarajuci UID ili GID?
3. U fopen ("ftp://$ftpuser:$ftppass@$ftphost$ftpdir$writefile") izmedju $ftphost i $ftpdir i $writefile ide / zar ne?

[Ovu poruku je menjao Perica Mali dana 30.03.2006. u 02:17 GMT+1]
 
Odgovor na temu

Perica Mali
Perica Mali
slobodni strelac
Bgd

Član broj: 4935
Poruke: 84
*.beotel.net.



Profil

icon Re: Kako zaobici SAFE MODE ogranicenja u PHP-u???30.03.2006. u 01:13 - pre 219 meseci
Probao. Ne radi!

Warning: fopen(ftp://user:[email protected]/putanja/do/fajla/mojfajl.txt): failed to open stream: FTP server reports 550 /putanja/do/fajla/mojfajl.txt: No such file or directory in /putanja/do/fajla/index.php on line 22

Warning: fwrite(): supplied argument is not a valid stream resource in /putanja/do/fajla/index.php on line 23 ---- ovde je fwrite

Warning: fclose(): supplied argument is not a valid stream resource in /putanja/do/fajla/index.php on line 24 ---- ovde je fclose


Zasto mi FTP server daje 550 (Path does not exist) kada je mkdir odradio svoje tj. kreirao gorepomenuti direktorijum upload i preuzeo $handle?

Ne radi cak ni kada:

- rucno promenim ownera u You (a bio je naravno Webserver)
- uputim fopen u rootdir PHP skripta (koji se, naravno, ne formira sa mkdir)

Naravno, sve i dalje radi pomocu obicnog fopen-a koji upisuje fajl u rootdir skripta ili u neki postojeci dir.

Ako gresim mozda bi bilo najbolje da paste-ujes primercic, xe, xe...
 
Odgovor na temu

Miroslav Ćurčić
ex mVeliki
Novi Sad

Član broj: 19034
Poruke: 1118
..mtsns-ns.customer.sbb.co.yu.



+19 Profil

icon Re: Kako zaobici SAFE MODE ogranicenja u PHP-u???30.03.2006. u 09:55 - pre 219 meseci
Primer nemam, nisam ovo nikad upotrebio, samo sam našao negde na netu i snimio u svoju magnetnu baštu.

Proveri dali je putanja ispravna jer FTP root često nije isti kao Apache document root.
Proveri i verziju PHPa, u helpu ćeš naći da FTP wraper za fopen nije podržan kod starijih verzija PHPa.
"The quieter you become, the more you are able to hear."
Blog | PowerCMS
 
Odgovor na temu

Perica Mali
Perica Mali
slobodni strelac
Bgd

Član broj: 4935
Poruke: 84
*.beotel.net.



Profil

icon Re: Kako zaobici SAFE MODE ogranicenja u PHP-u???31.03.2006. u 00:02 - pre 219 meseci
U pravu si! Problem je bio u tome sto sam iza ftp.mojhost.com utrpao putanju do Document root-a. FTP root sam proverio sa PWD i dobio "/" tj. Document root. Ipak, mislim da je slanje user-a i pass-a na ovaj nacin totalno nesigurno i da se moze usnifovati dok kazes PHP :))) Zasad radim sve iza .htaccess-a, ali sam ipak otvorio poseban FTP nalog ciji je root direktorijum onaj u kome je pomenuti skript.
Molim nekog od starijih na ovom forumu da prokomentarise sigurnost fopen(ftp://
Hvala.
 
Odgovor na temu

SmilieBG
Aleksandar Skodric
NL

Član broj: 13094
Poruke: 1821
*.speed.planet.nl.



+3 Profil

icon Re: Kako zaobici SAFE MODE ogranicenja u PHP-u???31.03.2006. u 01:38 - pre 219 meseci
Pa... Sigurno je koliko i kada 'obicnim' ftp-om se logujes na server :) Mozda malkice sigurnije, posto putanja preko neta od tvog kompa je nesto 'dalja' nego sa servera, tako da ima vise mesta gde moze da se postavi sniffer...

Mozda mozes da pokusas da se logujes iz skripte na localhost (ako su FTP i www serveri na istoj masini). Na ovaj nacin 'ne izlazis' na net, te bi to trebalo biti nesto sigurnije...

Drugo sto mozes da probas jeste da nije slucajno instaliran sftp, pa da preko curl-a se logujes...

Poz,
Sale
=========
Uporedi cene i karakteristike za vise od 10.000 proizvoda, izmedju ostalog:
Digitalni foto-aparati
Mobilni telefoni
Skolski pribor
=========
 
Odgovor na temu

Perica Mali
Perica Mali
slobodni strelac
Bgd

Član broj: 4935
Poruke: 84
*.beotel.net.



Profil

icon Re: Kako zaobici SAFE MODE ogranicenja u PHP-u???31.03.2006. u 21:24 - pre 219 meseci
Ne bih ja to tako komplikovao kad moze fopen("ftps://
Zar ne?
 
Odgovor na temu

[es] :: PHP :: Kako zaobici SAFE MODE ogranicenja u PHP-u???

[ Pregleda: 4189 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.