Princíp najnižšieho privilégia: Rozdiel medzi revíziami
Smazaný obsah Přidaný obsah
d drobné |
d wikilinky |
||
Riadok 10:
[[Jadro (informatika))|Jadro (kernel)]] zvyčajne pracuje s maximálnymi privilégiami, pretože je jadrom [[operačný systém|operačného systému]] a má prístup k hardvéru. Jednou zo základných povinností operačného systému, obzvlášť multiužívateľských operačných systémov, je správa a riadenie dostupnosti hardvéru a požiadaviek na prístup k nemu od bežiacich procesov. Keď jadro havaruje, mechanizmy, ktorými je udržiavaný stav, tiež zlyhajú. I keď pre [[CPU]] existuje možnosť obnovenia bez potreby tvrdého resetu, kód, ktorý pokračuje vo vykonávaní, nie je vždy taký, aký by mal byť. Bezpečnosť zostáva byť presadzovaná, ale operačný systém nedokáže vhodne správne reagovať na zlyhanie, pretože detekcia zlyhania nie je možná. Dôvodom je, že vykonávanie jadra sa buď zastavilo, alebo počítadlo programu pokračovalo vo vykonávaní programu v nekonečnom a zvyčajne nefunkčnom cykle.
Ak po havárii vykonávanie pokračuje načítaním a spustením kódu [[trójsky kôň|trójskeho koňa]], autor škodlivého kódu sa môže zmocniť riadenia všetkých procesov. Princíp najnižšieho privilégia núti kód bežať s najnižším možným stupňom privilégií/práv, takže v prípade tejto situácie — alebo situácie, keď vykonávanie pokračuje z neočakávanej lokality — to, čo pokračuje vo vykonávaní, nemá možnosť vykonať škodu. Jedna z metód používaných na dosiahnutie tohto efektu môže byť implementovaná v hardvéri
Termín „najnižšie privilégium“„" býva často nepochopený a občas nesprávne zamieňaný s konceptom [[Trusted Computer System Evaluation Criteria|TCSEC]] zmenšenia [[Dôveryhodná výpočtová báza|dôveryhodnej výpočtovej bázy]] (TCB). Zmenšenie je ďaleko prísnejšou požiadavkou, ktorá je použiteľná iba pre funkčne silnejšie zaisťovacie triedy, konkrétne B3 a A1
Riadok 18:
V niektorých operačných systémoch je možné sa stretnúť s implementáciou, v ktorej sa procesy vykonávajú s množinou potenciálnych privilégií a množinou aktívnych privilégií. Samotné množiny privilégií sú dedené od rodičov, o čom je rozhodnuté sémantikou ''[[Fork (operačné systémy)|fork]]()''. Spustiteľný súbor, ktorý vykonáva privilegovanú funkciu, može byť označený množinou privilégií, logickým rozšírením pojmov [[setuid|set user ID]] a [[setgid|set group ID]]. Dedenie súborových privilégií procesom je určené sémantikou skupiny systémových volaní ''exec()''. Presný spôsob, ktorým potenciálne privilégiá procesov, aktuálne privilégiá procesov a súborové privilégiá vzájomne interagujú, môže byť zložitý. Prakticky, princíp najnižšieho privilégia je vykonávaný prinútením procesu bežať iba s privilégiami vyžadovanými vykonávanou úlohou. Dodržiavanie tohto modelu je pomerne zložité a tiež náchylné k chybám.
Najstarším historickým prípadom najnižšieho privilégia je pravdepodobne zdrojový kód ''login.c'', ktorý začína vykonávanie s právami superužívateľa (root) a vo chvíli, keď už nie sú viac nevyhnutné, odoberá ich pomocou ''[[setuid]]()'' s nenulovým argumentom.
== Výhody ==
* Lepšia stabilita systému. Keď je kód limitovaný v možnostiach zmien, ktoré môže vykonať v systéme, je jednoduchšie testovať jeho možné akcie a interakcie s ostatnými aplikáciami. Napríklad, aplikácie bežiace s obmedzenými právami nebudú mať možnosť vykonávať operácie, ktoré by mohli viesť k zrúteniu systému, alebo nepriaznivo ovplyvňovať ostatné aplikácie spustené v rovnakom systéme.
* Vyššia bezpečnosť systému. Keď je kód obmedzovaný v celosystémových akciách, ktoré môže vykonávať, zraniteľnosť jednej aplikácie nemôže byť zneužitá na ovládnutie zvyšku systému. Napríklad, Microsoft tvrdí “Práca v štandardnom používateľskom režime poskytuje zákazníkom zvýšenú ochranu voči neúmyselnému poškodeniu na úrovni systému, spôsobenému "[[shatter
* Zjednodušenie nasadenia aplikácií(deployment). Vo všeobecnosti, čím nižšie privilégiá aplikácia požaduje, tým jednoduchšie je nasadenie vo väčšom prostredí. Toto je obvykle dôsledkom prvých dvoch výhod, aplikácie, ktoré inštalujú ovládače zariadení alebo vyžadujú zvýšené bezpečnostné privilégiá, majú obvykle vo svojom nasadení zahrnuté dodatočné kroky, napríklad vo
== Obmedzenia ==
|