SELinux - často kladené otázky (FAQ)

Ahojte všetci! Najmä pre študentov kurzov "Bezpečnosť Linuxu" pripravili sme preklad oficiálnych FAQ projektu SELinux. Zdá sa nám, že tento preklad môže byť užitočný nielen pre študentov, preto sa oň s vami podelíme.

SELinux - často kladené otázky (FAQ)

Pokúsili sme sa odpovedať na niektoré z najčastejšie kladených otázok o projekte SELinux. Otázky sú v súčasnosti rozdelené do dvoch hlavných kategórií. Všetky otázky a odpovede sú uvedené na stránke FAQ.

Recenzia

Recenzia

  1. Čo je Linux s vylepšeným zabezpečením?
    Security-enhanced Linux (SELinux) je referenčná implementácia bezpečnostnej architektúry Flask pre flexibilné, vynútené riadenie prístupu. Bol vytvorený, aby demonštroval užitočnosť flexibilných mechanizmov presadzovania a ako je možné takéto mechanizmy pridať do operačného systému. Architektúra Flask bola následne integrovaná do Linuxu a prenesená do niekoľkých ďalších systémov, vrátane operačného systému Solaris, operačného systému FreeBSD a jadra Darwin, čo viedlo k širokému spektru súvisiacich prác. Architektúra Flask poskytuje všeobecnú podporu pre presadzovanie mnohých typov politík presadzovania riadenia prístupu, vrátane tých, ktoré sú založené na konceptoch Type Enforcement, Role-based Access Control a Multi-level Security.
  2. Čo poskytuje Linux so zvýšenou bezpečnosťou, čo štandardný Linux nedokáže?
    Bezpečne vylepšené jadro Linuxu presadzuje vynútené politiky riadenia prístupu, ktoré obmedzujú užívateľské programy a systémové servery na minimálnu množinu privilégií, ktoré potrebujú na vykonávanie svojich úloh. S týmto obmedzením je znížená alebo eliminovaná schopnosť týchto užívateľských programov a systémových démonov spôsobiť poškodenie v prípade kompromisu (napríklad v dôsledku pretečenia vyrovnávacej pamäte alebo nesprávnej konfigurácie). Tento mechanizmus obmedzenia funguje nezávisle od tradičných mechanizmov kontroly prístupu v systéme Linux. Nemá koncept „root“ superužívateľa a nezdieľa dobre známe nedostatky tradičných bezpečnostných mechanizmov Linuxu (ako je spoliehanie sa na binárne súbory setuid/setgid).
    Bezpečnosť nemodifikovaného systému Linux závisí od správnosti jadra, všetkých privilegovaných aplikácií a každej ich konfigurácie. Problém v ktorejkoľvek z týchto oblastí môže ohroziť celý systém. Naproti tomu bezpečnosť upraveného systému založeného na bezpečnostne vylepšenom jadre Linuxu závisí predovšetkým od správnosti jadra a konfigurácie jeho bezpečnostnej politiky. Zatiaľ čo problémy so správnosťou alebo konfiguráciou aplikácie môžu umožniť obmedzené ohrozenie jednotlivých užívateľských programov a systémových démonov, nepredstavujú bezpečnostné riziko pre iné užívateľské programy a systémové démony ani pre bezpečnosť systému ako celku.
  3. Na čo je dobrá?
    Nové funkcie Linuxu s vylepšeným zabezpečením sú navrhnuté tak, aby poskytovali segregáciu informácií na základe požiadaviek na dôvernosť a integritu. Sú navrhnuté tak, aby zabránili procesom čítať dáta a programy, manipulovať s dátami a programami, obchádzať mechanizmy zabezpečenia aplikácií, spúšťať nedôveryhodné programy alebo zasahovať do iných procesov v rozpore so systémovou bezpečnostnou politikou. Pomáhajú tiež obmedziť potenciálne škody, ktoré môže spôsobiť malvér alebo nesprávne programy. Mali by byť užitočné aj na zabezpečenie toho, aby používatelia s rôznymi bezpečnostnými povoleniami mohli používať rovnaký systém na prístup k rôznym druhom informácií s rôznymi bezpečnostnými požiadavkami bez toho, aby tieto požiadavky ohrozili.
  4. Ako môžem získať kópiu?
    Mnohé distribúcie Linuxu obsahujú podporu pre SELinux už zabudovanú ako predvolenú funkciu alebo ako voliteľný balík. Základný užívateľský kód SELinux je dostupný na GitHub. Koncoví používatelia by mali vo všeobecnosti používať balíčky poskytované ich distribúciou.
  5. Čo je súčasťou vášho vydania?
    Vydanie SELinux od NSA obsahuje základný kód užívateľskej krajiny SELinux. Podpora pre SELinux je už zahrnutá v bežnom jadre Linuxu 2.6, dostupnom na kernel.org. Základný kód užívateľského prostredia SELinux pozostáva z knižnice pre manipuláciu s binárnymi politikami (libsepol), kompilátora politík (checkpolicy), knižnice pre bezpečnostné aplikácie (libselinux), knižnice pre nástroje na správu politík (libsemanage) a niekoľkých nástrojov súvisiacich s politikou ( policycoreutils).
    Okrem jadra s povoleným SELinuxom a základného kódu používateľskej oblasti budete na používanie SELinuxu potrebovať politiku a niekoľko opravených balíkov používateľského priestoru SELinux. Zásadu je možné získať z Projekt referenčnej politiky SELinux.
  6. Môžem nainštalovať spevnený Linux na existujúci systém Linux?
    Áno, modifikácie SELinux môžete nainštalovať iba na existujúci systém Linux alebo môžete nainštalovať distribúciu Linuxu, ktorá už obsahuje podporu SELinux. SELinux pozostáva z linuxového jadra s podporou SELinux, základnej sady knižníc a pomôcok, niektorých upravených užívateľských balíkov a konfigurácie politiky. Ak ho chcete nainštalovať na existujúci systém Linux, ktorý nemá podporu SELinux, musíte byť schopní skompilovať softvér a mať aj ďalšie požadované systémové balíky. Ak vaša distribúcia Linuxu už obsahuje podporu pre SELinux, nemusíte zostavovať ani inštalovať vydanie SELinuxu NSA.
  7. Ako kompatibilný je Linux so zvýšenou bezpečnosťou s neupraveným Linuxom?
    Bezpečne vylepšený Linux poskytuje binárnu kompatibilitu s existujúcimi linuxovými aplikáciami a existujúcimi modulmi jadra Linuxu, ale niektoré moduly jadra môžu vyžadovať úpravu, aby správne interagovali so SELinuxom. Tieto dve kategórie kompatibility sú podrobne popísané nižšie:

    • Kompatibilita aplikácií
      SELinux poskytuje binárnu kompatibilitu s existujúcimi aplikáciami. Rozšírili sme dátové štruktúry jadra o nové bezpečnostné atribúty a pridali sme nové volania API pre bezpečnostné aplikácie. Nezmenili sme však žiadne dátové štruktúry viditeľné pre aplikácie, ani sme nezmenili rozhranie žiadnych existujúcich systémových volaní, takže existujúce aplikácie môžu stále bežať, pokiaľ im to bezpečnostná politika umožňuje.
    • Kompatibilita s modulmi jadra
      Spočiatku SELinux poskytoval iba počiatočnú kompatibilitu pre existujúce moduly jadra; bolo potrebné prekompilovať takéto moduly s upravenými hlavičkami jadra, aby sa získali nové bezpečnostné polia pridané do dátových štruktúr jadra. Pretože LSM a SELinux sú teraz integrované do hlavného prúdu jadra Linuxu 2.6, SELinux teraz poskytuje binárnu kompatibilitu s existujúcimi modulmi jadra. Niektoré moduly jadra však nemusia dobre spolupracovať so SELinuxom bez úprav. Napríklad, ak modul jadra priamo alokuje a nastavuje objekt jadra bez použitia normálnych inicializačných funkcií, potom objekt jadra nemusí mať správne bezpečnostné informácie. Niektorým modulom jadra môžu tiež chýbať náležité bezpečnostné kontroly ich operácií; akékoľvek existujúce volania funkcií jadra alebo funkcií povolení tiež spustia kontroly povolení SELinux, ale na presadzovanie politík MAC môžu byť potrebné jemnejšie alebo ďalšie kontroly.
      Bezpečne vylepšený Linux by nemal vytvárať problémy s interoperabilitou s bežnými linuxovými systémami, ak sú všetky potrebné operácie povolené konfiguráciou bezpečnostnej politiky.
  8. Aký je účel príkladu konfigurácie bezpečnostnej politiky?
    Na vysokej úrovni je cieľom demonštrovať flexibilitu a bezpečnosť vynútených kontrol prístupu a poskytnúť jednoduchý pracovný systém s minimálnymi zmenami aplikácií. Na nižšej úrovni má politika súbor cieľov popísaných v dokumentácii politiky. Medzi tieto ciele patrí kontrola prístupu k nespracovaným údajom, ochrana integrity jadra, systémového softvéru, informácií o konfigurácii systému a systémových protokolov, obmedzenie potenciálnych škôd, ktoré by mohli byť spôsobené zneužitím zraniteľnosti v procese vyžadujúcom privilégiá, ochrana privilegovaných procesov pred spustením škodlivého softvéru. kód, chráni rolu správcu a doménu pred prihlásením bez overenia používateľa, zabraňuje bežným procesom používateľa zasahovať do systémových alebo správcovských procesov a chráni používateľov a správcov pred zneužitím zraniteľností v ich prehliadači škodlivým mobilným kódom.
  9. Prečo bol Linux vybraný ako základná platforma?
    Linux bol vybraný ako platforma pre počiatočnú referenčnú implementáciu tejto práce kvôli rastúcemu úspechu a otvorenému vývojovému prostrediu. Linux poskytuje vynikajúcu príležitosť demonštrovať, že táto funkcionalita môže byť úspešná na hostiteľskom operačnom systéme a zároveň môže prispieť k bezpečnosti široko používaného systému. Platforma Linux tiež poskytuje pre túto prácu vynikajúcu príležitosť získať čo najširší pohľad a možno poslúži ako základ pre ďalší výskum bezpečnosti zo strany iných nadšencov.
  10. Prečo ste robili túto prácu?
    Národné výskumné laboratórium informačnej bezpečnosti Národná bezpečnostná agentúra je zodpovedná za výskum a vývoj pokročilých technológií, aby umožnila NSA poskytovať riešenia, produkty a služby informačnej bezpečnosti pre informačné infraštruktúry, ktoré sú dôležité pre záujmy národnej bezpečnosti USA.
    Vytvorenie životaschopného bezpečného operačného systému zostáva hlavnou výzvou výskumu. Naším cieľom je vytvoriť efektívnu architektúru, ktorá poskytuje potrebnú podporu pre bezpečnosť, spúšťa programy do značnej miery transparentným spôsobom pre používateľa a je atraktívna pre predajcov. Veríme, že dôležitým krokom k dosiahnutiu tohto cieľa je ukázať, ako možno úspešne integrovať mechanizmy kontroly núteného prístupu do hlavného operačného systému.
  11. Ako to súvisí s predchádzajúcim výskumom OS NSA?
    Výskumníci z National Assurance Research Laboratory NSA sa spojili s Secure Computing Corporation (SCC), aby vyvinuli výkonnú a flexibilnú architektúru presadzovania založenú na Type Enforcement, mechanizme, ktorý je priekopníkom systému LOCK. NSA a SCC vyvinuli dve prototypové architektúry založené na Mach: DTMach a DTOS (http://www.cs.utah.edu/flux/dtos/). NSA a SCC potom spolupracovali so skupinou Flux Research Group na univerzite v Utahu na portovaní architektúry do operačného systému Fluke Research. Počas tejto migrácie bola architektúra vylepšená, aby poskytovala lepšiu podporu pre dynamické bezpečnostné politiky. Táto vylepšená architektúra dostala názov Flask (http://www.cs.utah.edu/flux/flask/). NSA teraz integrovala architektúru Flask do operačného systému Linux, aby priniesla túto technológiu širšej komunite vývojárov a používateľov.
  12. Je Linux so zvýšeným zabezpečením spoľahlivý operačný systém?
    Fráza "dôveryhodný operačný systém" sa vo všeobecnosti vzťahuje na operačný systém, ktorý poskytuje dostatočnú podporu pre vrstvené zabezpečenie a overovanie, aby spĺňal špecifický súbor vládnych požiadaviek. Bezpečne vylepšený Linux obsahuje užitočné poznatky z týchto systémov, ale zameriava sa na vynútenú kontrolu prístupu. Pôvodným cieľom vývoja Linuxu s vylepšenou bezpečnosťou bolo vytvoriť užitočnú funkcionalitu, ktorá poskytuje hmatateľné bezpečnostné výhody v širokej škále prostredí reálneho sveta na demonštráciu tejto technológie. SELinux sám o sebe nie je dôveryhodný operačný systém, ale poskytuje kritickú bezpečnostnú funkciu – vynútenú kontrolu prístupu – potrebnú pre dôveryhodný operačný systém. SELinux bol integrovaný do linuxových distribúcií, ktoré boli hodnotené podľa Labeled Security Protection Profile. Informácie o testovaných a testovaných produktoch nájdete na http://niap-ccevs.org/.
  13. Je naozaj chránená?
    Koncept bezpečného systému zahŕňa mnoho atribútov (napríklad fyzickú bezpečnosť, personálnu bezpečnosť atď.) a Linux so zvýšenou bezpečnosťou oslovuje len veľmi úzku množinu týchto atribútov (t. j. kontroly presadzovania operačného systému). Inými slovami, „zabezpečený systém“ znamená dostatočne bezpečný na to, aby ochránil niektoré informácie v reálnom svete pred skutočným protivníkom, pred ktorým je vlastník a/alebo používateľ informácií varovaný. Bezpečne vylepšený Linux je určený len na predvádzanie požadovaných ovládacích prvkov v modernom operačnom systéme, akým je Linux, a preto je nepravdepodobné, že by sám osebe vyhovoval akejkoľvek zaujímavej definícii bezpečného systému. Veríme, že technológia demonštrovaná v Linuxe so zvýšenou bezpečnosťou bude užitočná pre ľudí, ktorí budujú bezpečné systémy.
  14. Čo ste urobili pre zlepšenie záruky?
    Cieľom tohto projektu bolo pridať do Linuxu riadenie núteného prístupu s minimálnymi zmenami. Tento posledný cieľ výrazne obmedzuje to, čo je možné urobiť na zlepšenie záruky, takže sa nevykonala žiadna práca na zlepšení záruky Linuxu. Na druhej strane vylepšenia vychádzajú z predchádzajúcej práce na návrhu architektúry zabezpečenia s vysokým zabezpečením a väčšina týchto princípov návrhu bola prenesená do systému Linux s vylepšeným zabezpečením.
  15. Vyhodnotí CCEVS Linux so zvýšenou bezpečnosťou?
    Samotný Linux so zvýšenou bezpečnosťou nie je navrhnutý tak, aby riešil celú sadu bezpečnostných problémov, ktoré predstavuje bezpečnostný profil. Hoci by bolo možné hodnotiť len jeho aktuálnu funkčnosť, domnievame sa, že takéto hodnotenie by malo obmedzenú hodnotu. Spolupracovali sme však s ostatnými na zahrnutí tejto technológie do distribúcií Linuxu, ktoré boli hodnotené, a distribúcií, ktoré sú v štádiu hodnotenia. Informácie o testovaných a testovaných produktoch nájdete na http://niap-ccevs.org/.
  16. Skúšali ste opraviť nejaké zraniteľnosti?
    Nie, pri našej práci sme nehľadali ani nenašli žiadne slabé miesta. Prispeli sme len dosť z úplného minima na pridanie našich nových prevodov.
  17. Je tento systém schválený pre vládne použitie?
    Bezpečne vylepšený Linux nemá žiadne špeciálne alebo dodatočné schválenie pre vládne použitie v porovnaní s akoukoľvek inou verziou Linuxu.Bezpečnostne vylepšený Linux nemá žiadne špeciálne alebo dodatočné schválenie pre vládne použitie v akejkoľvek inej verzii Linuxu.
  18. Ako sa to líši od iných iniciatív?
    Bezpečne vylepšený Linux má dobre definovanú architektúru pre flexibilné vynútené riadenie prístupu, ktorá bola experimentálne testovaná s niekoľkými prototypovými systémami (DTMach, DTOS, Flask). Boli vykonané podrobné štúdie o schopnosti architektúry podporovať širokú škálu bezpečnostných politík a sú dostupné v http://www.cs.utah.edu/flux/dtos/ и http://www.cs.utah.edu/flux/flask/.
    Architektúra poskytuje jemnú kontrolu nad mnohými abstrakciami jadra a službami, ktoré nie sú riadené inými systémami. Niektoré z charakteristických vlastností systému Linux s rozšíreným zabezpečením sú:

    • Čisté oddelenie politiky od práv na vymáhanie
    • Dobre definované rozhrania politík
    • Nezávislosť od konkrétnych politík a jazykov politík
    • Nezávislosť od konkrétnych formátov a obsahu bezpečnostných štítkov
    • Samostatné označenia a ovládacie prvky pre objekty jadra a služby
    • Rozhodnutia o prístupe do vyrovnávacej pamäte pre efektívnosť
    • Podpora pre zmeny politiky
    • Kontrola nad inicializáciou procesu a dedením a vykonávaním programu
    • Spravujte súborové systémy, adresáre, súbory a otvárajte popisy súborov
    • Správa soketov, správ a sieťových rozhraní
    • Kontrola nad využívaním „Príležitostí“
  19. Aké sú licenčné obmedzenia pre tento systém?
    Všetky zdrojové kódy nájdete na stránke https://www.nsa.gov, je distribuovaný za rovnakých podmienok ako pôvodné zdrojové kódy. Napríklad opravy pre jadro Linuxu a opravy mnohých existujúcich pomocných programov, ktoré sú tu k dispozícii, sú vydané za podmienok Všeobecná verejná licencia GNU (GPL).
  20. Existujú kontroly vývozu?
    V porovnaní s akoukoľvek inou verziou Linuxu neexistujú žiadne ďalšie ovládacie prvky exportu pre Linux s rozšíreným zabezpečením.
  21. Plánuje ho NSA používať na domácom trhu?
    Z pochopiteľných dôvodov sa NBÚ k prevádzkovému využitiu nevyjadruje.
  22. Mení vyhlásenie o zárukách Secure Computing Corporation z 26. júla 2002 stanovisko NSA, že SELinux bol sprístupnený pod GNU General Public License?
    Pozícia NSA sa nezmenila. NSA stále verí, že používanie, kopírovanie, distribúciu a modifikáciu SELinuxu sa riadia podmienkami GNU General Public License. Cm. Tlačová správa NSA z 2. januára 2001.
  23. Podporuje NSA softvér s otvoreným zdrojovým kódom?
    Iniciatívy NSA v oblasti softvérovej bezpečnosti zahŕňajú proprietárny aj open source softvér a v našich výskumných aktivitách sme úspešne použili proprietárne aj open source modely. Práca NSA na zlepšení softvérovej bezpečnosti je motivovaná jednou jednoduchou úvahou: čo najlepšie využiť naše zdroje, aby sme zákazníkom NSA poskytli najlepšie možné možnosti zabezpečenia v ich najpoužívanejších produktoch. Cieľom výskumného programu NSA je vyvinúť technologický pokrok, ktorý možno zdieľať s komunitou vývojárov softvéru prostredníctvom rôznych mechanizmov prenosu. NSA neschvaľuje ani nepropaguje žiadny konkrétny softvérový produkt alebo obchodný model. NSA skôr presadzuje bezpečnosť.
  24. Podporuje NSA Linux?
    Ako je uvedené vyššie, NSA neschvaľuje ani nepropaguje žiadny konkrétny softvérový produkt alebo platformu; NSA len prispieva k zvýšeniu bezpečnosti. Architektúra Flask demonštrovaná v referenčnej implementácii SELinux bola portovaná na niekoľko ďalších operačných systémov vrátane Solaris, FreeBSD a Darwin, portovaná na hypervízor Xen a aplikovaná na aplikácie ako X Window System, GConf, D-BUS a PostgreSQL. . Koncepcie architektúry banky sú široko použiteľné pre širokú škálu systémov a prostredí.

spolupráca

  1. Ako plánujeme komunikovať s komunitou Linuxu?
    Máme súbor webových stránok na NSA.gov, ktorý bude slúžiť ako náš hlavný spôsob zverejňovania informácií o Linuxe s vylepšeným zabezpečením. Ak máte záujem o Linux s vylepšeným zabezpečením, odporúčame vám pripojiť sa k vývojárskej konferencii, zobraziť zdrojový kód a poskytnúť spätnú väzbu (alebo kód). Ak sa chcete pripojiť k vývojárskemu zoznamu adries, pozrite si Stránka zoznamu adries vývojárov SELinux.
  2. Kto môže pomôcť?
    SELinux je teraz udržiavaný a vylepšovaný komunitou open source softvéru Linux.
  3. Financuje NSA nejakú následnú prácu?
    O návrhoch na ďalšiu prácu NBÚ v súčasnosti neuvažuje.
  4. Aký typ podpory je k dispozícii?
    Máme v úmysle vyriešiť problémy prostredníctvom zoznamu adries [chránené e-mailom], ale nebudeme môcť odpovedať na všetky otázky súvisiace s konkrétnou stránkou.
  5. Kto pomohol? Čo urobili?
    Prototyp Linuxu s vylepšenou bezpečnosťou bol vyvinutý NSA s výskumnými partnermi z NAI Labs, Secure Computing Corporation (SCC) a MITER Corporation. Po prvom zverejnení nasledovalo oveľa viac materiálu. Pozrite si zoznam účastníkov.
  6. Ako môžem zistiť viac?
    Odporúčame vám navštíviť naše webové stránky, prečítať si dokumentáciu a predchádzajúce výskumné práce a zúčastniť sa nášho zoznamu adresátov. [chránené e-mailom]

Považujete preklad za užitočný? Píšte komentáre!

Zdroj: hab.com

Pridať komentár