Discussion:
webhosting linuxon (apache+php)
Imre Gergely
2004-07-17 19:38:57 UTC
Permalink
sziasztok

van vmi jo anyag a weben $SUBJECT-re?
vagy tudnatok adni valami jo tippeket, hogy tehetek biztonsagos(abb)a egy
szervert, amin tobb website van host-olva, egy darab apache szerver,
php-val es mysql-el felszerelve.

mindenkinek van egy ftp juzer-e, egy sajat konyvtara, ahova feltoltheti a
site-jat. ftp-bol be van zarva ebbe a konyvtarba. ha ker, kap adatbazist,
amit hasznalhat a php-in keresztul. a legnagyobb gondom az, hogy oldom
meg, hogy a kulonbozo felhasznalok, feltoltott php-iken keresztul ne
tudjanak atmaszni egymas konyvtaraiba, ne tudjanak kimenni a
filerendszerre (a php eleg sokoldalu mindenfele szempontbol, eleg
konnyen, es nem tul sok tudassal hozza lehet ferni a gepen olyan
adatokhoz, amikhez a kedves felhasznalonak semmi koze).

es akkor me'g bejon az is, hogy nehany embernek szuksege lehet olyan
jogokra, hogy a webszerver toltson fel kepeket a sajat konyvtaraba (ugy
van megepitve a site, stb.). ezert a webszervernek is joga kell legyen
irni abba a konyvtarba, es itt mar megint nagyon felo, hogy valaki egyet
gondol, es valami hulyeseget csinal.

php-ben van ez az open_basedir direktiva, amivel egesz jol be lehet zarni
az embereket, de ez valahogy ugy tunik meg mindig nem ele'g. es nem oldja
meg az iras jogi problemat.

gondolkodtam valami VPS (virtual private server)-es megoldason, hogy
mindenkinek adok kulon 'gepet', de az meg tul nagy felhajtas, annyira
aze'rt nem komoly ez a host-olas, nem erne' meg. mert van aki meg csak
sima html site-okat tolt fel.

es mit tudok tenni az olyan ellen pl, hogy egy php-n keresztul valaki
feltolt egy egyszeru szkriptet, futtathatova teszi, es php
fuggvenyhivasokon keresztul lefuttatja, ugyebar a webszerver neve'ben?

tudom, vannak erre a celra irt szoftverek, fizetesesek, ezeket hagyjuk ki
a kepbol most. viszont ha van valami ingyenes szoft, az erdekelne.

elore is koszonom a tippeket.
--
Gergely Imre email: gimre at nextra dot ro
http://www.nextra.ro/gimre irc.nextra.ro, #nextra
KORN Andras
2004-07-17 19:54:07 UTC
Permalink
Post by Imre Gergely
mindenkinek van egy ftp juzer-e, egy sajat konyvtara, ahova feltoltheti a
site-jat. ftp-bol be van zarva ebbe a konyvtarba. ha ker, kap adatbazist,
amit hasznalhat a php-in keresztul. a legnagyobb gondom az, hogy oldom
meg, hogy a kulonbozo felhasznalok, feltoltott php-iken keresztul ne
tudjanak atmaszni egymas konyvtaraiba, ne tudjanak kimenni a
Nagyon egyszeru. Minden user website-jat egy sajat kis apache szolgalja ki,
ami a localhost:uid porton figyel, es uid userkent fut, akar chrootolva a
user home-jaba.

A 80-as porton meg van egy "nagy" apache, aki proxypass direktivakkal
szetosztja a kistestvereinek a kereseket aszerint, hogy milyen URL-re jottek
be.

Egy masik lehetoseg az apache2 perchild mpm-je lenne, de arra mar kb. 2 eve
azt mondjak, hogy instabil, es meg fejlesztik...

Egy harmadik lehetoseg az UML, de olyat nem akarsz.

Guy
--
Andras Korn <korn at chardonnay.math.bme.hu>
<http://chardonnay.math.bme.hu/~korn/> QOTD:
Consciousness: that annoying time between naps.
Gergely Imre
2004-07-18 11:48:06 UTC
Permalink
Post by KORN Andras
Post by Imre Gergely
mindenkinek van egy ftp juzer-e, egy sajat konyvtara, ahova feltoltheti a
site-jat. ftp-bol be van zarva ebbe a konyvtarba. ha ker, kap adatbazist,
amit hasznalhat a php-in keresztul. a legnagyobb gondom az, hogy oldom
meg, hogy a kulonbozo felhasznalok, feltoltott php-iken keresztul ne
tudjanak atmaszni egymas konyvtaraiba, ne tudjanak kimenni a
Nagyon egyszeru. Minden user website-jat egy sajat kis apache szolgalja ki,
ami a localhost:uid porton figyel, es uid userkent fut, akar chrootolva a
user home-jaba.
A 80-as porton meg van egy "nagy" apache, aki proxypass direktivakkal
szetosztja a kistestvereinek a kereseket aszerint, hogy milyen URL-re jottek
be.
es ez valami feature, vagy kulon patch-elni kell erre az apache-ot? van
valami keyword, amire rakeressek, hogy utana tudjak nezni?
Post by KORN Andras
Egy harmadik lehetoseg az UML, de olyat nem akarsz.
iigen, olvastam errol is valami keveset, de ahhoz tulsagosan at kell
dizajnolni a rendszert, abba nem menne'k bele.
--
Gergely Imre (gimreATnextraDOTro)
http://www.nextra.ro/gimre
KORN Andras
2004-07-18 21:45:08 UTC
Permalink
Post by Gergely Imre
Post by KORN Andras
A 80-as porton meg van egy "nagy" apache, aki proxypass direktivakkal
szetosztja a kistestvereinek a kereseket aszerint, hogy milyen URL-re jottek
be.
es ez valami feature, vagy kulon patch-elni kell erre az apache-ot? van
valami keyword, amire rakeressek, hogy utana tudjak nezni?
http://httpd.apache.org/docs/mod/mod_proxy.html#proxypass

Kell a proxypassreverse is, a proxypass pedig kivalthato [P] kapcsolot
hasznalo RewriteRule-lal.

A http://httpd.apache.org/docs/ cimen minden dokumentacio megtalalhato,
amire szukseg van hozza; ha mar tudsz ertelmes kerdeseket feltenni, akkor a
freenode irc-halozaton az #apache csatornan is segitenek.
Post by Gergely Imre
Post by KORN Andras
Egy harmadik lehetoseg az UML, de olyat nem akarsz.
iigen, olvastam errol is valami keveset, de ahhoz tulsagosan at kell
dizajnolni a rendszert, abba nem menne'k bele.
Igen, ezert mondtam, hogy olyat nem akarsz. Talan felreertheto volt: nem
ellenreklamot csinalok neki, szerintem jo dolog, csak a te
feladatspecifikaciodnak nem felel meg.

Guy
--
Andras Korn <korn at chardonnay.math.bme.hu>
<http://chardonnay.math.bme.hu/~korn/> QOTD:
Ki az emberekkel a hadseregbol!
Szabó Dénes
2004-07-18 16:58:48 UTC
Permalink
SZia!
Post by KORN Andras
Nagyon egyszeru. Minden user website-jat egy sajat kis apache
szolgalja ki, ami a localhost:uid porton figyel, es uid userkent fut,
akar chrootolva a user home-jaba.
Sokkal egyszerubb a php-t safe modba atrakni (v. safe_mode_gid). +
open_basedir megadasaval "bezarod" sajat home-jaba. A sajat virt.
hostokban php_admin_flag, php_admin value-vel allithatsz virt.
hostonkent parametereket, amiket nem biralhat utolag felul.
--
Üdv!
Szabó Dénes

:: InterNode Bt. :: http://internode.hu ::
:: ICQ: 13486370 :: Mobil: 20/9739423 ::
Milus János
2004-07-19 05:12:09 UTC
Permalink
Post by KORN Andras
Post by Imre Gergely
mindenkinek van egy ftp juzer-e, egy sajat konyvtara, ahova feltoltheti a
site-jat. ftp-bol be van zarva ebbe a konyvtarba. ha ker, kap adatbazist,
amit hasznalhat a php-in keresztul. a legnagyobb gondom az, hogy oldom
meg, hogy a kulonbozo felhasznalok, feltoltott php-iken keresztul ne
tudjanak atmaszni egymas konyvtaraiba, ne tudjanak kimenni a
Nagyon egyszeru. Minden user website-jat egy sajat kis apache szolgalja ki,
ami a localhost:uid porton figyel, es uid userkent fut, akar chrootolva a
user home-jaba.
A chroot nem elég. Kell valami még mellé (rsbac, grsecurity stb.) hogy
ne tudjon kijönni a chrootból.
Post by KORN Andras
A 80-as porton meg van egy "nagy" apache, aki proxypass direktivakkal
szetosztja a kistestvereinek a kereseket aszerint, hogy milyen URL-re jottek
be.
Erre a zorp jobban megfelel. virtualserver/url alapján el tudja osztani
az apache-ok között a kéréseket. Kisebb és átláthatóbb kód, mint az
apache, ráadásul auditált.

Üdv
Jo-Hans
Sickboy
2004-08-06 18:01:44 UTC
Permalink
Post by KORN Andras
Nagyon egyszeru. Minden user website-jat egy sajat kis apache szolgalja ki,
ami a localhost:uid porton figyel, es uid userkent fut, akar chrootolva a
user home-jaba. A 80-as porton meg van egy "nagy" apache, aki proxypass
direktivakkal szetosztja a kistestvereinek a kereseket aszerint, hogy milyen
URL-re jottek be.
A temarol egyszer regen mar volt asszem security-l -n egy hosszabb thread.
Sajnos a helyzet azota sem valtozott sokat. Jelenlegi eszkozokkel az egyetlen
korrekt megkozelites ez.
(A php safemode is jo akkor, ha az ember 1 percet akar a problemara szanni. (Es
annyit is er.) Ez egyebkent asszem anno reszletesen ki lett fejtve.)
Post by KORN Andras
Egy masik lehetoseg az apache2 perchild mpm-je lenne, de arra mar kb. 2 eve
azt mondjak, hogy instabil, es meg fejlesztik...
Az valami lenne, de inkabb csak lenne. Azert, mert 1 vhoston belul thread-es.
A PHP ugyan mar (talan, remelhetoleg) tenyleg stabil multithread kornyezetben,
DE ok is megmondtak, hogy egy halom php modul nem az, es talan soha nem is lesz,
es sajnos ezen halom modul kozul altalaban egy csomo nepszeru, gyakran hasznalt,
kell is a juzereknek. Tehat gyakorlatilag ha a "nepnek" szolgaltat az ember
php-t, akkor ez akkor is buko megoldas lesz, ha egyaltalan valamikor elkeszul.

(Nem tudom, hogy lehetne-e egy hasonlo, de vhostokon belul is process alapu
mpm-t csinalni, az talan teljes erteku lehetne. Persze meg mindig kerdes, hogy a
"zorp osztja szet apache-oknak" felallasnal lenyegesen szebb/jobb lenne-e, vagy
egyaltalan lenne-e annyira robosztus (apache-on belul mennyire tud "visszahatni"
egy gonosz apache child?).)
Post by KORN Andras
Egy harmadik lehetoseg az UML, de olyat nem akarsz.
Mert nem eleg "lightweight" tobb szempontbol is.

Ami kene (es ez reszletesen ki van fejtve a regi threadben), az egy olyan
megoldas, hogy a juzerek kapnak sajat kis "chrootot", azon belul(re) shell
accountjuk (is) van/lehet, illetve valami cryptelt file transfer szolgaltatas.
(pl scp, de itt most a funkciorol beszelunk, nem a konkret megvalositas neve a
lenyeg).
Termeszetesen a web kiszolgalas is a sajat kis chrootjuk keretein belul fut (a
fentiekben eddig errol volt szo, de szerintem ez csak az "egyik fele" a
dolognak), SOT, adott esetben, plusz szolgaltataskent, sajat daemont is
futtathatnak (nyilvan megadott porton, nem publik interface-re bindelve, arra
publikrol befele forward admin altal beallitva), mindezt ugy, hogy sem server
resource-okat nem tudnak a szamukra kiszabott ("amiert fizetnek") kereten tul
lefoglalni (sem mem sem proc. ido), sem a "chrootjukon" kivul eso dolgokhoz
hozzaferni. (Pl masik user vagy a rendszer dolgaihoz.)
Tovabba persze az is szempont, hogy ezt valahogy karban is kell tartani, tehat
pl a chrootban benne levo sw reszeket frissiteni...

Kar, hogy a mai oprendszerek nem ugy lettek kialakitva, hogy ezt egyszeru legyen
megcsinalni. Agyonpatchelt kernellel, es hosszadalmas szabalyrendszer
felallitassal talan meg lehet kozeliteni. (Egy probalkozas erre a "futasra kesz"
projektjeim kozott van, de meg nem kerult sorra. ;)
(De pl per-user memlimit meg mindig nincs linuxban.)

Szoval a megoldas egyelore a kompromisszum valamelyik foka a skala tokeletes
megoldastol tavol eso reszen. :(


.SiCk of IT.
Zoltan NAGY
2004-08-06 18:36:10 UTC
Permalink
Post by Sickboy
Szoval a megoldas egyelore a kompromisszum valamelyik foka a skala tokeletes
megoldastol tavol eso reszen. :(
ohm.

miert nem jo az, hogy apache2, majd minden juzer suexeccel futtatja a cgis
phpjet?

udv,

--
Zoltan NAGY,
Network Administrator
KORN Andras
2004-08-06 20:12:59 UTC
Permalink
Post by Zoltan NAGY
Post by Sickboy
Szoval a megoldas egyelore a kompromisszum valamelyik foka a skala tokeletes
megoldastol tavol eso reszen. :(
ohm.
miert nem jo az, hogy apache2, majd minden juzer suexeccel futtatja a cgis
phpjet?
Mert a cgi lassu, rosszul skalazodik.

Guy
--
Andras Korn <korn at chardonnay.math.bme.hu>
<http://chardonnay.math.bme.hu/~korn/> QOTD:
Windows 98 supports true multitasking: it can boot and crash simultaneously.
Zoltan NAGY
2004-08-06 20:26:51 UTC
Permalink
Post by KORN Andras
Mert a cgi lassu, rosszul skalazodik.
biztonsag vs sebesseg..
meg mindig jobb, mint kicsi-biztonsag vs ganyolas :)

udv,

--
Zoltan NAGY,
Network Administrator
KORN Andras
2004-08-06 20:51:08 UTC
Permalink
Post by Zoltan NAGY
Post by KORN Andras
Mert a cgi lassu, rosszul skalazodik.
biztonsag vs sebesseg..
meg mindig jobb, mint kicsi-biztonsag vs ganyolas :)
Ez lehet, viszont az ember altalaban mindkettot szeretne. :) A proxy-alapu
szetvalogatas tobb apache-peldanyra ugyan valamivel bonyolultabb, mint a
cgi, de sokkal gyorsabb.

Guy
--
Andras Korn <korn at chardonnay.math.bme.hu>
<http://chardonnay.math.bme.hu/~korn/> QOTD:
Alcohol is not the answer, but at least it makes you forget the question.
Pallai Roland
2004-08-13 15:56:26 UTC
Permalink
Post by KORN Andras
Post by Zoltan NAGY
Post by Sickboy
Szoval a megoldas egyelore a kompromisszum valamelyik foka a skala tokeletes
megoldastol tavol eso reszen. :(
ohm.
miert nem jo az, hogy apache2, majd minden juzer suexeccel futtatja a cgis
phpjet?
Mert a cgi lassu, rosszul skalazodik.
apache2 cgid-vel mar a fork nem tul draga dolog, bar a php-cgi
indulasa/leallasa nemtom pontosan hany orajelciklus, de biztos h en
ezzel a megoldassal jottem ki legjobban 500+ vhost eseten, minden mas
hatalmas overhead volt minden szempontbol.. a biztonsag szerintem epp
eleg, rsbac-al kombinalva pl RC role-t lehet huzni a juzerre, aztan
tetszes szerint megnyirbalni a jogait
a http auth kis hekkel muxik rendesen, egyeduli gond h a http headert
kuldo php scripteket vhogy meg kell kulonboztetni, pl *.nphphp -re
nevezni


--
dap
KORN Andras
2004-08-13 21:01:35 UTC
Permalink
Post by Pallai Roland
apache2 cgid-vel mar a fork nem tul draga dolog, bar a php-cgi
indulasa/leallasa nemtom pontosan hany orajelciklus, de biztos h en
ezzel a megoldassal jottem ki legjobban 500+ vhost eseten, minden mas
hatalmas overhead volt minden szempontbol.. a biztonsag szerintem epp
eleg, rsbac-al kombinalva pl RC role-t lehet huzni a juzerre, aztan
tetszes szerint megnyirbalni a jogait
a http auth kis hekkel muxik rendesen, egyeduli gond h a http headert
kuldo php scripteket vhogy meg kell kulonboztetni, pl *.nphphp -re
nevezni
Nincs kedved egy HOWTOt irni errol az elrendezesrol?

Guy
--
Andras Korn <korn at chardonnay.math.bme.hu>
<http://chardonnay.math.bme.hu/~korn/> QOTD:
Never let any mechanical device know you're in a hurry.
Sickboy
2004-08-07 13:53:53 UTC
Permalink
Post by Zoltan NAGY
Post by Sickboy
Szoval a megoldas egyelore a kompromisszum valamelyik foka a skala tokeletes
megoldastol tavol eso reszen. :(
ohm.
miert nem jo az, hogy apache2, majd minden juzer suexeccel futtatja a cgis
phpjet?
Eloszoris nem csak php lehet. Gondolkodjunk ugy, hogy mindenfele lehet.
Lehet, hogy cgi-t akarnak, lehet, hogy jsp-t (vagy netan servletet), lehet
eppenseggel, hogy PHP-t, de mondjuk lehet, hogy mod_perlt. (Vagy mod_akarmit)
Amit en keresek, az egy altalanos megoldas a problemara, nem az a kerdes, hogy
PHP-nel KONKRETAN pont lehet-e safemode-al vagy massal ganyolni.
Egyebkent a cgi-s php nem skalazodasan kivul mas feature-ok is hianyoznak
belole, peldaul a http auth.


.SiCk of IT.
Szabó Dénes
2004-08-06 21:00:24 UTC
Permalink
Szia!
Post by Sickboy
A temarol egyszer regen mar volt asszem security-l -n egy hosszabb
thread. Sajnos a helyzet azota sem valtozott sokat. Jelenlegi
eszkozokkel az egyetlen korrekt megkozelites ez.
Nincs meg az url? Ahogy neztem a security-l lista archivuma nem
keresheto.
Post by Sickboy
(A php safemode is jo akkor, ha az ember 1 percet akar a problemara
szanni. (Es annyit is er.) Ez egyebkent asszem anno reszletesen ki
lett fejtve.)
Foleg ez a resz erdekelne, h. miert is.

THX!
--
Üdv!
Szabó Dénes

:: InterNode Bt. :: http://internode.hu ::
:: Contact = ICQ: 13486370 || Mobil: 20/9739423 || Skype: d.taylor ::
Szabó Dénes
2004-08-06 21:22:37 UTC
Permalink
Szia!
Post by Szabó Dénes
Nincs meg az url? Ahogy neztem a security-l lista archivuma nem
keresheto.
Bocs, hagyjad, megtalaltam a full mbox-ot. Letolotottem. Kmail benyalta
egy pillanat alatt. Thread-ek, keresheto, mi1mas. Megtalalom.
--
Üdv!
Szabó Dénes

:: InterNode Bt. :: http://internode.hu ::
:: Contact = ICQ: 13486370 || Mobil: 20/9739423 || Skype: d.taylor ::
Sickboy
2004-08-07 14:15:53 UTC
Permalink
Post by Szabó Dénes
Szia!
Post by Sickboy
(A php safemode is jo akkor, ha az ember 1 percet akar a problemara
szanni. (Es annyit is er.) Ez egyebkent asszem anno reszletesen ki
lett fejtve.)
Foleg ez a resz erdekelne, h. miert is.
Alapvetoen azert, mert a PHP onmagaval szemben nem ved. A php maga nem az a pont
a rendszerben, ahova a "hatarvonal" megvalositasa valo. Masreszt ha felvesszuk
az igenyek koze azt, hogy egy website esetleg _sajat_ programokat is akar
exec-elni phpbol, maris meghalt a safemode OSSZES vedelme.
Marpedig pl nalam ez elvaras.

Tovabba mint az elozo levelben irtam, a PHP messze nem az egyetlen futtathato
dolog, amit nyujtani szeretnenk, es a tobbire, ertelemszeruen, nem megoldas.

Ha elfogadhato az, hogy a szolgaltato azt mondja, hogy "igen, ez egy letezo php
(vagy eppenseggel x,y,z) feature, de nalunk ez nem megy security miatt" (amely
helyzetbe egyebkent akar cgi-s phpvel, akar safemode-al kerul az ember), es csak
php van (es az apache is erosen le van lockolva, .htaccess stb. nincs, de pl ez
utobbi is esetlegesen elvarhato/szukseges funkcionalitast vesz el) akkor er
valamit a safemode.

Szamomra ezek a megkotesek egyreszt nem elfogadhatok, masreszt ezek azok a
kompromisszumok, amikrol beszeltem.

Tovabbi gyakorlatkent erdemes megnezni a sourceforge-on elerheto ingyenes php
hekkware-k nepszeruseget, valamint hogy ezeknek mekkora hanyada mukodik
safemode-ban (->0). Tudom, hogy ilyet normalis ember nem hasznal, de most nem
egy olyan szerverrol beszelunk, amin a sajat kodjait futtatja az ember, hanem
amire BARMIT fel lehet tenni, es BARMI is legfeljebb csak a BARMIT
felrako/hasznalo/nempeccselo szerencsetlen sajat cuccait veszelyezteti, es kesz.
Igen, ez tkp innentol olyan, mint egy publik shellszerver, amit megsem lehet
feltorni. ;)


.SiCk of IT.
Auth Gábor
2004-08-07 14:26:16 UTC
Permalink
Halihó!
Post by Sickboy
Tovabbi gyakorlatkent erdemes megnezni a sourceforge-on elerheto
ingyenes php hekkware-k nepszeruseget, valamint hogy ezeknek mekkora
hanyada mukodik safemode-ban (->0). Tudom, hogy ilyet normalis ember
nem hasznal, de most nem egy olyan szerverrol beszelunk, amin a sajat
kodjait futtatja az ember, hanem amire BARMIT fel lehet tenni, es BARMI
is legfeljebb csak a BARMIT felrako/hasznalo/nempeccselo szerencsetlen
sajat cuccait veszelyezteti, es kesz. Igen, ez tkp innentol olyan, mint
egy publik shellszerver, amit megsem lehet feltorni. ;)
FreeBSD-n azt csinálom, hogy a felhasználó kap egy jail-t, abba egy
teljes fájlrendszer, és a saját IP címet. Ezekkel a feltételekkel bármit
csinál, nagyjából csak a saját dolgait veszélyezteti, probléma akkor van,
ha valami hülyeséggel leterheli a szerver, mert ,,az ellen nem
véd''... :)
Linux esetén úgy tudom, hogy a chroot nem kap külön IP címet... vagy
igen?
Tehát például egy jail esetén egy teljes alrendszert készítek, majd
kiadom a
# jail /usr/local/jails/USERNAME/ user.domain.hu 1.2.3.4 /bin/sh
parancsot, és innentől a ,,börtönben'' dolgozok, és csak a megadott IP-t
látom, minden program arra mászik fel.
A dolog javítható belső IP címekkel és akkor egy külső interfészen
figyelő Apache képes domain alapján bedobálni a megfelelő címekre a
kéréseket.
--
http://www.enaplo.hu - Iskolai Információs Rendszer
Auth Gábor -=- +36-70/312-1856 -=- ICQ: 49179141
Szabó Dénes
2004-08-07 17:52:23 UTC
Permalink
Szi!
Post by Auth Gábor
Linux esetén úgy tudom, hogy a chroot nem kap külön IP címet...
vagy igen?
Nem tudom, gondolom, lehetne neki adni. Bar, nem latom at, h. az miert
is jo.
Post by Auth Gábor
Tehát például egy jail esetén egy teljes alrendszert készítek, majd
kiadom a
# jail /usr/local/jails/USERNAME/ user.domain.hu 1.2.3.4 /bin/sh
En a pam_chroot-tal csinaltam. Van egy jail konyvtar, ami apt-get-tel
frissitheto. A minimal csomagok vannak ott, + juzerek.
Post by Auth Gábor
parancsot, és innentől a ,,börtönben'' dolgozok, és csak a megadott
IP-t látom, minden program arra mászik fel.
Nalam nem futtat semmit, ami felmaszik, mert nem lat semmit. Felmasolja
a cuccait, es a jailba az apache benyul a virthostokkal. A php safe
modban, es az open basedir-el is a juzer sajat dir-jere van korlatozva.

Egesz jo. De: nem juzerenkent van jail, hanem a juzerek egy kozos
jail-ben. A jail most ~200M. De van benn a juzereknek mindenfele
proggi: tar, bzip, mc, vim, miegymas.

Kulon juzerenkent innentol nem lenne sokkal macerasabb megcsinalni. Csak
sok helyet visz el, es karbantarani is too melo.
--
Üdv!
Szabó Dénes

:: InterNode Bt. :: http://internode.hu ::
:: Contact = ICQ: 13486370 || Mobil: 20/9739423 || Skype: d.taylor ::
Auth Gábor
2004-08-07 18:49:45 UTC
Permalink
Halihó!
Post by Szabó Dénes
Post by Auth Gábor
Linux esetén úgy tudom, hogy a chroot nem kap külön IP címet...
vagy igen?
Nem tudom, gondolom, lehetne neki adni. Bar, nem latom at, h. az miert
is jo.
Mert akkor a jail-ben root jogokkal bűvészkedő felhasználó esetleg olyan
IP-re mászik rá, amire nem kellene. Mert sok olyan jail van, amelyet más
tart karban, tesz fel programokat, frissít, beállít.
Post by Szabó Dénes
Post by Auth Gábor
Tehát például egy jail esetén egy teljes alrendszert készítek, majd
kiadom a
# jail /usr/local/jails/USERNAME/ user.domain.hu 1.2.3.4 /bin/sh
En a pam_chroot-tal csinaltam. Van egy jail konyvtar, ami apt-get-tel
frissitheto. A minimal csomagok vannak ott, + juzerek.
Naja... kb ugyanez... :)
Post by Szabó Dénes
Post by Auth Gábor
parancsot, és innentől a ,,börtönben'' dolgozok, és csak a megadott
IP-t látom, minden program arra mászik fel.
Nalam nem futtat semmit, ami felmaszik, mert nem lat semmit. Felmasolja
a cuccait, es a jailba az apache benyul a virthostokkal. A php safe
modban, es az open basedir-el is a juzer sajat dir-jere van korlatozva.
Akkor nem arról beszélünk. Itt a jail-ben fut minden program. Semmi nem
nyúl be, ha kell, akkor IP-to-IP kapcsolódnak a szolgáltatások, nem fájl
alapok.
Post by Szabó Dénes
Egesz jo. De: nem juzerenkent van jail, hanem a juzerek egy kozos
jail-ben. A jail most ~200M. De van benn a juzereknek mindenfele
proggi: tar, bzip, mc, vim, miegymas.
Kulon juzerenkent innentol nem lenne sokkal macerasabb megcsinalni.
Csak sok helyet visz el, es karbantarani is too melo.
A meló a felhasználóé, mint mondottam, root joga van jail-en belül.
Semmi közöm hozzá, hogy mit csinál, akkor szoktam a körmére nézni, ha
terhelést okoz.
--
http://www.enaplo.hu - Iskolai Információs Rendszer
Auth Gábor -=- +36-70/312-1856 -=- ICQ: 49179141
Szabó Dénes
2004-08-07 20:10:02 UTC
Permalink
Szia!
Post by Auth Gábor
Mert akkor a jail-ben root jogokkal bűvészkedő felhasználó esetleg
olyan IP-re mászik rá, amire nem kellene. Mert sok olyan jail van,
amelyet más tart karban, tesz fel programokat, frissít, beállít.
Jailben nincs root. Nincs is mit megszereznie.

De, ahogy leirtad alabb, valoszinu, nem ua. hasznaljuk a rendszerunket.
Post by Auth Gábor
Akkor nem arról beszélünk. Itt a jail-ben fut minden program. Semmi
nem nyúl be, ha kell, akkor IP-to-IP kapcsolódnak a szolgáltatások,
nem fájl alapok.
Nekem pont forditva. A juzer van jail-ben. a home-jaban
(/home/jail/home/juzer/) van egy webroot-ja. Az a virt. hostjanak a
gyokere.

Az apache a jail-en kivul fut. A juzer nem is latja.
--
Üdv!
Szabó Dénes

:: InterNode Bt. :: http://internode.hu ::
:: Contact = ICQ: 13486370 || Mobil: 20/9739423 || Skype: d.taylor ::
Auth Gábor
2004-08-08 07:41:47 UTC
Permalink
Halihó!
Post by Szabó Dénes
Post by Auth Gábor
Mert akkor a jail-ben root jogokkal bűvészkedő felhasználó esetleg
olyan IP-re mászik rá, amire nem kellene. Mert sok olyan jail van,
amelyet más tart karban, tesz fel programokat, frissít, beállít.
Jailben nincs root. Nincs is mit megszereznie.
A chroot-ban nincs root... :)
Jail-ben lehet. Minden olyan tevékenységet meg tud tenni a jail-ben lévő
root, amit egyébként meg tud tenni, kivéve, hogy nem léphet ki és csak
azt az IP-t látja, amit kapott. Bármit megtehet, telepíthet, frissíthet,
letörölhet mindent, felhasználókat adhat hozzá, domain-t hozhat létre,
stb. Ezeket a jail-eket arra használom, amikor az ügyfél nem akar saját
hardvert fenntartani szerver célokra, viszont kevés neki az a
szolgáltatás, amit általában webszolgáltatásként nyújtanak.
Post by Szabó Dénes
Post by Auth Gábor
Akkor nem arról beszélünk. Itt a jail-ben fut minden program. Semmi
nem nyúl be, ha kell, akkor IP-to-IP kapcsolódnak a szolgáltatások,
nem fájl alapok.
Nekem pont forditva. A juzer van jail-ben. a home-jaban
(/home/jail/home/juzer/) van egy webroot-ja. Az a virt. hostjanak a
gyokere. Az apache a jail-en kivul fut. A juzer nem is latja.
Akkor ez a megoldásod abszolút nem jó arra, amiről a thread szól. A nála
beolvasott php kód lazán okozhat problémát egy másik felhasználó
könyvtárában, hiába van safe_mode. Ha nincs safe_mode, akkor főleg.
--
http://www.enaplo.hu - Iskolai Információs Rendszer
Auth Gábor -=- +36-70/312-1856 -=- ICQ: 49179141
KORN Andras
2004-08-07 18:53:18 UTC
Permalink
Post by Auth Gábor
Linux esetén úgy tudom, hogy a chroot nem kap külön IP címet... vagy
igen?
Lehet olyat csinalni (virtual server contexts a kulcsszo, ha jol remlik).
Ugy tunik, a 2.6-ban mar benne van; a 2.4-et patchelni kellett hozza.

Guy
--
Andras Korn <korn at chardonnay.math.bme.hu>
<http://chardonnay.math.bme.hu/~korn/> QOTD:
A computer's attention span is as long as it's power cord.
Szabó Dénes
2004-08-07 17:44:30 UTC
Permalink
Szia!
Post by Sickboy
Post by Szabó Dénes
Szia!
Post by Sickboy
(A php safemode is jo akkor, ha az ember 1 percet akar a problemara
szanni. (Es annyit is er.) Ez egyebkent asszem anno reszletesen ki
lett fejtve.)
Foleg ez a resz erdekelne, h. miert is.
Atneztem a leveleket. Igazabol sok ervet nem talaltam a safe_mode ellen.

Egyedul toled volt, h. hasznalhatatlan, mert nem ment az upload.

Ez egyreszt megy safe_mode-ban (move_uploaded_files, bar, szerintem
bugos, nem ugy mux. mint a doksiban le van irva. safe_mode_gid-ben
mukodik)
Post by Sickboy
Alapvetoen azert, mert a PHP onmagaval szemben nem ved. A php maga
nem az a pont a rendszerben, ahova a "hatarvonal" megvalositasa valo.
Masreszt ha felvesszuk az igenyek koze azt, hogy egy website esetleg
_sajat_ programokat is akar exec-elni phpbol, maris meghalt a
safemode OSSZES vedelme.
Marpedig pl nalam ez elvaras.
Igen. De virt hostonkent lehet be/ki kapcsolni. Virt. hostokra lehet
save_mode_exec_dir-t tenni (+ open_basedir). Mast nem futtathatnak,
mint a convert-et. Aztan csok.

Csak az a file-t tudjak elerni, ami a sajat tulajdonuk. Csak az
open_basedirben lekorlatozott dir-bol. Innentol majdhogynem chrootkent
mukodik a php futtatasa.

Nem tudok rola, lehet h. meg lehet kerulni a safe_mode/open basedir
vedelmet. De a php-bol is jonnek ki a folyamatos kiadasok, frissitesek.
Miden sw-ben van bug, ami csak teszteles alatt jon ki. Innentol az rg
feladata, h. milyen up-to-date rendszert tart fenn.
Post by Sickboy
Tovabba mint az elozo levelben irtam, a PHP messze nem az egyetlen
futtathato dolog, amit nyujtani szeretnenk, es a tobbire,
ertelemszeruen, nem megoldas.
Igy van. a mod_python, vagy mod_perl-ben van hasonlo dolog? Ha nincs,
akkor maskeppen kell megoldani.
Post by Sickboy
Ha elfogadhato az, hogy a szolgaltato azt mondja, hogy "igen, ez egy
letezo php (vagy eppenseggel x,y,z) feature, de nalunk ez nem megy
security miatt" (amely helyzetbe egyebkent akar cgi-s phpvel, akar
safemode-al kerul az ember), es csak php van (es az apache is erosen
le van lockolva, .htaccess stb. nincs, de pl ez utobbi is esetlegesen
elvarhato/szukseges funkcionalitast vesz el) akkor er valamit a
safemode.
Ha a virt. hostban php_admin_flag, ill. php_admin_value-t teszel, akkor
az a htaccessben mar nem biralhato felul (tudomasom szerint, teszek egy
probat). Innentol a juzer nem tud kilepni a safe_mode-bol, ellenben tud
jelszoval vedett konyvtarat csinalni.

Szal, szerintem, ez mukodik.
Post by Sickboy
Szamomra ezek a megkotesek egyreszt nem elfogadhatok, masreszt ezek
azok a kompromisszumok, amikrol beszeltem.
En szerintem nincsenek megkotesek.
Post by Sickboy
Tovabbi gyakorlatkent erdemes megnezni a sourceforge-on elerheto
ingyenes php hekkware-k nepszeruseget, valamint hogy ezeknek mekkora
Figy: oszinten, ez érv? A php ellen, h. sok a ganyolt proggi?

hat nem. Nem kell hasznalni, es kesz. Illetve, ami van, azt jol kell
megirni.

Gondolom C-ben is ua. gyan programot lehet talalni... Nem a nyelvtol
fugg, h. valaki tud-e rendes programot irni, vagy sem.

A php programok jonagy reszenek biztonsagi lyukai automatikusan
megjavulnanak az open_basedir beallitasaval. (linux.hu feltores)
Post by Sickboy
hanyada mukodik safemode-ban (->0). Tudom, hogy ilyet normalis ember
nem hasznal, de most nem egy olyan szerverrol beszelunk, amin a sajat
A free php programok joresze mysql-t hasznal. Elenyeszo mennyisegnel van
index a tablakon. Akkor ez a mysql-t minositi, vagy a programozot?
--
Üdv!
Szabó Dénes

:: InterNode Bt. :: http://internode.hu ::
:: Contact = ICQ: 13486370 || Mobil: 20/9739423 || Skype: d.taylor ::
KORN Andras
2004-08-07 18:59:02 UTC
Permalink
Post by Szabó Dénes
Atneztem a leveleket. Igazabol sok ervet nem talaltam a safe_mode ellen.
Erdemes elolvasni a phps gallery projekt dokumentacioja kornyeken fellelheto
szosszenetet a safe_mode-rol. Sajnos nem tegnap olvastam, de az alapveto
uzenete az, hogy a php tervezoi szerint a safe_mode-dal az a legnagyobb baj,
hogy az emberek hasznaljak es biztonsagot varnak tole. Szeretnek ezt
megszuntetni, mert szerintuk se a php az a reteg, ahova a biztonsag valo.
Post by Szabó Dénes
Nem tudok rola, lehet h. meg lehet kerulni a safe_mode/open basedir
vedelmet. De a php-bol is jonnek ki a folyamatos kiadasok, frissitesek.
Miden sw-ben van bug, ami csak teszteles alatt jon ki. Innentol az rg
feladata, h. milyen up-to-date rendszert tart fenn.
Szerintem a phpban ezen a kornyeken rengeteg, eddig ismeretlen sechole van
meg, mert nem arra terveztek, hogy biztonsagot nyujtson. Mindenkeppen
tisztabb egy olyan megoldas, ami a) nem php-specifikus es b) teljesen
kozombos a szamara, milyen sechole van a php-ban.
Post by Szabó Dénes
Post by Sickboy
Tovabba mint az elozo levelben irtam, a PHP messze nem az egyetlen
futtathato dolog, amit nyujtani szeretnenk, es a tobbire,
ertelemszeruen, nem megoldas.
Igy van. a mod_python, vagy mod_perl-ben van hasonlo dolog? Ha nincs,
akkor maskeppen kell megoldani.
Ha viszont ezek is kellenek, meg php is, akkor mar eleve maskeppen kell
megoldani.
Post by Szabó Dénes
Post by Sickboy
Tovabbi gyakorlatkent erdemes megnezni a sourceforge-on elerheto
ingyenes php hekkware-k nepszeruseget, valamint hogy ezeknek mekkora
Figy: oszinten, ez érv? A php ellen, h. sok a ganyolt proggi?
Nem a php, hanem a safe_mode ellen. Ti. a nepszeru cuccok (pl. a gallery)
nem mennek safe_mode-ban.
Post by Szabó Dénes
Post by Sickboy
hanyada mukodik safemode-ban (->0). Tudom, hogy ilyet normalis ember
nem hasznal, de most nem egy olyan szerverrol beszelunk, amin a sajat
A free php programok joresze mysql-t hasznal. Elenyeszo mennyisegnel van
index a tablakon. Akkor ez a mysql-t minositi, vagy a programozot?
Mindegy hogy kit minosit, mert nem az a problema, hogy valaki minositve van,
hanem az, hogy az uzemeltetot mindez kompromisszumokra kenyszeriti.

Guy
--
Andras Korn <korn at chardonnay.math.bme.hu>
<http://chardonnay.math.bme.hu/~korn/> QOTD:
I think, therefore I am overqualified.
Szabó Dénes
2004-08-07 20:29:08 UTC
Permalink
Szia!
Post by KORN Andras
Post by Szabó Dénes
Atneztem a leveleket. Igazabol sok ervet nem talaltam a safe_mode ellen.
Erdemes elolvasni a phps gallery projekt dokumentacioja kornyeken
fellelheto szosszenetet a safe_mode-rol. Sajnos nem tegnap olvastam,
de az alapveto uzenete az, hogy a php tervezoi szerint a
safe_mode-dal az a legnagyobb baj, hogy az emberek hasznaljak es
biztonsagot varnak tole. Szeretnek ezt megszuntetni, mert szerintuk
se a php az a reteg, ahova a biztonsag valo.
Ertem. Ez igaz lehet. A safe mode csak annyit csinal, h. ha egy script a
donci tulaju, akkor az csak donci tulaju file-okat erhet el. Azt meg
kell oldani, h. root tulaju php script ne lehessen. Bar, lehet, h. az
azert nem engedne. Nem tudom.
Post by KORN Andras
Post by Szabó Dénes
Nem tudok rola, lehet h. meg lehet kerulni a safe_mode/open basedir
vedelmet. De a php-bol is jonnek ki a folyamatos kiadasok,
frissitesek. Miden sw-ben van bug, ami csak teszteles alatt jon ki.
Innentol az rg feladata, h. milyen up-to-date rendszert tart fenn.
Szerintem a phpban ezen a kornyeken rengeteg, eddig ismeretlen
sechole van meg, mert nem arra terveztek, hogy biztonsagot nyujtson.
Valoszinu. Bar, ezen az alapon miben nincs? :)
Post by KORN Andras
Mindenkeppen tisztabb egy olyan megoldas, ami a) nem php-specifikus
es b) teljesen kozombos a szamara, milyen sechole van a php-ban.
Akkor mi lenne a megoldas?

Minden virt. szervernek kulon apache sajat jail-el, userrel? Marhara
eroforras pazarlo, szerintem. Illetve a karbantarthatosaga is ketseges.
Nem 2 site-nal, hanem soknal.

Az apache2 mar tud olyat, h. a beallitott juzerkent futtat dolgokat, de
azt csak cgi modon tudja, emlekeim szerint.

Akkor mi a megoldas?
Post by KORN Andras
Post by Szabó Dénes
Figy: oszinten, ez érv? A php ellen, h. sok a ganyolt proggi?
Nem a php, hanem a safe_mode ellen. Ti. a nepszeru cuccok (pl. a
gallery) nem mennek safe_mode-ban.
Mondjuk en programozok phpben eleg aktivan. De meg sosem lattam
hatranyat a safe mode-nak. Nem ertem, miert kellhet valakinek mas
owner-u file-okat megnyitnia...

(talaltam a gallery (http://gallery.menalto.com/ ???) oldalon nehany
leirast, de tul sok mindent nem)
Post by KORN Andras
Mindegy hogy kit minosit, mert nem az a problema, hogy valaki
minositve van, hanem az, hogy az uzemeltetot mindez kompromisszumokra
kenyszeriti.
Oke. Akkor ott tartunk:

safe_mode teljesen szar. Apache nem tudja, amit kellene.

Marad a jail virt. hostonkent?
--
Üdv!
Szabó Dénes

:: InterNode Bt. :: http://internode.hu ::
:: Contact = ICQ: 13486370 || Mobil: 20/9739423 || Skype: d.taylor ::
Sickboy
2004-08-07 23:14:55 UTC
Permalink
Post by Szabó Dénes
Post by KORN Andras
Erdemes elolvasni a phps gallery projekt dokumentacioja kornyeken
fellelheto szosszenetet a safe_mode-rol. Sajnos nem tegnap olvastam,
de az alapveto uzenete az, hogy a php tervezoi szerint a
safe_mode-dal az a legnagyobb baj, hogy az emberek hasznaljak es
biztonsagot varnak tole. Szeretnek ezt megszuntetni, mert szerintuk
se a php az a reteg, ahova a biztonsag valo.
Ertem. Ez igaz lehet. A safe mode csak annyit csinal, h. ha egy script a
donci tulaju, akkor az csak donci tulaju file-okat erhet el. Azt meg
kell oldani, h. root tulaju php script ne lehessen. Bar, lehet, h. az
azert nem engedne. Nem tudom.
Total nem ez a problema. A rendszer elnagyoltan kb igy epul fel:

kernel
|
libek
|
apache
|
php
|
(php-safemode)

Ez egy lanc, amelyben a szeparalasi szinten vagy felette barmelyik lancszem
meghibasodasa eseten borul a szeparalodas. Barmilyen megoldas, ami nem kernel
szinten szeparal, az kevesbe biztonsagos, mint egy kernel szintjen torteno
szeparalas (ez default esetben minimum kulon uid-kent futas, ezt lehet spekelni
jailekkel, ACL rendszerekkel, stb.) , egy legalso lancszemben megvalositott
szeparalas pedig a legkevesbe biztonsagos. Ehhez hozzajon az, hogy akik
konkretan ezt csinaltak, maguk sem javasoljak, pont ezert.

De ez ertheto is, mod_php eseteben a processz mindenkepp www-data neveben fut,
tehat a kernel SEMMIFELE restrikciot nem alkalmaz az egyes vhostok kozott,
hiszen mindenikhez tartozo phpk www-data neveben futnak.
Az, hogy valahol a php open megvalositasan belul van egy

if ( file_owner != phpscript_owner )
{
nemengedem;
}
else
{
engedem;
}

edeskeves. Gondoljunk a sok bovito modulra, amik tmp (vagy kitudja milyen)
fileokkal manipulalnak, emlekezzunk a mail() fv a sendmailt hivja parameterekkel
es bele lehetett csempeszni shell kodokat (igy megkerulni safemodet), kitudja
hany ilyesmi van meg, aminek SEMMI KOZE a php open-jehez, mert nem azon megy
keresztul.

Tehat kell egy masik megoldas. Ez volt az, amit elso levelemben leirtam.
Post by Szabó Dénes
Post by KORN Andras
Mindenkeppen tisztabb egy olyan megoldas, ami a) nem php-specifikus
es b) teljesen kozombos a szamara, milyen sechole van a php-ban.
Akkor mi lenne a megoldas?
Minden virt. szervernek kulon apache sajat jail-el, userrel? Marhara
eroforras pazarlo, szerintem. Illetve a karbantarthatosaga is ketseges.
Nem 2 site-nal, hanem soknal.
Az biztos, hogy kulon userkent kell futtatni minden vhostot, ez a minimum,
hiszem kernel szintu szeparalast akarunk. A jail/chroot az a kovetkezo szint.
(Hatar a csillagos eg.)
Post by Szabó Dénes
Az apache2 mar tud olyat, h. a beallitott juzerkent futtat dolgokat, de
azt csak cgi modon tudja, emlekeim szerint.
Errol mar volt szo, hogy van mod_php apache2 perchild mpm-mel is, de csak
threades, de az problemas, es nem mondom tovabb megint, lasd korabbi levelek.
Post by Szabó Dénes
Akkor mi a megoldas?
Ezt mondom. Azaz ezt kerdezem. (De ettol meg a safemode nem JO megoldas,
legfeljebb egyelore "tobb a semminel". Csakhogy ez a kicsi, amivel tobb, ez meg
nekem keves ahhoz kepest, hogy pl a Gallery nem megy vele.)

Valaki irta, hogy nem csak linuxban kellene gondolkozni. Varom az iranymutatast
ebben az iranyban (is).
Post by Szabó Dénes
safe_mode teljesen szar. Apache nem tudja, amit kellene.
Safemode nem a jarando ut. Tobb a semminel, de nem arra kell tovabbhaladni.
Talan apache tudhatna (mint korabban irtam), egy masik mpm-mel...


.SiCk of IT.
Sickboy
2004-08-07 20:50:15 UTC
Permalink
Post by Szabó Dénes
Post by Sickboy
Alapvetoen azert, mert a PHP onmagaval szemben nem ved. A php maga
nem az a pont a rendszerben, ahova a "hatarvonal" megvalositasa valo.
Masreszt ha felvesszuk az igenyek koze azt, hogy egy website esetleg
_sajat_ programokat is akar exec-elni phpbol, maris meghalt a
safemode OSSZES vedelme.
Marpedig pl nalam ez elvaras.
Igen. De virt hostonkent lehet be/ki kapcsolni. Virt. hostokra lehet
save_mode_exec_dir-t tenni (+ open_basedir). Mast nem futtathatnak,
mint a convert-et. Aztan csok.
Tehat magyarul meg kell biznod az altaluk felrakott programokban, ahhoz, hogy a
vedelem erjen valamit. Ha egy ilyen progi borul => www-data neveben arbitrary
code execution, php safe mode ugy ahogy van ki van kerulve.
Ez nem elfogadhato. Vagy hat ez vegulis szubjektiv dolog, hogy kinek mi
elfogadhato, de mindenesetre egyerteluen alacsonyabb szintu vedelem, mint ha
kulon uid-del futnanak a dolgok es kernel szinten nem tudna mas uid-hez tartozo
fileokkal eleve semmit csinalni.
Post by Szabó Dénes
Nem tudok rola, lehet h. meg lehet kerulni a safe_mode/open basedir
vedelmet. De a php-bol is jonnek ki a folyamatos kiadasok, frissitesek.
Miden sw-ben van bug, ami csak teszteles alatt jon ki. Innentol az rg
feladata, h. milyen up-to-date rendszert tart fenn.
Ez pedig a kovetkezo problemam a "legvegso vonalba" telepitett vedelemmel.
Kernel szintu korlatozasokra epulo szeparalas eseten LENYEGTELEN, hogy milyen
gyakran van php/apache/tetszoleges-modul bug. (A kernel bug pedig minden esetben
jatszik ugye, ugyhogy a safemode itt apache+php bugokkal gyakrabban lyukad ki.
A php meg nem a biztonsagarol hires.)
Post by Szabó Dénes
Post by Sickboy
Tovabba mint az elozo levelben irtam, a PHP messze nem az egyetlen
futtathato dolog, amit nyujtani szeretnenk, es a tobbire,
ertelemszeruen, nem megoldas.
Igy van. a mod_python, vagy mod_perl-ben van hasonlo dolog? Ha nincs,
akkor maskeppen kell megoldani.
Nincs, maskeppen kell megoldani. (Egy alalanos, magasabb szintu megoldassal, ami
viszont akkor mar a php eseteben is alkalmazhato, es a safemodenal a fent
felsorolt szempontokbol erosebb.)
Post by Szabó Dénes
Post by Sickboy
Ha elfogadhato az, hogy a szolgaltato azt mondja, hogy "igen, ez egy
letezo php (vagy eppenseggel x,y,z) feature, de nalunk ez nem megy
security miatt" (amely helyzetbe egyebkent akar cgi-s phpvel, akar
safemode-al kerul az ember), es csak php van (es az apache is erosen
le van lockolva, .htaccess stb. nincs, de pl ez utobbi is esetlegesen
elvarhato/szukseges funkcionalitast vesz el) akkor er valamit a
safemode.
Ha a virt. hostban php_admin_flag, ill. php_admin_value-t teszel, akkor
az a htaccessben mar nem biralhato felul (tudomasom szerint, teszek egy
probat). Innentol a juzer nem tud kilepni a safe_mode-bol, ellenben tud
jelszoval vedett konyvtarat csinalni.
Szal, szerintem, ez mukodik.
Ez, eppenseggel, lehet. (Emlekeim szerint az apache configban a htaccess-bol
allithato dolgok engedelyezese/tiltasa nem volt annyira finoman szabalyozhato,
azaz nagyok voltak a halmazok.)
De nem is ez volt a fo problema.
A gond az, hogy a safemode phpben nem default, es csomo sw-t nem ugy irnak meg,
hogy a megkotesivel egyuttmukodik. Ezzel nem tudsz mit kezdeni, ez igy van.
Ez lehet egy x ugyfel sajat website-ja, vagy valami szelesebb korben elterjedt
ingyenware, de tokmind1 is, hogy mi.
Post by Szabó Dénes
Post by Sickboy
Szamomra ezek a megkotesek egyreszt nem elfogadhatok, masreszt ezek
azok a kompromisszumok, amikrol beszeltem.
En szerintem nincsenek megkotesek.
Rendben, akkor a te celjaidra megfelel a safemode. Ezt irtam fent.
Post by Szabó Dénes
Post by Sickboy
Tovabbi gyakorlatkent erdemes megnezni a sourceforge-on elerheto
ingyenes php hekkware-k nepszeruseget, valamint hogy ezeknek mekkora
hanyada mukodik safemode-ban (->0).
Figy: oszinten, ez érv? A php ellen, h. sok a ganyolt proggi?
PHP ellen? Elkanyarodtunk, nem errol van szo.

A lenyeg az, hogy egy CSOMO php kod nem megy safemodeban. Ennyi.
Ez egyike az altalam nem elfogadhato megkotesnek nevezett dolgoknak.

A masik meg hogy nem a php ellen beszelek, hanem egy, a felhasznalok "magas"
(kernel?) szintu szeparalasara alkalmas altalanos megoldas hianyarol.

Ismet leirom: a lanc legvegere beepitett vedelem _szerintem_ gyenge, _nekem_ nem
felel meg.
Az, hogy _konkretan_ a php-ben levo safemode _ezen kivul_ (hogy eleve
koncepcionalisan nem elfogadhato) meg egy csomo olyan megkotest is tartalmaz,
amivel egy csomo (mar megirt, vagy ezutan megirasra kerulo, de safemodet
figyelembe nem vevo) sw nem mukodik, egy tovabbi problemam a safemode-al. (De
mondom, nem ez az elsodleges.)
Post by Szabó Dénes
A free php programok joresze mysql-t hasznal. Elenyeszo mennyisegnel van
index a tablakon. Akkor ez a mysql-t minositi, vagy a programozot?
Nyilvan ezek a programok szarok, de akkor ki kell irnod a szerveredre, hogy
"szar programokat nem hostolok". (Az a baj, hogy amit mar irtam, azt ismetlem.)

Egyebkent a felvetett problema jogos, de ez csak alatamasztja a felhasznalok
szeparalasanak szuksegesseget processzorhasznalat szintjen is, csakhogy persze
mysql-en belul ezt hogy lehet megvalositani? ;)


.SiCk of IT.
Papp Tamas
2004-08-07 13:20:58 UTC
Permalink
Post by Sickboy
Kar, hogy a mai oprendszerek nem ugy lettek kialakitva, hogy ezt egyszeru
legyen megcsinalni. Agyonpatchelt kernellel, es hosszadalmas
szabalyrendszer felallitassal talan meg lehet kozeliteni. (Egy probalkozas
erre a "futasra kesz" projektjeim kozott van, de meg nem kerult sorra. ;)
(De pl per-user memlimit meg mindig nincs linuxban.)
Kar, hogy ma a legtobb embernel oprendszer = linux.

tompos
Sickboy
2004-08-07 20:54:24 UTC
Permalink
Post by Papp Tamas
Post by Sickboy
Kar, hogy a mai oprendszerek nem ugy lettek kialakitva, hogy ezt egyszeru
legyen megcsinalni.
Kar, hogy ma a legtobb embernel oprendszer = linux.
Valoban nem ismerek mindent. Tudtommal Solaris10ben van ehhez (szeparalas)
komolyabb tamogatas (de solaris nem opensource, es pizbe is kerul).
Ha BSD-re gondoltal, ott nem tudok peruser memlimitrol, es peruser
processzorlimitrol sem (mellesleg utobbirol solarison sem, de ebben tevedhetek).
Linuxhoz pl van peruser processzorlimit.


.SiCk of IT.
Auth Gábor
2004-08-08 07:48:49 UTC
Permalink
Halihó!
Post by Sickboy
Post by Papp Tamas
Kar, hogy ma a legtobb embernel oprendszer = linux.
Valoban nem ismerek mindent. Tudtommal Solaris10ben van ehhez
(szeparalas) komolyabb tamogatas (de solaris nem opensource, es pizbe
is kerul). Ha BSD-re gondoltal, ott nem tudok peruser memlimitrol, es
peruser processzorlimitrol sem (mellesleg utobbirol solarison sem, de
ebben tevedhetek). Linuxhoz pl van peruser processzorlimit.
Azért érdemes megnézni a MAC részét a FreeBSD-nek. A Handbook-ban
találod meg:
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/mac.html
--
http://www.enaplo.hu - Iskolai Információs Rendszer
Auth Gábor -=- +36-70/312-1856 -=- ICQ: 49179141
Sickboy
2004-08-08 11:36:54 UTC
Permalink
Post by Auth Gábor
Azért érdemes megnézni a MAC részét a FreeBSD-nek. A Handbook-ban
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/mac.html
Ez derek.
De ez a linuxhoz elerheto MAC megvalositasokkal egy kategoria, peruser resource
limitekhez semmi kozet nem latom.
--
.SiCk of IT.
Auth Gábor
2004-08-08 17:24:19 UTC
Permalink
Halihó!
Post by Sickboy
Post by Auth Gábor
Azért érdemes megnézni a MAC részét a FreeBSD-nek. A Handbook-ban
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/mac.html
Ez derek.
De ez a linuxhoz elerheto MAC megvalositasokkal egy kategoria, peruser
resource limitekhez semmi kozet nem latom.
Itt vannak a korlátozások (van közte memóriára is korlátozás):
insecure:\
:copyright=/etc/COPYRIGHT:\
:welcome=/etc/motd:\
:setenv=MAIL=/var/mail/$,BLOCKSIZE=K:\
:path=~/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
:manpath=/usr/share/man /usr/local/man:\
:nologin=/usr/sbin/nologin:\
:cputime=1h30m:\
:datasize=8M:\
:vmemoryuse=100M:\
:stacksize=2M:\
:memorylocked=4M:\
:memoryuse=8M:\
:filesize=8M:\
:coredumpsize=8M:\
:openfiles=24:\
:maxproc=32:\
:priority=0:\
:requirehome:\
:passwordtime=91d:\
:umask=022:\
:ignoretime@:\
:label=partition/13,mls/5:
--
http://www.enaplo.hu - Iskolai Információs Rendszer
Auth Gábor -=- +36-70/312-1856 -=- ICQ: 49179141
Sickboy
2004-08-08 19:29:40 UTC
Permalink
Post by Sickboy
Post by Auth Gábor
Azért érdemes megnézni a MAC részét a FreeBSD-nek. A Handbook-ban
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/mac.html
Ez derek.
De ez a linuxhoz elerheto MAC megvalositasokkal egy kategoria, peruser
resource limitekhez semmi kozet nem latom.
Ezek a szokasos (ulimit) _perprocess_ limitek, amik 1 user minden processzere
_kulon_ ervenyesek. Peruser memlimit alatt azt ertem, hogy 1 user osszes
processze egyutt x MB-t foglalhat max. (Es nem ugy, hogy processzek max szama n
es minden processz max mem x, es akkor n*x a limit, mert ez vagy ertelmetlenul
magas lesz vagy hasznalhatatlanul alacsony. Tehat pl egy 90MB-s meg egy 10MB-s
processz mellett mar ne engedjen egyetlen byte-ot sem lefoglalni, de ugyanakkor
masik esetben lehessen mondjuk 100db 1MB-s. Ezt ezzel a megvalositassal
lehetetlen elerni.)

Ugyanez processzoridore (fair scheduling) userek kozott, tehat akinek 100
processze van, ez a 100 egyutt annyi prociidot kapjon, mint egy masik user egy
processze (ha annak csak egy processze fut).


.SiCk of IT.
Andras Kis-Szabo
2004-08-11 12:58:54 UTC
Permalink
Hali!
Post by Sickboy
Post by Papp Tamas
Post by Sickboy
Kar, hogy a mai oprendszerek nem ugy lettek kialakitva, hogy ezt egyszeru
legyen megcsinalni.
Kar, hogy ma a legtobb embernel oprendszer = linux.
Valoban nem ismerek mindent. Tudtommal Solaris10ben van ehhez (szeparalas)
komolyabb tamogatas (de solaris nem opensource, es pizbe is kerul).
A Solaris10 partícionálás kb olyan lesz mint a VMware rendszerek, csak
SPARC/Solairs felületre.
Ilyen felosztás már régóta elérhető VMware segítségével, s akkor még az
uptime-mal se lesz gond, hiszen a szolgáltatás leállítása nélkül is
módosíthatod a hardvert (megfelelően nagy rendszer esetén).

Üdv

kisza
--
Andras Kis-Szabo <***@securityaudit.hu>
Sickboy
2004-08-11 16:15:59 UTC
Permalink
Post by Andras Kis-Szabo
Post by Sickboy
Post by Papp Tamas
Post by Sickboy
Kar, hogy a mai oprendszerek nem ugy lettek kialakitva, hogy ezt egyszeru
legyen megcsinalni.
Kar, hogy ma a legtobb embernel oprendszer = linux.
Valoban nem ismerek mindent. Tudtommal Solaris10ben van ehhez (szeparalas)
komolyabb tamogatas (de solaris nem opensource, es pizbe is kerul).
A Solaris10 partícionálás kb olyan lesz mint a VMware rendszerek, csak
SPARC/Solairs felületre.
Akkor viszont ez sem lightweight.
Persze masra jo lehet attol meg.


.SiCk of IT.
Gábor Lénárt
2004-08-11 18:22:33 UTC
Permalink
Post by Sickboy
Post by Andras Kis-Szabo
A Solaris10 partícionálás kb olyan lesz mint a VMware rendszerek, csak
SPARC/Solairs felületre.
Akkor viszont ez sem lightweight.
Persze masra jo lehet attol meg.
Na persze azert van itt meg egy fontos dolog: ha Sparc/Solaris-rol
beszelunk (elfelejtve most egy pillanatra az x86/Solaris-t), akkor
figyelembe kell venni hogy az x86 CPU-k nem teljesen virtualizalhatoak
by design, ezert is nehezkes a muvelet. Ugyanakkor lehet hogy a Sparc az.
Bar ezt NEM tudom a Sparc eseten szoval nem tippelgetek, csak hatha valaki
tudja.

Plusz a vmware azert se jo pelda mert ha konkretan egy OS-rol van szo
(vmware ala sok minden felteheto, tehat egy virtualis gep hw-el),
akkor lehet hogy pl a "mint az UML Linuxon" jobb pelda lenne.

Persze mondom ezt ugy hogy mint emlitettem nem sokat tudok a dologrol ;-)


- Gábor (larta'H)
Szabó Dénes
2004-10-14 19:48:17 UTC
Permalink
Szia!
Post by Imre Gergely
van vmi jo anyag a weben $SUBJECT-re?
vagy tudnatok adni valami jo tippeket, hogy tehetek biztonsagos(abb)a
egy szervert, amin tobb website van host-olva, egy darab apache
szerver, php-val es mysql-el felszerelve.
Bocs, h. ujra belekezdek egy regi szalba, de most talaltam ezt a linket:

http://www.suphp.org/Home.html
suPHP is a tool for executing PHP scripts with the permissions of their
owners. It consists of an Apache module (mod_suphp) and a setuid root
binary (suphp) that is called by the Apache module to change the uid of
the process executing the PHP interpreter.

Valakinek errol a programrol tapasztalata? Velemenyek?
--
Üdv!
Szabó Dénes

:: InterNode Bt. :: http://internode.hu ::
:: Contact = ICQ: 13486370 || Mobil: 20/9739423 || Skype: d.taylor ::
KORN Andras
2004-10-15 19:39:30 UTC
Permalink
Post by Szabó Dénes
Post by Imre Gergely
van vmi jo anyag a weben $SUBJECT-re?
vagy tudnatok adni valami jo tippeket, hogy tehetek biztonsagos(abb)a
egy szervert, amin tobb website van host-olva, egy darab apache
szerver, php-val es mysql-el felszerelve.
http://www.suphp.org/Home.html
suPHP is a tool for executing PHP scripts with the permissions of their
owners. It consists of an Apache module (mod_suphp) and a setuid root
binary (suphp) that is called by the Apache module to change the uid of
the process executing the PHP interpreter.
Valakinek errol a programrol tapasztalata? Velemenyek?
Igy ranezesre nem nyilvanvalo, mennyivel jobb ez, mint a suexec es a
cgi-kent futo php-k.

Guy
--
Andras Korn <korn at chardonnay.math.bme.hu>
<http://chardonnay.math.bme.hu/~korn/> QOTD:
I'd give my right arm to be ambidextrous.
Sickboy
2004-10-16 18:29:16 UTC
Permalink
Post by KORN Andras
Post by Szabó Dénes
http://www.suphp.org/Home.html
Velemenyek?
Igy ranezesre nem nyilvanvalo, mennyivel jobb ez, mint a suexec es a
cgi-kent futo php-k.
http://www.suphp.org/FAQ.html

----
Why do my scripts not work and why do I get an "Premature end of script
headers" in the error_log?

You probably have installed the CLI version of PHP, but you need the CGI
version. Copy the file /build/path/sapi/cgi/php to
/where/ever/you/have/installed/bin/php to use the CGI version.
----

En inkabb azt kerdeznem, hogy mennyiben kulonbozik?
(Kb semmiben.)
Tehat valoszinuleg pont az(ok) vele a gond(ok), ami a cgi-s verzioval.
CGI-kent (setuid cgi wrapperrel) futtatott PHPvel eddig is mukodott az
UID/GID valtas.
--
.SiCk of IT.
Loading...