DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > Web Hosting, web serveri i operativni sistemi
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

Web Hosting, web serveri i operativni sistemi Komercijalni hosting, web serveri, bezbednost, operativni sistemi na serverima

Odgovori
 
Alati teme Način prikaza
Staro 08. 09. 2007.   #1
zoro
Zoran Ševarac
Certified
 
Datum učlanjenja: 26.04.2006
Lokacija: Beograd
Poruke: 70
Hvala: 0
40 "Hvala" u 4 poruka
zoro is on a distinguished road
Default Bezbednost, 777 folderi, file upload i PHP

Verujem da su se mnogi sreli sa ovim problemom pa me zanimaju misljenja i iskustva.
Web aplikacija ima upload slika i zahteva 777 dozvole na folderu za upload jer PHP radi pod nalogom nobody. Ako je PHP nobody za sve manje od 777 upload ne radi.

Moguce je medjutim staviti na folder 755, a PHP staviti radi kao owner i tada upload radi. Medjutim PHP moze da radi kao owner samo kao CGI ili FASTCGI, ali ne i kao apache modul.
Koliki je i da li je znacajan pad perfomansi u tom slucaju da PHP radi kao CGi/FASTCGI?

Da li izvrsavanje PHP-a kao owner-a otvara nove sigurnosne probleme?

Da li postoji mogucnost da se sve ovo resi sa safe modom, a da se dozvoli upload fajlova?

Hvala!
zoro je offline   Odgovorite uz citat
Staro 08. 09. 2007.   #2
bluesman
Goran Pilipović
Sir Write-a-Lot
 
Avatar bluesman
 
Datum učlanjenja: 18.05.2005
Lokacija: Beograd
Poruke: 5.450
Hvala: 288
1.247 "Hvala" u 446 poruka
bluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušati
Pošaljite ICQ poruku za bluesman
Default

Primarna stvar je da vodiš računa šta se uploaduje, sve ostalo je važno, ali je ovo najvažnije. Najopasnja varijanta je kada dozvoliš da se uploaduje bilo šta ili kada ne radiš proveru šta je korisnik uploadovao. Još kada je folder 777 (punkerski, anarhija: sva prava svima), eto potencijalnog problema.

Ti generalno možeš i da uplaoduješ u neki folder koji nije na "izvo'lte" pa onda da radiš rename (move) u finalni folder, + chmod(), a finalni folder i ne mora da bude 777.
__________________
Goran Pilipović a.k.a. Ugly Fingers Bradley f.k.a. bluesman
I don't always know what I'm talking about but I know I'm right!
bluesman je offline   Odgovorite uz citat
Staro 08. 09. 2007.   #3
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

kad je php modul onda se on izvrsava sa apache privilegijama... i tada mozes da stavis da apache bude owner nekog fajla,ili jos bolje resenje ako imas privilegije, dodati apache u grupu kojoj pripada FTP user koji se koristi, pa onda dozvoliti 770 (owner i group imaju sva prava, a world ne).
__________________
Leadership is the art of getting people to want to do what you know must be done.
ivanhoe je offline   Odgovorite uz citat
Staro 11. 09. 2007.   #4
zoro
Zoran Ševarac
Certified
 
Datum učlanjenja: 26.04.2006
Lokacija: Beograd
Poruke: 70
Hvala: 0
40 "Hvala" u 4 poruka
zoro is on a distinguished road
Default

@blues
Ok, ja u svom scriptu proveravam sta se uploaduje. Zanima me da li je moguce da se u 777 folder na neki drugi nacin (sem mog scripta) nesto ubaci. Desavalo mi se da u tim folderima nalazim neke .htm fajlove koji nema sanse da su prosli kroz moj skript. Kako su se oni tu nasli?
Jedno od objasnenja je da je to uradio neki drugi korisnik sa istog shared hosting-a sto je najverovatnije. Nesto sam nacuo da je moguce ubaciti i preko /tmp foldera al mi to nije bas najjasnije.
Dakle konkretno da li je nekom poznato kako je sve moguce ishakovati 777 folder a da to ne ide kroz skript sa naloga na kome se taj folder nalazi. Da li je moguce to uraditi kroz neki drugi script koji ima bezbednosni propust tog tipa a nalazi se na drugom nalogu na istom shared serveru?

@ivanhoe
Zanimljiva ideja. Proverio sam i meni apache (a i php) rade kao nobody, a nasao sam da to nije dobro pa cu da menjam. Kazi mi samo da li je dovoljno kreirati odgovarajuci user, group i promeniti httpd.conf? Da li je potrebno rekompajlirati apache?
zoro je offline   Odgovorite uz citat
Staro 11. 09. 2007.   #5
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

Citat:
Originalno napisao zoro Pogledajte poruku
Zanima me da li je moguce da se u 777 folder na neki drugi nacin (sem mog scripta) nesto ubaci. Desavalo mi se da u tim folderima nalazim neke .htm fajlove koji nema sanse da su prosli kroz moj skript. Kako su se oni tu nasli?
u principu javno (preko weba) dostupni direktorijumi ne treba nikad da budu writablini od strane apacha ili bilo kog drugog korisnika osim tebe (odnosno ako mora tako onda zabrani pristup preko weba tom dir-u). Cak i ono sto sam ja pominjao da se apache doda u grupu nije dovoljno resenje, jer bilo ko ko na sistemu pokrece svoje skripte preko apacha onda ima pristup tvojim fajlovima.
Ovo sto pominjes je vrlo verovatno taj slucaj, neko na shared hostingu pokrene skriptu (bilo namerno, bilo da je uhakovana) koja kreira fajlove u tvom folderu. Posto to radi apache onda moze da pise sta hoce gde hoce, jer si mu dozvolio.

To se resava pomocu chroot-ovanja, ali to opet zahteva rekompajliranje apacha, a i stvara citav niz problema oko privilegija. Ja nisam nikad administrirao shared hosting tako da mi ovo nije trebalo, pa ne znam bas puno o tome, ali ima da se nadje howto-ova za chroot, pa pogledaj..

Za izmenu usera ne moras da rekompajliras nista, samo promenis httpd.conf i restartujes apache ( i naravno promenis privilegije svih bitnih fajlova, i kreiras novog usera koga zelis da apache koristi). Obicno se apachu daje poseban user i grupa, mada ne znam ni sto bi nobody bilo lose (ako se koristi samo za apache)
__________________
Leadership is the art of getting people to want to do what you know must be done.

Poslednja izmena od ivanhoe : 11. 09. 2007. u 03:00.
ivanhoe je offline   Odgovorite uz citat
Staro 12. 09. 2007.   #6
zoro
Zoran Ševarac
Certified
 
Datum učlanjenja: 26.04.2006
Lokacija: Beograd
Poruke: 70
Hvala: 0
40 "Hvala" u 4 poruka
zoro is on a distinguished road
Default

E sad smo razjasnili neke stvari. Ovde ima neki how to koji sadrzi ovo o cemu smo pricali, bice od koristi i drugima
zoro je offline   Odgovorite uz citat
Odgovori


Alati teme
Način prikaza

Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum

Slične teme
Tema Početna poruka teme Forum Odgovori Poslednja poruka
File hosting ppavlovic Web Hosting, web serveri i operativni sistemi 7 28. 09. 2009. 10:52
MySQL bezbednost i zastita tabela i baze pele Sva početnička pitanja 5 01. 07. 2007. 21:46
File Upload Problem! flash_back PHP 8 25. 03. 2007. 21:49
FTP File permissions cvele PHP 4 02. 02. 2007. 16:42
File upload uz ajax? marinowski PHP 4 25. 07. 2005. 18:13


Vreme je GMT +2. Trenutno vreme je 14:18.


Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.