abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 12:00 | Zajímavý projekt

Projekt Termbox umožňuje vyzkoušet si linuxové distribuce Ubuntu, Debian, Fedora, CentOS a Arch Linux ve webovém prohlížeči. Řešení je postaveno na projektu HyperContainer. Podrobnosti v často kladených dotazech (FAQ). Zdrojové kódy jsou k dispozici na GitHubu [reddit].

Ladislav Hagara | Komentářů: 5
dnes 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 0
včera 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 5
včera 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

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

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 9
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 17
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
2.12. 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 25
2.12. 15:30 | Zajímavý projekt

Společnost Jolla oznámila v příspěvku Case study: Sailfish Watch na svém blogu, že naportovala Sailfish OS na chytré hodinky. Využila a inspirovala se otevřeným operačním systémem pro chytré hodinky AsteroidOS. Použita je knihovna libhybris. Ukázka ovládání hodinek na YouTube.

Ladislav Hagara | Komentářů: 18
2.12. 14:15 | Nová verze

Byla vydána verze 7.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Jedná se o první stabilní verzi nejnovější větvě 7.1. Přehled novinek v dokumentaci. Podrobnosti v ChangeLogu. K dispozici je také příručka pro přechod z PHP 7.0.x na PHP 7.1.x.

Ladislav Hagara | Komentářů: 6
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 774 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

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: 151×
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: 66 | 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: 71 | 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: 71 | 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: 71 | 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: 71 | 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: 66 | 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: 66 | 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: 66
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: 66 | 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.