abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 17:55 | IT novinky

    Společnost Volla Systeme stojící za telefony Volla spustila na Kickstarteru kampaň na podporu tabletu Volla Tablet s Volla OS nebo Ubuntu Touch.

    Ladislav Hagara | Komentářů: 3
    včera 17:44 | IT novinky

    Společnost Boston Dynamics oznámila, že humanoidní hydraulický robot HD Atlas šel do důchodu (YouTube). Nastupuje nová vylepšená elektrická varianta (YouTube).

    Ladislav Hagara | Komentářů: 0
    včera 15:11 | Nová verze

    Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.0.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 14:22 | IT novinky

    Nejvyšší soud podpořil novináře Českého rozhlasu. Nařídil otevřít spor o uchovávání údajů o komunikaci (data retention). Uvedl, že stát odpovídá za porušení práva EU, pokud neprovede řádnou transpozici příslušné směrnice do vnitrostátního práva.

    Ladislav Hagara | Komentářů: 0
    včera 05:33 | Zajímavý článek

    Minulý týden proběhl u CZ.NIC veřejný test aukcí domén. Včera bylo publikováno vyhodnocení a hlavní výstupy tohoto testu.

    Ladislav Hagara | Komentářů: 22
    včera 04:44 | Nová verze

    Byla vydána nová verze 3.5.0 svobodné implementace protokolu RDP (Remote Desktop Protocol) a RDP klienta FreeRDP. Přehled novinek v ChangeLogu. Opraveno bylo 6 bezpečnostních chyb (CVE-2024-32039, CVE-2024-32040, CVE-2024-32041, CVE-2024-32458, CVE-2024-32459 a CVE-2024-32460).

    Ladislav Hagara | Komentářů: 0
    včera 04:11 | Nová verze

    Google Chrome 124 byl prohlášen za stabilní. Nejnovější stabilní verze 124.0.6367.60 přináší řadu oprav a vylepšení (YouTube). Podrobný přehled v poznámkách k vydání. Opraveno bylo 22 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 02:22 | Nová verze

    Byla vydána nová verze 9.3 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Novinkou je vlastní repozitář DietPi APT.

    Ladislav Hagara | Komentářů: 0
    16.4. 18:44 | Nová verze

    Byl vydán Mozilla Firefox 125.0.1, první verze z nové řady 125. Přehled novinek v poznámkách k vydání, poznámkách k vydání pro firmy a na stránce věnované vývojářům. Vypíchnout lze podporu kodeku AV1 v Encrypted Media Extensions (EME). Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 125.0.1 je již k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    16.4. 16:44 | Nová verze

    Valkey, tj. svobodný fork již nesvobodného Redisu, byl vydán v první stabilní verzi 7.2.5.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (66%)
     (11%)
     (2%)
     (21%)
    Celkem 509 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: Jak omezit práva programu

    3.5.2006 17:17 Kníže Ignor | skóre: 19 | blog: stoupa
    Jak omezit práva programu
    Přečteno: 173×
    Některé typy programů potřebují mít přístupnou pouze omezenou skoupinu adresářů - příkladem je webový prohlížeč. Šlo by takové programy omezit tak, aby měly (zapisovací) přístup pouze do předem určených adresářů?
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)

    Odpovědi

    3.5.2006 17:23 hm
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    např. grsecurity
    3.5.2006 17:30 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    No nevypadá to špatně, ale zdá se mi, že práva nelze nastavit pro každého uživatele zvlášť - aby si každý mohl určit, co a jak chce omezit.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 17:33 miso | skóre: 36 | blog: iSCSI_initiator_howto | Praha
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Project Satan infects Calculon with Werecar virus
    3.5.2006 18:51 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Udělat vlastníkem binárky nějakého uživatele X, uživateli X nastavit právo zápisu do příslušného adresáře, binárce nastavit setuid. Ale to asi není dost sofistikované :-)
    3.5.2006 19:46 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    Nerozumím.

    [jura@jv ~]$ which firefox
    /usr/bin/firefox
    [jura@jv ~]$ ls -l /usr/bin/firefox
    -rwxr-xr-x  1 root root 4684 zář 22  2005 /usr/bin/firefox
    
    Vidíte tam cokoliv, že by prohlížeč mohl zapisovat "někam jinam než já"? SUID program to není, tím pádem může zapisovat akorát přesně tam, kam můžu zapisovat já, jako uživatel, který jej spustil.

    Asi nechápu, co chcete, ale jak víc (respektive - před čím) ten program potřebujete omezit?

    3.5.2006 19:59 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    No třeba, aby mi nesmazal/nepřepsal(a nejlépe ani neukradl) všechna MOJE data. Že nepřijdu o systém beru jako samozřejmost, ale já chci jít ještě dál. Prohlížeč je aplikace, která typicky běží skoro pořád a je tedy dobrým terčem, přitom potřebuje mít přístup do několika málo adresářů (v případě firefoxu zřejmě jen .mozilla a adresář, kam se stahují data).

    Jistě, zálohuji. Ale lepší je problémům předcházet než je následně řešit.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:03 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Tak ho spouštějte pod jiným uživatelem a budete mít klid…
    3.5.2006 20:07 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Ano to je jednoduché řešení, které mě taky napadlo a např. ve Windows ho používám.

    Ale chtělo by to něco systémovějšího, takhle bych pro skoro každý program musel vytvářet uživatele a navíc zajistit, aby se pod tím uživatelem opravdu vždy spuštěl.

    Mně to nepřipadá, že bych chtěl něco nepřirozeného.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:10 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    To je právě asi prvotní příčina, proč si nerozumíme. Co vlastně CHCETE? Aby každá z cca tisícovky binárek, kterou máte v systému nainstalovánu, mohla zapisovat jen do "svého adresáře", nejlépe user-defined? Anebo chcete něco reálnějšího? Co a proč?

    3.5.2006 20:17 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Chci přesně to, co je popsané v otázce. Tedy mít jednoduše mít možnost stanovit, co který program může dělat. Pro každého uživatele zvlášť. A jde mi hlavně o často používané a široce rozšířené programy (protože na ty se nejspíš útočník zaměří), proto jsem uvedl příklad prohlížeče.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:18 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    Viz níže

    3.5.2006 20:17 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    PS: Samozřejmě LZE nastavit systém tak, aby každá jedna binárka mohla manipulovat jenom s taxativně stanovenou množinou souborů/adresářů. Ten nástroj se jmenuje SELinux. Ale jak jistě tušíte, byl by to pěknej vopruz...

    PPS: Pokud to celé zamýšlíte jako "ochranu před chybama v programech", pusťte to za hlavu. Za X let jsem zažil N ztrát dat způsobených softwarovou chybou, a 999N ztrát dat způsobených vlastní chybou. Z této statistiky vyplývá, že riziko ztráty dat snížíte na jedno promile stávajícího rizika tím, že si urazíte pracky... To je ROZHODNĚ míň práce, než konfigurovat SELinux.

    3.5.2006 20:19 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Však takhle bych se mohl někdy bránit i před vlastní chybou. A SELinux se mi zdá podporuje jenom globální profily.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:21 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    No ale ten globální profil se samozřejmě ANDuje s klasickými přístupovými právy...

    3.5.2006 20:21 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Chcete něco nepřirozeného. Standardní bezpečnostní model Linuxu je založen na to, že oprávnění se přidělují uživatelům, ne programům. Tím netvrdím, že to není možné provést, jen že to není přirozený požadavek. Můžete začít třeba tím, že zkusíte ten prohlížeč spouštět v chroot jail, jen to asi bude piplačka připravit a navíc bude problém s externími prohlížeči na jednotlivé MIME typy, možná i něčím dalším.
    3.5.2006 20:28 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Tak nepřirozené je to možná z hlediska systému, ale ne z pohledu uživatele. Kdo je tu sluha a kdo pán?

    Stávající stav může zůstat zachován. Jen se přidá další úrověň, která umožní uživatelům se svými právy nakládat. Přece uživatel také mění práva svých souborů, proč by to nemohl dělat i se svými procesy?
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:34 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Vy jste pán. Máte zdrojáky jádra? Máte. Tak si to tam upravte. Nebo přesvědčte někoho, aby to udělal za vás. Pokud by to byl tak naprosto přirozený požadavek, asi by to už někdo udělal, nemyslíte?
    3.5.2006 20:40 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Pokud by to byl tak naprosto přirozený požadavek, asi by to už někdo udělal, nemyslíte?
    Tohle je trochu podivná argumentace, nemyslíte?

    Jinak otázka byla, zda to jde. Pokud je odpověď nejde, OK. Nikoho nenutím to programovat.

    Otázka tedy byla vyřešena? (takto se musím zeptat, když se dotaz na existenci něčeho a odpověď není kladná)
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:45 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    Neexistuje nic takového jako odpověď nejde. Jde naprosto všechno, akorát malá děcka se musej učit chodit. Všechno je to jenom otázka vynaložené práce versus získaný efekt. Ve vašem případě je ten poměr krajně nepříznivý, takže z praktického hlediska "to nejde".

    3.5.2006 20:49 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Nemyslím si, že je to podivná argumentace. Pokud se dosud nenašel nikdo, kdo by váš "zcela přirozený" požadavek realizoval, pak to znamená, že zase až tak "zcela přirozený" nebude. Nebo že se nenašel nikdo, kdo by se domníval, že přínos, který by to mělo, by převážil náročnost implementace podobného modelu.
    3.5.2006 21:03 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Možná něco takového bylo realizovaného. Jmenuje se to Medusa DS9 a umí to jakkoliv měnit klasická unixová práva. Ale jak koukám na stránky, tak už to dva roky nežije a poslední patch je pro jádro 2.4.26 :-).
    5.5.2006 17:01 miso | skóre: 36 | blog: iSCSI_initiator_howto | Praha
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Asi sa budem opakovat, ale to co chces, zrejme presne riesi AppArmor
    Project Satan infects Calculon with Werecar virus
    5.5.2006 17:08 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Opakování je matka moudrosti :-) Včera jsem se na to zběžně koukal, ale zase jsem nezjistil, jestli to funguje pro každého uživatele zvlášť. A pak se tady ztrhla ta smršť, kdy mě dva zasvěcení (myslím upřímně) začali přesvědčovat, že by to bylo něco nelinuxového a nabyl jsem dojmu, že AppArmor tedy rozlišení podle uživatelů nezvládá.

    Jak to tedy prosím je? (omlouvám se za svou natvrdlost a neschopnost tuto informaci dohledat na odkazovaných stránkách; na webu novellu o tom dokonce hovoří jako o komerčním aplikaci)
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    5.5.2006 17:32 miso | skóre: 36 | blog: iSCSI_initiator_howto | Praha
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Je uz uvolneny ako open-source.
    Prava na spustanie, zapis, citanie, natahovanie kniznic a pod sa udeluju podla celej cesty suboru a su zapisane v tzv. profile.
    Myslim, ze by to fungovalo tak, ze by uzivatenia nespustali firefox, ale link na ff a pre kazdy by existoval upraveny profil.
    Profil podporuje reg. vyrazy a includy, takze ak da rozumne pouzivat.
    Zatial ale zrejme okrem SUSE nie je AppArmor v inej distribucii, takze ak pouzivas nieco ine, tak neostava nez sa k tomu pripadne vratit, az bude v tvojom distre.
    Project Satan infects Calculon with Werecar virus
    5.5.2006 17:49 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Ještě jednou moc dík. Možná to bude důvod pro vyzkoušení SUSE.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    5.5.2006 17:11 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Jinak děkuji velmi za tento komentář.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:07 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    Hmmm... Na jednom a tom samém stroji se přihlašuje moje žena a já. A já opravdu nechci, aby "mozilla stahovala do jednoho adresáře, do kterého má práva". Já si stahuju do svých adresářů, žena do svých - a pokud si ONA něco smaže, je to její problém...

    Takže podle mě je celá definice "adresář, kam se stahují data" úplně scestná...

    3.5.2006 20:13 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Však nikde netvrdím, že to musí být pro každého uživatele stejné. Naopak chci, aby si každý mohl jakýkoli program omezit dle libosti. Například já vždy stahuji do jednoho adresáře a teprve pak to případně přesunu na místo vhodnější. Že by tento způsob práce někomu nevyhovoval? Nemusí to používat. Jsou i programy, které nezapisují nic. Má mít program na prohlížení pdf právo smazat mi třeba poštu?
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:20 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    To už chcete moc. Mnou výše zmíněný SELinux zvládne téměř cokoliv, ale není možné "aby si každý mohl...". Ta omezení musí nastavit administrátor.

    3.5.2006 20:21 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Nezdá se mi, že chci moc. Realizovatelné to snad je, že nic takového možná neexistuje je věc jiná.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:30 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    Neberte si to osobně. Buď netušíte, jak security model linuxu funguje, anebo jste naprostý fantasta.

    Chcete totiž moc - chcete něco, co sice "realizovatelné je", ale stávající jádro a celá architektura bezpečnostního modelu na to prostě není navržená.

    A obávám se, že nikdo ji podle vašich představ předělávat nebude, protože ta celá vaše představa nemá ani hlavu ani patu (z pohledu architektury systému). Jestliže jako uživatel mohu spustit mv nebo rm a budu omezen pouze svými přístupovými právy (což prostě musí takto zůstat, změnu neprosadíte...), pak postrádá smysl, aby "nějaká jiná" aplikace to samé udělat nemohla...

    3.5.2006 20:36 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Pokud vím tak selinux funguje zhruba tak, že se ho jádro ptá, jestli danou operaci program může provést. On odpoví ano/ne. Proč by se při tom rozhodování nemohlo zohlednit, který pod jakým uživatelem ta aplikace běží?
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:41 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Protože se IMHO zohledňuje jenom kontext SELinuxu. Ten dostane každý proces přidělený při spuštění.
    3.5.2006 20:42 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    Jo, zhruba tak funguje.

    A k čemu potřebujete, aby zohledňoval uživatele? Nastavím v rámci SELinuxu, že mozilla může zapisovat do /home/jura/download a /home/martina/download. Budu-li přihlášen jako jura, pak prvotní kontrola projde přes filesystem, že můžu zapisovat do /home/jura (a ne do /home/martina), následně SELinux vyplivne, že do /home/jura/download ano, do /home/jura/porno ne.

    Čili, nastavení "per uživatel" samozřejmě funguje kombinací těch souborových a selinuxových práv. To, co jsem říkal, že nejde, je to, že uživatel SÁM si nemůže nastavit granilaritu - protože nastavení parametrů pro SELinux může jenom root, sám sobě si jako běžný uživatel tímto způsobem nic neomezím.

    3.5.2006 20:50 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Takže je jenom potřeba zařídit, aby každý uživatel mohl někde nadefinovat svoje práva a ty se pak namergují do globální konfigurace. A mělo by se kontrolovat, zda uživatel nepodvádí a nezasahuje třeba do práv cizích.

    Ale není to úplné řešení. Uživatel A někam zapisovat chtít nemusí, ale uživatel B tam zapisovat právo má a zapisovat tam chce. Muselo by se to aplikovat asi jen na houmy a zkomplikovalo by se sdílení dat.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 20:56 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    Uááááááááá!!! Nezlobte se, ale to co jste napsal je neskutečná pitomost. Co to je kupříkladu "pak namergují" - co to je PAK?

    Nerad to říkám, ale tuto debatu vzdávám, protože jste mě právě přesvědčil, že tomu současně nerozumíte a zároveň fantazírujete. Kvalitní literatury na dané téma existuje dostatek... Nejsem schopen vám věcně argumentovat proti vašim představám, když ty představy ukazují, že vlastně nevíte, co si představujete.

    3.5.2006 21:03 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Pak může znamenat třeba v okamžiku změny toho osobního profilu. Nebo je třeba pro změnu konfigurace selinux vždy restartovat počítač? To by se jistě dalo změnit.

    Já chápu, že pro vás taková diskuze není přínosná. A určitě tomu rozumíte mnohem lépe a možná nejsem schopen navrhnout funkční a rozumné řešení. Já neříkám, jak toho docílit, ale čeho chci docílit. A to můžu říkat i kdybych tomu nerozumněl vůbec, stačí když dám důvody, proč je to podle mě dobrý nápad.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 21:15 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    Já vás chápu, že máte představu čeho chcete docílit, a příliš vás (a právem) nezajímá, jak to udělat. Nicméně, kdybyste začal přemýšlet i nad tím "jak", dostal byste se dříve či později i k otázce proč - a to je to, co mi uniká a co mě popuzuje. Vy totiž chcete něco, a podle mého nemáte domyšleno konkrétně proč to chcete, se všemi souvisejícími důsledky. Jakmile byste to začal sepisovat tužkou na papír, asi byste záhy zjistil, že vaše požadavky jsou ze své podstaty nekonzistentní.

    A jinak, k té modifikaci nastavení SELinuxu. Změna nastavení ve smyslu odstranění určitých privilegií je možná kdykoliv (samozřejmě pouze rootem), změna nastavení ve smyslu navrácení privilegií možná není, je nutno systém restartovat. Ten váš mechanismus by šel udělat tak nějak, že uživatel by zadal požadavek, ten by se zapsal do fronty, a cronová úloha pod rootem by to nastavení provedla - ale pochopte, že ten uživatel by si to UŽ NIKDY NEMOHL ROZMYSLET, bylo by nutno restartovat systém. Což je sice možné na šmudlíkovi doma na stole, ale v produkční praxi to skutečně fungovat nebude.

    Nehledě k tomu, že by docházelo k mnoha potencionálním konfliktům, z nichž jste některé už naznačil. Čili, rozhodně by to nebylo nic snadného - a znovu opakuju, že jsem přesvědčen, že jste celý ten požadavek nedomyslel, protože nemůžete konzistentně chtít to, co jste popsal.

    3.5.2006 21:19 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    PS:

    Nebo je třeba pro změnu konfigurace selinux vždy restartovat počítač? To by se jistě dalo změnit.

    NEDALO! Vtip SELinuxu (a obecně jakéhokoliv bezpečnostního mechanismu, který je opravdu bezpečnostní) spočívá v tom, že jakmile jednou řeknu, že do /etc/passwd zapisovat nebudu, tak do něj skutečně UŽ NIKDY NEBUDU SCHOPEN ZAPSAT!. Neexistuje nic takového jako "odvolávám co jsem slíbil a slibuju co jsem odvolal" - pak by ten mechanismus byl k ničemu.

    Zamyslete se nad tím a pochopíte, že vzdám-li se jednou nějakého privilegia, už ho nesmím být schopen znovu získat - protože jinak by jaksi postrádalo smysl celé to "vzdávání se".

    3.5.2006 22:26 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Neexistuje nic takového jako "odvolávám co jsem slíbil a slibuju co jsem odvolal" - pak by ten mechanismus byl k ničemu.
    Nesouhlasím, pouze to vyžaduje nutnost ověřovat oprávnění si práva vrátit jinou cestou (samostatně nezávisle na všem dalším).
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    3.5.2006 22:43 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: Jak omezit práva programu

    To máte pravdu. Ale asi se neshodneme v tom, co to je "samostatně nezávisle na všem dalším".

    Jednou jsem se vzdal práva udělat X. Pokud existuje mechanismus, jak si toto právo opět navrátit, pak toto navrácení může udělat kdokoliv. (Ve smyslu "jakýkoliv dostatečně sofistikovaný proces".) Jak chcete chránit navrácení práva? Separátním heslem hardwired v jádře třeba? Uvědomte si, že ten mechanismus revokace práva znamená, že NIKDO, včetně jakéhokoliv jaderného modulu, nemá být schopen udělat nic, jak to právo vrátit zpět. Čistě softwarově je to prostě všechno nebo nic - buď se vzdám jednou provždy, anebo se nemusím vzdávat vůbec, protože to kdokoliv může zvrátit.

    Jediná myslitelná varianta by byla vázat to na nějakou hardwarovou událost - jakože třeba by bylo nutné na vstupu paralelního portu napípat nějakou konkrétní bitovou sekvenci, a musel by to ošetřovat přímo ten nejvnitřnější bezpečnostní kód, nesměl by se spoléhat na nikoho jiného. Což je samozřejmě neschůdné jak z praktického hlediska (než vyrábět nějaké hardwarové udělátko, tak to tu mašinu raději rebootnu), tak i z programátorského hlediska (nutíte lowlevel jaderný kód zaobírat se nějakou konkrétní komunikací s vnějším světem, což je z mnoha pohledů problém).

    Smiřte se s tím, že jednou zahozené právo už nesmíte mít možnost získat zpět, k tomuto poznání došli už mnohem dříve lidé mnohem chytřejší, než my oba dohromady... Schválně navrhněte nějakou podle vás bezpečnou cestu, o co, že v ní bude potencionální riziko.

    4.5.2006 12:46 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    To, o čem mluví Kníže Igor, nejsou práva v tom smyslu, jak je známe na Linuxu a třeba i Wondows dnes, ale něco na způsob dočasné ochrany nebo třeba předpokladů. Předpokládám, že teď nebudu zapisovat do adresáře ~/dlouhodobe, tak si dočasně nastavím něco, co mi zápis zakazuje (ale podle klasických práv to udělat můžu). Nebo předpokládám, že Mozilla nepotřebuje zapisovat jinam než ~/.mozilla, tak jí takhle dočasně omezím - ale spouštím jí stále já se svými právy, takže podle práv může zapisovat všude, kam můžu já.

    Je to obdoba bezpečnostní dětské pojistky dveří u auta, pouzdra na nůž, parametru -i příkazu rm, nebo práce pod běžným uživatelem, když znám heslo roota. To jsou všechno věci, které neomezují má práva (dětskou pojistku mohu odemknout, nožem mohu krájet, jako root mám všechna práva), ale před použitím těchto práv vyžadují jeden (nabo více) dalších kroků. Účelem těchto kroků není zvýšit fyzickou bezpečnost, ta je pořád stejná. Účelem těchto kroků je působit na to nejnebezpečnější – na lidský faktor, a to tak, aby si člověk uvědomil, že teď dělá něco výjimečného a choval se podle toho.

    Lze to taky chápat jako dvouúrovňová oprávnění – admin/root mi přidělí práva a tím určí maximum toho, co můžu dělat. A z těchto práv já si pak můžu vybírat, která práva chci teď zrovna používat a kerá ne.
    4.5.2006 12:48 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Sorry za zkomolení přezdívky, nějak jsem to n Ignoroval ;-)
    5.5.2006 10:45 Kníže Ignor | skóre: 19 | blog: stoupa
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    :-) Napsal jste to pěkně.
    Jestli máš zálohu mého blogu, tak mi ji pošli. Nějak jsem si ho smazal :-)
    Josef Kufner avatar 5.5.2006 12:09 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Z tohodle pohledu mi to přijde rozumné, ale aby to mělo smysl, tak by to ten program nesměl mít možnost tyto nastavení změnit -- jen uživatel s pomocí nějakého jednoduchého nástroje (něco ve stylu jako je crontab -e, ale samozřejmě ne totéž). Vlastně by se to občas hodilo... na testování cizích nedůvěryhodných programů, jestli dělají to co dělat mají a nelezou kam nemají.
    Hello world ! Segmentation fault (core dumped)
    5.5.2006 16:33 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Jak omezit práva programu
    Jasně, možnost měnit tohle nastavení by měla být jednou z těch voleb, které si můžu dočasně (zde spíš pro nějaký program) odejmout. Ale ono to nemusí být implementováno ani jako systémová věc, kdy nějaký mechanizmus programu zabrání v něčem dělat. Může to být i dobrovolná záležitost (samozřejmě implementovaná nějakou standardizovanou knihovnou), kdy se program před provedením nějaké akce dotáže knihovní funkce, zda tuto akci může provést, nebo ne. V tomto případě by šlo udělat ještě jemnější rozdělení oprávnění, kdy třeba část browseru zodpovědná za konfiguraci by se dobrovolně vzdala zápisu jinam než do adresáře s konfigurací, část zajišťující download by se dobrovolně vzdala práva číst cokoliv a měla by jen právo zapisovat do adresáře downloadu apod. Tenhle mechanizmus by už ale nezabránil chybám programu typu buffer overflow apod. Ale v podstatě je to jen zobecnění principu parametru -i u rm – příkazu rm nic nebrání smazat vše, na co máte práva, ale parametrem -i zařídíte to, že se rm tohoto práva dobrovolně vzdá a před smazáním se vás zeptá (pokud v něm není chyba).

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.