Portál AbcLinuxu, 12. května 2025 10:46

Dotaz: Omezeni shellu

19.2.2009 14:11 quiiicq | skóre: 5 | Žďár nad Sázavou
Omezeni shellu
Přečteno: 343×
Odpovědět | Admin

Zdravím,

Řeším problém jak si MAXIMÁLNĚ zabezpečit server.

Moji zživatelé mají shell ktery zakazuje vsechno krom vyjimek :-)

Jde o ty výjímky které skrz sebe dovolují spouštět další aplikace,čemuž chci zabránit.

Myslím například programy jako : mutt, irssi, vim, screen, centerim, atp .....

Nevíte jak tomuto zabránit ?

Děkuji

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

19.2.2009 14:18 Semo | skóre: 45 | blog: Semo
Rozbalit Rozbalit vše Re: Omezeni shellu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Maj /home, /tmp a /var/tmp namountovane s noexec. Nie je to uplne na co si sa pytal, ale zabezpeci ti to, ze nebudu spustat vlastny divoky soft iba ten, ktory si instaloval ty.
If you hold a Unix shell up to your ear, you can you hear the C.
19.2.2009 14:49 quiiicq | skóre: 5 | Žďár nad Sázavou
Rozbalit Rozbalit vše Re: Omezeni shellu

Hm, to to moc nevyřeší :-(

19.2.2009 14:55 l4m4
Rozbalit Rozbalit vše Re: Omezeni shellu
V podstatě jakémukoli interpretu (shell, awk, python, vim, metafont, ...) můžeš předat program, který má provést, jako nespustitelný soubor nebo i ze standardního vstupu. Možná se ti podaří zabezpečit všechny, ale nevím, co pak uživatelům zbude...
19.2.2009 15:04 quiiicq | skóre: 5 | Žďár nad Sázavou
Rozbalit Rozbalit vše Re: Omezeni shellu

Asi jsem vás trochu nepochopil.

Mám shell který dovolí uživateli vykonak jen mnou povolené příkazy, shell je tedy vyřešený.

Jde mi jen o ty programy které si uživatel spustí, například vim dovede ze sebe spustit další program.

Tomu chci zabránit.

19.2.2009 16:03 akomano | skóre: 16 | blog: Došiel čaj v kávomate | Malacky
Rozbalit Rozbalit vše Re: Omezeni shellu

No neviem či je to principiálne možné. Další program spustený povedzme cez ten vim je vlastne jeho fork a exec. Ako chceš tomu zabrániť ak zároveň majú fungovať programy, ktoré sa štandardne forkujú kvôli svojej primárnej funkčnosti?

Ja vim, on vi, a ty sed, nano!
19.2.2009 16:42 quiiicq | skóre: 5 | Žďár nad Sázavou
Rozbalit Rozbalit vše Re: Omezeni shellu

No nevim ktere programy se forkujou pro svojí funkčnost.

Ale tak snad by se to dalo udělat pro každý program / každého uživatele zvlášť.

Spíše mě napadlo udělat pro ty uživatelsky spustitelné programy vlastní skripty které by je omezovaly.

Jakože by se nespouštěl například vim ale vim.sh který by byl zabezpečený.

19.2.2009 17:28 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Omezeni shellu
Nestačilo by aplikacím které nesmí spouštět... prostě nedat právo executable? Ne že by se to nedalo taky obejít, ale pokud uvažujete o nějakém vim.sh :) tak tohle alespoň trochu něco omezuje.
Tarmaq avatar 19.2.2009 17:05 Tarmaq | skóre: 39
Rozbalit Rozbalit vše Re: Omezeni shellu
Odpovědět | | Sbalit | Link | Blokovat | Admin
A co nastavit spousteni tech skriptu jen pro vlastnika souboru? Nebo pro skupinu, do ktere ti uzivatele nebudou patrit?
$ ls -l
-rwxr--r-- 1 root   users 23 2009-02-19 16:55 test.sh
$ gvim
a v gvimu:
:!./test.sh
zsh: permision denied: ./test.sh

shell returned 126
Don't panic!
michich avatar 19.2.2009 17:40 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Omezeni shellu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Další možnost by byla s pomocí SELinuxu. Ten shell by běžel v SELinuxové doméně, která by měla povolen přechod jen do jedné další domény. Binárky těch vybraných programů by byly vstupními body do té druhé domény. A ta druhá doména by neměla povoleno právo execute vůbec. Navíc by se tak dalo specifikovat, na které porty se můžou připojovat apod.
19.2.2009 19:10 cronin | skóre: 49
Rozbalit Rozbalit vše Re: Omezeni shellu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Typicky problem zacinajuceho wannabe administratora. Neboj sa, hore hlavu, nie si ani prvy, ani posledny. :-)

Řeším problém jak si MAXIMÁLNĚ zabezpečit server.

Moji zživatelé mají shell ktery zakazuje vsechno krom vyjimek :-)

Pre Teba to bude akademicke cvicenie zo zabezpecnenia servera. Zaroven to bude poucenie, ze MAXIMALNE zabezpeceny server je neexistujuci server. A mozno k tomuto maximalne zabezpecenemu - t.j. neexistujucemu - serveru nakoniec skonverguje, nakolko prides o vsetkych pouzivatelov a teda ziadny server nebude potrebny.

Myslím například programy jako : mutt, irssi, vim, screen, centerim, atp .....

Nevíte jak tomuto zabránit ?

Odporucam pouzit mozog. Programy, ktore nemaju byt spustane, nemaju byt ani instalovane. Tam, kde mozu byt potencialne nainstalovane samotnymi pouzivatelmi, je mozne zabranit ich spustaniu, sposob bol uvedeny vyssie; ale predsa pri MAXIMALNE zabezpecenom serveri nebude mozne, aby pouzivatelia nieco niekde sami instalovali, ze ano? Pouzivatelov mozno uzavriet v chroote (Linux), jaile (BSD) alebo zone (Solaris) a umoznit im tak pristup iba k vybranej casti suboroveho systemu a procesov.

Spravne zabezpecenie dobra vec. Vojna proti vlastnym pouzivatelom je vopred prehrany boj.

20.2.2009 00:36 honza
Rozbalit Rozbalit vše Re: Omezeni shellu
Odpovědět | | Sbalit | Link | Blokovat | Admin

Tady nepomuze jen omezeni shellu, ma-li to mit smysl, musi to byt osetrene uz na urovni exec() - tedy nejake udelatko typu SELinux, RSBAC, LIDS atp.

20.2.2009 09:17 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Omezeni shellu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jdete na to ze špatného konce. V unixu se přístupová práva neřeší omezováním funkcí jednotlivých aplikací, ale prostým nastavením přístupových práv pro příslušné soubory. Pokud tedy uživatelé nemají mít právo nějaký soubor číst, nedávejte jim právo ke čtení toho souboru. Pokud nemají mít právo spouštět nějaký program, nedávejte jim právo ke spuštění toho programu. Pokud vám nestačí běžné řpidělení práv pro uživazele, skupinu a ostatní, použijte ACL.

PS: ke zvýrazňování nebo označování se používá kurzíva, tučné písmo znamená silné zdůraznění -- a zdůraznit půlku slov v textu nedává smysl (akorát tím naštvete čtenáře).
12.3.2009 23:13 quiiicq | skóre: 5 | Žďár nad Sázavou
Rozbalit Rozbalit vše Re: Omezeni shellu

Ano, pravda.

Nakonec jsem docílil toho že opravdu budou nejjednodušší změnit práva k souborům.

P.s: Omlouvám se za tučné písmo a kurzivu, jsem jsem své příspěvky zpřehlednit, ale zřejmě se nezdařilo, nechal jsem toho

Děkuji všem za pomoc

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.