SELinux često postavljana pitanja (FAQ)

Zdravo svima! Posebno za studente kurseva "Linux sigurnost" pripremili smo prijevod službenog FAQ projekta SELinux. Čini nam se da ovaj prijevod može biti koristan ne samo studentima, pa ga dijelimo s vama.

SELinux često postavljana pitanja (FAQ)

Pokušali smo odgovoriti na neka od najčešće postavljanih pitanja o projektu SELinux. Pitanja su trenutno podijeljena u dvije glavne kategorije. Sva pitanja i odgovori su dati na stranici FAQ.

pregled

pregled

  1. Šta je bezbednosno poboljšani Linux?
    Sigurnosno poboljšani Linux (SELinux) je referentna implementacija Flask sigurnosne arhitekture za fleksibilnu, prinudnu kontrolu pristupa. Napravljen je da pokaže korisnost fleksibilnih mehanizama za sprovođenje i kako se takvi mehanizmi mogu dodati u operativni sistem. Flask arhitektura je kasnije integrisana u Linux i portovana na nekoliko drugih sistema, uključujući operativni sistem Solaris, operativni sistem FreeBSD i Darwin kernel, što je dovelo do širokog spektra povezanih poslova. Flask arhitektura pruža opštu podršku za sprovođenje mnogih tipova politika primene kontrole pristupa, uključujući one zasnovane na konceptima primene tipa, kontrole pristupa zasnovane na ulogama i bezbednosti na više nivoa.
  2. Šta bezbednosno poboljšani Linux pruža ono što standardni Linux ne može?
    Sigurnosno poboljšano jezgro Linuxa provodi prisilne politike kontrole pristupa koje ograničavaju korisničke programe i sistemske servere na minimalni skup privilegija koje su im potrebne za obavljanje svog posla. Sa ovim ograničenjem, smanjena je ili eliminisana sposobnost ovih korisničkih programa i sistemskih demona da prouzrokuju štetu u slučaju kompromisa (na primjer, zbog prekoračenja bafera ili pogrešne konfiguracije). Ovaj mehanizam ograničenja radi nezavisno od tradicionalnih Linux mehanizama kontrole pristupa. Nema koncept "root" superkorisnika i ne dijeli dobro poznate nedostatke tradicionalnih Linux sigurnosnih mehanizama (npr. ovisnost o binarnim datotekama setuid/setgid).
    Sigurnost neizmijenjenog Linux sistema ovisi o ispravnosti kernela, svih privilegiranih aplikacija i svake njihove konfiguracije. Problem u bilo kojoj od ovih oblasti može ugroziti cijeli sistem. Nasuprot tome, sigurnost modificiranog sistema baziranog na Linux kernelu s poboljšanom sigurnošću ovisi prvenstveno o ispravnosti kernela i konfiguraciji njegove sigurnosne politike. Iako problemi s ispravnošću ili konfiguracijom aplikacije mogu dozvoliti ograničeni kompromis pojedinačnih korisničkih programa i sistemskih demona, oni ne predstavljaju sigurnosni rizik za druge korisničke programe i sistemske demone ili sigurnost sistema u cjelini.
  3. Za šta je ona dobra?
    Nove sigurnosne značajke Linuxa su dizajnirane da pruže segregaciju informacija na osnovu zahtjeva za povjerljivost i integritet. Oni su dizajnirani da spriječe procese da čitaju podatke i programe, mijenjaju podatke i programe, zaobilaze sigurnosne mehanizme aplikacija, izvršavaju nepouzdane programe ili ometaju druge procese kršeći sigurnosnu politiku sistema. Oni također pomažu da se ograniči potencijalna šteta koju mogu uzrokovati zlonamjerni softver ili neispravni programi. Oni bi također trebali biti korisni da osiguraju da korisnici s različitim sigurnosnim dozvolama mogu koristiti isti sistem za pristup različitim vrstama informacija s različitim sigurnosnim zahtjevima bez ugrožavanja tih zahtjeva.
  4. Kako mogu dobiti kopiju?
    Mnoge Linux distribucije uključuju podršku za SELinux koji je već ugrađen kao zadanu funkciju ili kao opcioni paket. Osnovni SELinux korisnički kod je dostupan na GitHub. Krajnji korisnici bi općenito trebali koristiti pakete koje obezbjeđuje njihova distribucija.
  5. Šta je uključeno u vaše izdanje?
    NSA izdanje SELinuxa uključuje osnovni SELinux korisnički kod. Podrška za SELinux je već uključena u mainstream Linux 2.6 kernel, dostupan na kernel.org. Osnovni SELinux korisnički kod se sastoji od biblioteke za manipulaciju binarnom politikom (libsepol), kompajlera politike (checkpolicy), biblioteke za sigurnosne aplikacije (libselinux), biblioteke za alate za upravljanje politikama (libsemanage) i nekoliko uslužnih programa vezanih za politike ( policycoreutils).
    Pored kernela sa omogućenim SELinuxom i osnovnog korisničkog koda, trebat će vam politika i neki SELinux zakrpljeni paketi korisničkog prostora da biste koristili SELinux. Polisa se može dobiti od Projekt referentne politike SELinuxa.
  6. Mogu li instalirati ojačani Linux na postojeći Linux sistem?
    Da, možete instalirati samo SELinux modifikacije na postojeći Linux sistem, ili možete instalirati Linux distribuciju koja već uključuje podršku za SELinux. SELinux se sastoji od Linux kernela sa podrškom za SELinux, osnovnog skupa biblioteka i uslužnih programa, nekih modificiranih korisničkih paketa i konfiguracije politike. Da biste ga instalirali na postojeći Linux sistem koji nema podršku za SELinux, morate biti u mogućnosti da kompajlirate softver i također imate druge potrebne sistemske pakete. Ako vaša Linux distribucija već uključuje podršku za SELinux, ne morate da pravite ili instalirate NSA izdanje SELinuxa.
  7. Koliko je sigurnosno poboljšani Linux kompatibilan s neizmijenjenim Linuxom?
    Sigurnosno poboljšani Linux pruža binarnu kompatibilnost sa postojećim Linux aplikacijama i postojećim modulima jezgre Linuxa, ali neki moduli kernela mogu zahtijevati modifikaciju da bi pravilno komunicirali sa SELinuxom. Ove dvije kategorije kompatibilnosti su detaljno razmotrene u nastavku:

    • Kompatibilnost aplikacija
      SELinux pruža binarnu kompatibilnost sa postojećim aplikacijama. Proširili smo strukture podataka kernela kako bismo uključili nove sigurnosne atribute i dodali nove API pozive za sigurnosne aplikacije. Međutim, nismo promijenili nijednu strukturu podataka vidljivu aplikaciji, niti smo promijenili sučelje bilo kojeg postojećeg sistemskog poziva, tako da postojeće aplikacije i dalje mogu raditi sve dok im sigurnosna politika to dozvoljava.
    • Kompatibilnost modula kernela
      U početku je SELinux pružao samo početnu kompatibilnost za postojeće module kernela; bilo je potrebno ponovo kompajlirati takve module sa modifikovanim zaglavljima kernela kako bi se pokupila nova sigurnosna polja dodana strukturama podataka kernela. Budući da su LSM i SELinux sada integrirani u mainstream Linux 2.6 kernel, SELinux sada pruža binarnu kompatibilnost sa postojećim modulima kernela. Međutim, neki moduli kernela možda neće dobro komunicirati sa SELinuxom bez modifikacija. Na primjer, ako modul kernela direktno dodjeljuje i postavlja objekt kernela bez korištenja normalnih funkcija inicijalizacije, tada objekt kernela možda neće imati odgovarajuće sigurnosne informacije. Nekim modulima kernela možda nedostaju odgovarajuće sigurnosne kontrole za svoje operacije; svi postojeći pozivi funkcijama kernela ili funkcijama dozvola također će pokrenuti SELinux provjere dozvola, ali će možda biti potrebne detaljnije ili dodatne kontrole za provođenje MAC politika.
      Sigurnosno poboljšani Linux ne bi trebao stvarati probleme interoperabilnosti sa regularnim Linux sistemima ako su sve potrebne operacije dozvoljene konfiguracijom sigurnosne politike.
  8. Koja je svrha primjera konfiguracije sigurnosne politike?
    Na visokom nivou, cilj je demonstrirati fleksibilnost i sigurnost prinudnih kontrola pristupa i obezbijediti jednostavan radni sistem sa minimalnim promjenama u aplikaciji. Na nižem nivou, politika ima skup ciljeva, opisanih u dokumentaciji politike. Ovi ciljevi uključuju kontrolu pristupa sirovim podacima, zaštitu integriteta kernela, sistemskog softvera, informacija o konfiguraciji sistema i sistemskih dnevnika, ograničavanje potencijalne štete koja bi mogla biti uzrokovana iskorištavanjem ranjivosti u procesu koji zahtijeva privilegije, zaštitu privilegovanih procesa od izvršavanja zlonamjernih koda, zaštiti ulogu administratora i domenu od prijavljivanja bez autentifikacije korisnika, spriječi da normalni korisnički procesi ometaju sistemske ili administrativne procese i zaštite korisnike i administratore od iskorišćavanja ranjivosti u svom pretraživaču zlonamjernim mobilnim kodom.
  9. Zašto je Linux izabran kao osnovna platforma?
    Linux je izabran kao platforma za početnu referentnu implementaciju ovog rada zbog svog rastućeg uspjeha i otvorenog razvojnog okruženja. Linux pruža odličnu priliku da se pokaže da ova funkcionalnost može biti uspješna na glavnom operativnom sistemu i, u isto vrijeme, doprinijeti sigurnosti sistema koji se široko koristi. Linux platforma takođe pruža odličnu priliku da ovaj rad dobije najširi mogući pregled i možda posluži kao osnova za dodatna bezbednosna istraživanja drugih entuzijasta.
  10. Zašto ste radili ovaj posao?
    Nacionalna laboratorija za istraživanje sigurnosti informacija Agencija za nacionalnu sigurnost odgovorna je za istraživanje i razvoj napredne tehnologije kako bi omogućila NSA-i da pruži rješenja, proizvode i usluge za informatičku sigurnost informacijskoj infrastrukturi kritičnoj za interese nacionalne sigurnosti SAD-a.
    Stvaranje održivog sigurnog operativnog sistema ostaje veliki istraživački izazov. Naš cilj je stvoriti efikasnu arhitekturu koja pruža neophodnu podršku za sigurnost, pokreće programe na u velikoj mjeri transparentan način za korisnika i privlačna je dobavljačima. Vjerujemo da je važan korak u postizanju ovog cilja pokazati kako se mehanizmi prisilne kontrole pristupa mogu uspješno integrirati u glavni operativni sistem.
  11. Kako je ovo povezano s prethodnim istraživanjem OS NSA?
    Istraživači iz Nacionalne istraživačke laboratorije NSA-e udružili su se sa Secure Computing Corporation (SCC) kako bi razvili moćnu i fleksibilnu arhitekturu primjene zasnovanu na Type Enforcementu, mehanizmu koji je pionir LOCK sistem. NSA i SCC razvili su dva prototipa arhitekture zasnovane na Machu: DTMach i DTOS (http://www.cs.utah.edu/flux/dtos/). NSA i SCC su zatim sarađivali sa Flux Research Group na Univerzitetu Utah na prenosu arhitekture na Fluke Research operativni sistem. Tokom ove migracije, arhitektura je rafinirana kako bi pružila bolju podršku za dinamičke sigurnosne politike. Ova poboljšana arhitektura je nazvana Flask (http://www.cs.utah.edu/flux/flask/). Sada je NSA integrisala Flask arhitekturu u Linux operativni sistem kako bi donijela tehnologiju široj zajednici programera i korisnika.
  12. Da li je Linux sa poboljšanom bezbednošću pouzdan operativni sistem?
    Izraz "pouzdani operativni sistem" općenito se odnosi na operativni sistem koji pruža dovoljnu podršku za slojevitu sigurnost i validaciju kako bi se ispunio određeni skup vladinih zahtjeva. Sigurnosno poboljšani Linux uključuje korisne uvide iz ovih sistema, ali se fokusira na prisilnu kontrolu pristupa. Prvobitni cilj razvoja Linuxa poboljšanog sigurnosti bio je stvoriti korisnu funkcionalnost koja pruža opipljive sigurnosne prednosti u širokom spektru okruženja u stvarnom svijetu kako bi se demonstrirala ova tehnologija. SELinux sam po sebi nije pouzdan operativni sistem, ali pruža kritičnu sigurnosnu funkciju – prinudnu kontrolu pristupa – neophodnu za pouzdani operativni sistem. SELinux je integriran u Linux distribucije koje su ocijenjene prema Označenom profilu sigurnosne zaštite. Informacije o testiranim i testiranim proizvodima možete pronaći na http://niap-ccevs.org/.
  13. Da li je zaista zaštićena?
    Koncept sigurnog sistema uključuje mnoge atribute (na primjer, fizičku sigurnost, sigurnost osoblja, itd.), a Linux sa naprednom sigurnošću adresira samo vrlo uzak skup ovih atributa (to jest, kontrole primjene operativnog sistema). Drugim riječima, "siguran sistem" znači dovoljno siguran da zaštiti neke informacije u stvarnom svijetu od stvarnog protivnika na kojeg se upozorava vlasnik i/ili korisnik informacija. Sigurnosno poboljšani Linux je namijenjen samo da prikaže potrebne kontrole u modernom operativnom sistemu kao što je Linux, pa je malo vjerovatno da će sam po sebi odgovarati bilo kojoj zanimljivoj definiciji sigurnog sistema. Vjerujemo da će tehnologija demonstrirana u Linuxu s poboljšanom sigurnošću biti korisna ljudima koji grade sigurne sisteme.
  14. Šta ste uradili da poboljšate garanciju?
    Cilj ovog projekta je bio dodavanje prisilnih kontrola pristupa uz minimalne promjene u Linux. Ovaj posljednji cilj ozbiljno ograničava ono što se može učiniti za poboljšanje jamstva, tako da nije bilo posla na poboljšanju jamstva za Linux. S druge strane, poboljšanja se nadovezuju na prethodni rad na dizajniranju sigurnosne arhitekture visoke sigurnosti, a većina ovih principa dizajna prenijeta je na Linux poboljšani sigurnost.
  15. Hoće li CCEVS procijeniti Linux uz poboljšanu sigurnost?
    Sam po sebi, Linux sa poboljšanom bezbednošću nije dizajniran za rešavanje celog skupa bezbednosnih problema koje predstavlja bezbednosni profil. Iako bi bilo moguće ocijeniti samo njegovu trenutnu funkcionalnost, vjerujemo da bi takva procjena imala ograničenu vrijednost. Međutim, radili smo s drugima na uključivanju ove tehnologije u distribucije Linuxa koje su procijenjene i distribucije koje su u evaluaciji. Informacije o testiranim i testiranim proizvodima možete pronaći na http://niap-ccevs.org/.
  16. Da li ste pokušali da popravite neku ranjivost?
    Ne, nismo tražili niti pronašli bilo kakve ranjivosti u toku našeg rada. Dali smo samo dovoljno od minimalnog da dodamo naše nove opreme.
  17. Da li je ovaj sistem odobren za upotrebu u vladi?
    Sigurnosno poboljšani Linux nema posebno ili dodatno odobrenje za vladinu upotrebu u odnosu na bilo koju drugu verziju Linuxa. Sigurnosno poboljšani Linux nema posebno ili dodatno odobrenje za korištenje od strane vlasti u odnosu na bilo koju drugu verziju Linuxa.
  18. Po čemu se ovo razlikuje od drugih inicijativa?
    Sigurnosno poboljšani Linux ima dobro definiranu arhitekturu za fleksibilnu prinudnu kontrolu pristupa koja je eksperimentalno testirana sa nekoliko prototipnih sistema (DTMach, DTOS, Flask). Izvršene su detaljne studije o sposobnosti arhitekture da podrži širok spektar sigurnosnih politika i dostupne su u http://www.cs.utah.edu/flux/dtos/ и http://www.cs.utah.edu/flux/flask/.
    Arhitektura pruža finu kontrolu nad mnogim apstrakcijama jezgra i uslugama koje ne kontrolišu drugi sistemi. Neke od karakterističnih karakteristika Linux sistema sa proširenom bezbednošću su:

    • Čisto odvajanje politike od prava na izvršenje
    • Dobro definirana sučelja politike
    • Nezavisnost od specifičnih politika i jezika politike
    • Nezavisnost od specifičnih formata i sadržaja sigurnosnih naljepnica
    • Odvojene oznake i kontrole za objekte i usluge kernela
    • Keširanje odluka pristupa za efikasnost
    • Podrška promjenama politike
    • Kontrola nad inicijalizacijom procesa i nasljeđivanjem i izvršavanjem programa
    • Upravljanje sistemima datoteka, direktorijumima, datotekama i opisima otvorenih datoteka
    • Upravljanje utičnicama, porukama i mrežnim sučeljima
    • Kontrola nad korištenjem "Mogućnosti"
  19. Koja su ograničenja licenciranja za ovaj sistem?
    Sav izvorni kod se nalazi na stranici https://www.nsa.gov, distribuira se pod istim uslovima kao i originalni izvorni kodovi. Na primjer, popravci za Linux kernel i popravci za mnoge postojeće uslužne programe koji su ovdje dostupni su objavljeni pod uslovima GNU Opšta javna licenca (GPL).
  20. Postoje li kontrole izvoza?
    Ne postoje dodatne kontrole izvoza za Linux s proširenom sigurnošću u odnosu na bilo koju drugu verziju Linuxa.
  21. Planira li ga NSA koristiti u zemlji?
    Iz očiglednih razloga, NSA ne komentira operativnu upotrebu.
  22. Da li Izjava o garancijama Secure Computing Corporation od 26. jula 2002. mijenja stav NSA da je SELinux stavljen na raspolaganje pod GNU Općom javnom licencom?
    Stav NSA se nije promijenio. NSA i dalje vjeruje da odredbe i uvjeti GNU Opće javne licence reguliraju korištenje, kopiranje, distribuciju i modifikaciju SELinuxa. Cm. NSA saopštenje za javnost 2. januara 2001.
  23. Da li NSA podržava softver otvorenog koda?
    NSA-ine inicijative za sigurnost softvera obuhvataju i vlasnički i softver otvorenog koda, a mi smo uspješno koristili i vlasničke i modele otvorenog koda u našim istraživačkim aktivnostima. Rad NSA na poboljšanju sigurnosti softvera motiviran je jednim jednostavnim razmatranjem: da maksimalno iskoristimo naše resurse kako bismo klijentima NSA pružili najbolje moguće sigurnosne opcije u njihovim najčešće korištenim proizvodima. Cilj NSA-inog istraživačkog programa je razvoj tehnološkog napretka koji se može podijeliti sa zajednicom za razvoj softvera kroz različite mehanizme prijenosa. NSA ne podržava niti promovira bilo koji određeni softverski proizvod ili poslovni model. Umjesto toga, NSA promovira sigurnost.
  24. Da li NSA podržava Linux?
    Kao što je gore navedeno, NSA ne podržava niti promovira bilo koji određeni softverski proizvod ili platformu; NSA samo doprinosi povećanju sigurnosti. Flask arhitektura demonstrirana u SELinux referentnoj implementaciji je portovana na nekoliko drugih operativnih sistema uključujući Solaris, FreeBSD i Darwin, portirana na Xen hipervizor i primijenjena na aplikacije kao što su X Window System, GConf, D-BUS i PostgreSQL . Koncepti arhitekture flask-a su široko primjenjivi na širok spektar sistema i okruženja.

Suradnja

  1. Kako planiramo da komuniciramo sa Linux zajednicom?
    Imamo skup web stranica na NSA.gov, koji će nam služiti kao glavni način za objavljivanje informacija o Linuxu poboljšanih sigurnosti. Ako ste zainteresovani za Linux sa poboljšanom bezbednošću, preporučujemo vam da se pridružite mailing listi programera, pogledate izvorni kod i date svoje povratne informacije (ili kod). Da biste se pridružili mailing listi programera, pogledajte Stranica mailing liste SELinux programera.
  2. Ko može pomoći?
    SELinux sada održava i poboljšava Linux softverska zajednica otvorenog koda.
  3. Da li NSA finansira bilo kakav naknadni rad?
    NSA trenutno ne razmatra prijedloge za dalji rad.
  4. Koja vrsta podrške je dostupna?
    Namjeravamo rješavati probleme putem mailing liste [email zaštićen], ali nećemo moći odgovoriti na sva pitanja vezana za određenu stranicu.
  5. Ko je pomogao? Šta su uradili?
    Sigurnosno poboljšani Linux prototip je razvio NSA sa istraživačkim partnerima iz NAI Labs, Secure Computing Corporation (SCC) i MITER Corporation. Mnogo više materijala uslijedilo je nakon prvog javnog objavljivanja. Pogledajte listu učesnika.
  6. Kako mogu saznati više?
    Pozivamo vas da posjetite naše web stranice, pročitate dokumentaciju i prethodne istraživačke radove i učestvujete na našoj mailing listi. [email zaštićen]

Smatrate li prijevod korisnim? Pišite komentare!

izvor: www.habr.com

Dodajte komentar