Tere kõik! Eraldi Linuxi kursuse tudengitele oleme koostanud SELinuxi projekti ametliku KKK tõlke. Meie arvates võiks see tõlge olla kasulik mitte ainult tudengitele, vaid jagame seda ka teiega.

Oleme püüdnud vastata mõnedele kõige sagedamini esitatavatele küsimustele SELinuxi projekti kohta. Küsimused on jagatud praegu kaheks peamiseks kategooriaks. Kõik küsimused ja vastused on toodud .
Ülevaade
Ülevaade
- Mis on Linux, millel on täiendav turvalisus?
Linux koos parandatud turvalisusega (SELinux — Security-enhanced Linux) on Flaski turvaarhitektuuri referentsrealiseerimine paindliku kohustusliku juurdepääsu kontrolli jaoks. See loodi selleks, et näidata paindlike kohustusliku juurdepääsu juhtimise mehhanismide kasulikkust ja kuidas selliseid mehhanisme saab operatsioonisüsteemi lisada. Flaski arhitektuur integreeriti hiljem Linuxisse ja portiti mitmesse muusse süsteemi, sealhulgas Solaris'i operatsioonisüsteemi, FreeBSD operatsioonisüsteemi ja Darwin'i kernelisse, tekitades laia valiku sellega seotud töödega. Flaski arhitektuur pakub üldist tuge paljude kohustuslike juurdepääsu kontrolli poliitikate rakendamiseks, sealhulgas, mis põhinevad Type Enforcement, rollipõhisel juurdepääsu kontrollil ja mitme tasandi turvalisusel. - Mida annab Linux koos parandatud turvalisusega, mida standardne Linux ei suuda?
Linuxi tuumiga, millel on täiustatud turvalisus, seatakse kohustuslikud juurdepääsu kontrolli reeglid, mis piiravad kasutajate programme ja süsteemiservereid minimaalsete privileegide kogumiga, mida nad vajavad oma töö tegemiseks. Sellise piirangu korral väheneb või kaob nende kasutajaprogrammide ja süsteemi deemonite võime kahjustada, kui nad on ohustatud (näiteks mälu ülevoolu või vale seadistuse tõttu). See piiramismehhanism töötab sõltumatult traditsioonilistest Linuxi juurdepääsu kontrolli mehhanismidest. Sellel ei ole superkasutaja „root” mõistet ja see ei jaga tavalisi traditsiooniliste Linuxi kaitsemehhanismide puudujääke (nt sõltuvus setuid/setgid binaarfailidest).
Töötleva Linuxi süsteemi kaitstus sõltub tuuma, kõigi privileege omavate rakenduste ja nende iga konfiguratsiooni õigsusest. Probleem üheski neist valdkondadest võib viia kogu süsteemi kompromiteerimiseni. Vastupidi, muudetud Linuxi tuumal põhineva süsteemi kaitstus sõltub eelkõige tuuma ja tema turvapoliitika konfiguratsiooni õigsusest. Kuigi rakenduste õigsuse või konfiguratsiooniga seotud probleemid võivad lubada piiratud kompromiteerimist üksikute kasutajate programmide ja süsteemi demonite osas, ei kujuta need endast ohtu teistele kasutajate programmidele ja süsteemi demonitele ega süsteemi üldisele turvalisusele. - Milleks see sobib?
Uued Linuxi funktsioonid, mis pakuvad täiustatud turvalisust, on kavandatud teabe eraldamiseks vastavalt konfidentsiaalsuse ja terviklikkuse nõuetele. Need on mõeldud ennetama andmete lugemisprotsesse ja programme, andmete ja programmide valeesitamist, rakenduste turvamehhanismide vältimist, usaldusväärsete programmide käivitamist või teistele protsessidele sekkumist, rikkudes süsteemi turvapoliitikat. Samuti aitavad need piirata potentsiaalset kahju, mida võivad põhjustada pahatahtlikud või valed programmid. Need peaksid olema kasulikud ka olukordades, kus sama süsteemi kasutavad erineva turvalisuse õigustega kasutajad, et pääseda ligi erinevatele teabe liikidele, millel on erinevad turvanõuded, ilma nende nõuete kahjustamiseta. - Kuidas ma saan koopia?
Paljud Linuxi distributsioonid sisaldavad SELinuxi tuge, mis on juba vaikimisi funktsioonina või lisapakendina integreeritud. SELinuxi kasutaja taseme põhikood on saadaval . Lõppkasutajad peavad tavaliselt kasutama oma distributsioonis esitatud pakette. - Mida sisaldab teie väljaanne?
NSA SELinuxi väljaanne sisaldab SELInxi kasutajaliidese põhikoode. SELinuxi tugi on juba sisseehitatud Linux 2.6 põhituuma, mis on saadaval kernel.org-is. SELInxi kasutajaliidese põhikood koosneb raamatukogust, millega hallatakse kahepoolset poliitikat (libsepol), poliitika kompilaatorist (checkpolicy), turvalisust tagavad rakenduste raamatukogud (libselinux), poliitika haldamise tööriistade raamatukogust (libsemanage) ja mitmest poliitikaga seotud utiliidist (policycoreutils).
SELInxi toe ja põhikasutajaliidese koodi kõrval on teil vaja poliitikat ja mõningaid SELInxi jaoks kohandatud kasutusruumi pakette SELInxi kasutamiseks. Poliitikat saab hankida aadressilt . - Kas ma saan tugevdatud Linuxi installida olemasolevale Linuxi süsteemile?
Jah, saate installida ainult SELinuxi muudatused olemasolevasse Linuxi süsteemi või saate installida Linuxi jaotuse, mis juba sisaldab SELinuxi tuge. SELinux koosneb Linuxi tuumast, mis toetab SELinuxi, põhikomplektist teeke ja utiliite, mõnest muudetud kasutajapakettist ja poliitika konfiguratsioonist. Et seda installida olemasolevasse Linuxi süsteemi, millel puudub SELinuxi tugi, peate olema suuteline tarkvara kompileerima ning teil peavad olema ka muud vajalikud süsteemipaketid. Kui teie Linuxi jaotus juba sisaldab SELinuxi tuge, ei pea te valmistama ega installima NSA SELinuxi väljalaset. - Kui hästi on Linux parema turvalisusega ühilduv muutmata Linuxiga?
Linux parema turvalisusega tagab binaarse ühilduvuse olemasolevate Linuxi rakendustega ja praeguste Linuxi tuumamoodulitega, kuid mõned tuumamoodulid võivad vajada muudetud, et korralikult koostoimida SELinuxiga. Need kaks ühilduvuse kategooriat käsitletakse allpool üksikasjalikult:- Rakenduste ühilduvus
SELinux tagab kaasaolevate rakenduste binaarse ühilduvuse. Oleme laiendanud tuumateadmiste struktuure, lisades neisse uusi kaitse atribuute, ning oleme lisanud uusi API kutsungeid turvalisuse tagamiseks rakendustes. Küll aga ei ole me muutnud ühtegi rakendustele nähtavat andmestruktuuri ega muutnud olemasolevate süsteemi kutsungite liidest, seega saavad olemasolevad rakendused töötada muudatusteta, kui turvapoliitika lubab nende kasutamist. - Tuuma moduleerimise ühilduvus
Alguses pakkus SELinux algset ühilduvust ainult eksisteerivate kerneli moodulitega; neid mooduleid oli vaja uuesti kompileerida muudetud kerneli peade jaoks, et haarata uusi kaitsevälju, mis olid lisatud kerneli andmestruktuuridesse. Kuna LSM ja SELinux on nüüd integreeritud Linuxi põhikernelisse 2.6, tagab SELinux nüüd binaarühilduvuse olemasolevate kerneli moodulitega. Siiski võivad mõned kerneli moodulid SELinuxiga halvasti koostööd teha ilma muudatusteta. Näiteks kui kerneli moodul otse eraldab ja seadistab kerneli objekti ilma tavalisi initsialiseerimise funktsioone kasutamata, siis võib kerneli objektil puududa korralik turbeamet. Mõnedel kerneli moodulitel võib samuti puududa korralik turvakontroll nende toimingute üle; kõik olemasolevad kutsed kerneli funktsioonidele või õiguste funktsioonidele aktiveerivad samuti SELi turvakontrollid, kuid MAC-poliitikate järgimise tagamiseks võivad olla vajalikud detailsemad või täiendavad kontrollid.
Tugevdatud turvalisusega Linux ei tohiks tavaliste Linuxi süsteemidega koostöötamisel probleeme tekitada, kui kõik vajalikud toimingud on kübaripoliitika seadistamisega lubatud.
- Rakenduste ühilduvus
- Millised on turvapoliitika seadistuse näite eesmärgid?
Kõrgel tasemel on eesmärk näidata juurdepääsu kontrollimise mehhanismide paindlikkust ja turvalisust, pakkudes samas lihtsat ja tõhusat süsteemi, mis muudab rakendusi minimaalselt. Madalamal tasemel on poliitikal rida eesmärke, mis on kirjeldatud poliitikadoktoraadis. Nende eesmärkide seas on toorandmete juurdepääsu haldamine, tuuma, süsteemitarkvara, süsteemi konfiguratsiooni ja süsteemilogide terviklikkuse kaitse, potentsiaalse kahju piiramise võimalus, mis võib tuleneda privileege vajavate protsesside haavatavuste kasutamisest, privileegidega protsesside kaitsmine pahavara koodi täitmise eest, administraatori ja domeeni kaitse mitteautentitud kasutaja sisenemise eest, tavaliste kasutajaprotsesside sekkumise ennetamine süsteemiprotsessidesse või administraatori protsessidesse, samuti kasutajate ja administraatorite kaitsmine nende brauserites pahatahtliku mobiilkoodi haavatavuste vastu. - Miks valiti Linux põhiplatvormiks?
Linux valiti platvormiks selle töö algse viitvariandi rakendamiseks, kuna see on saavutanud kasvava edu ja avatud arenduskeskkonna. Linux pakub suurepärast võimalust näidata, et see funktsionaalsus võib olla edukas peamise operatsioonisüsteemi raames, samal ajal luues kaitse laialdaselt kasutatavale süsteemile. Linuxi platvorm pakub samuti suurepärast võimalust saada maksimaalset ülevaadet sellest tööst ja võib-olla teenib see aluseks edasistele turvauuringutele teiste entusiastide poolt. - Miks te seda tööd tegite?
Ameerika Ühendriikide Riiklik Julgeolek Agentuur vastutab teaduse ja arendustegevuse eest tehnoloogiate osas, mis on vajalikud, et NSA saaks pakkuda lahendusi, tooteid ja teenuseid, et tagada teabe infrastruktuuride küberkaitse, mis on kriitilise tähtsusega USA rahvusliku julgeoleku huvide jaoks.
Elujõulise ja turvalise operatsioonisüsteemi loomine jääb oluliseks uurimisteemaks. Meie eesmärk on luua tõhus arhitektuur, mis tagab vajaliku turbe toetuse, käivitades programme suurel määral kasutajale läbipaistvalt ja pakkudes atraktiivsust teenusepakkujatele. Usume, et oluline samm selle eesmärgi saavutamisel on näidata, kuidas sunnitud juurdepääsu juhtimise mehhanismid võivad olla edukalt integreeritud põhioperatsioonisüsteemi. - Kuidas see seondub varasemate NSA süsteemiuuringutega?
National Security Agency (NSA) teadlased koostöös Secure Computing Corporation (SCC) -iga on välja töötanud võimsa ja paindliku sundjuurdepääsu kontrolli arhitektuuri, mis põhineb Type Enforcement'i mehhanismil, mis loodi esmakordselt LOCK süsteemi jaoks. NSA ja SCC on välja arendanud kaks Mach-põhist arhitektuuri prototüüpi: DTMach ja DTOS (). NSA ja SCC tegid seejärel koostööd Utah Ülikooli uurimisrühmaga Flux, et viia arhitektuur uurimisoperatsioonisüsteemi Fluke. Selle üleviimise käigus viimati täiustati arhitektuuri, et tagada parem tugi dünaamilistele turvapoliitikatele. See täiustatud arhitektuur sai nimeks Flask (). Nüüd on NSA integreerinud Flaski arhitektuuri Linuxi operatsioonisüsteemi, et jagada seda tehnoloogiat laiemale arendajate ja kasutajate kogukonnale. - Kas Linux, millel on täiustatud turvalisus, on usaldusväärne operatsioonisüsteem?
„Usaldusväärne operatsioonisüsteem” viitab tavaliselt operatsioonisüsteemile, mis pakub piisavat tuge mitmeastmelistele kaitse- ja autentimismeetoditele, et vastata teatud riiklikele nõuetele. Turvalisuse täiustamiseks mõeldud Linux hõlmab kasulikke ideid nendest süsteemidest, kuid keskendub kohustuslikule juurdepääsukontrollile. Turvalisuse täiustamise eesmärk oli arendada kasulik funktsionaalsus, mis pakub märgatavaid kaitsebenefiite laias real reaalses keskkonnas, et demonstreerida seda tehnoloogiat. SELinux iseenesest ei ole usaldusväärne operatsioonisüsteem, aga see pakub kriitiliselt olulist kaitsefunktsiooni – kohustuslik juurdepääsukontroll – mis on vajalik usaldusväärse operatsioonisüsteemi jaoks. SELinux on integreeritud Linuxi jaotustesse, mis on hinnatud vastavalt Loodud Turvalisuse Kaitseprofiilile. Teavet sertifitseeritud ja kontrollitavate toodete kohta leiate aadressilt . - Kas see on tõeliselt kaitstud?
Kaitstud süsteem hõlmab mitmeid omadusi (nt füüsiline turvalisus, personali turvalisus jne), kuid suurenenud turvalisusega Linux käsitleb ainult väga kitsast valikut neist omadustest (ehk haldusmehhanisme operatsioonisüsteemis). Teisisõnu tähendab "kaitstud süsteem" piisavalt kaitstust, et kaitsta mõningaid andmeid reaalses maailmas reaalsete vaenlaste eest, kellele omaniku ja/või andmete kasutaja kaudu hoiatatakse. Suurenenud turvalisusega Linux on mõeldud üksnes kaasaegne operatsioonisüsteem, nagu Linux, kohustuslike haldusmehhanismide demonstreerimiseks ning seetõttu ei ole see iseenesest tõenäoliselt järgneva määratlusega kaitstud süsteem. Usume, et suure ühise turvalisusega Linuxis demonstreeritud tehnoloogia on kasulik neile, kes loovad kaitstud süsteeme. - Mida olete teinud tagatud garantii suurendamiseks?
Selle projekti eesmärk oli lisada juurdepääsukontrolli elemente, tehes Linuxis minimaalseid muudatusi. See viimane eesmärk piirab oluliselt seda, mida saab garantiide tõstmiseks teha, seetõttu ei olnud tööd suunatud Linuxi garantiide tõstmiseks. Teisest küljest tuginevad täiustused varasematele töödele kõrge usaldusväärsusega turvaarhitektuuri väljatöötamisel ning enamik disainipõhimõtteid on kantud Linuxisse täiustatud turvalisusega. - Kas CCEVS hindab Linuxi täiustatud turvalisusega?
Pelgalt täiustatud turvalisusega Linux ei ole mõeldud, et lahendada täielikku turvaprobleemide kompleksi, mis on esitatud kaitseprofiilis. Kuigi oleks võimalik hinnata ainult selle praegust funktsionaalsust, arvame, et selline hindamine oleks piiratud väärtusega. Siiski oleme teinud koostööd teistega, et integreerida see tehnoloogia Linuxi jaotustesse, mis on hinnatud, ja jaotustesse, mis on hindamisel. Kontrollitud ja hindamisel olevate toodete teavet leiate aadressilt . - Kas teie proovisite parandada mingeid haavatavusi?
Ei, me ei otsinud ega leidnud meie töö käigus mingeid haavatavusi. Me tegime ainult vajalikud muudatused, et lisada meie uued mehhanismid. - Kas see süsteem on heaks kiidetud valitsuse kasutamiseks?
Turvalisuse tõhustatud Linuxil ei ole ühtegi eriluba ega lisakinnitust valitsuse kasutamiseks võrreldes teiste Linuxi versioonidega. - Mis erineb sellest muudest algatustest?
Turvalisuse tõhustatud Linuxil on selgelt määratletud arhitektuur paindlikuks sundkontrolliks, mida on eksperimentaalselt testitud kasutades mitmeid prototüüp süsteeme (DTMach, DTOS, Flask). Arhitektuuri võimet toetada laia valikut turvapoliitikaid on uuritud põhjalikult ja need on saadaval ja .
Arhitektuur tagab põhjaliku kontrolli paljude südamiku ja teenuste abstraktsioonide üle, mida teised süsteemid ei kontrolli. Mõned turvalise Linuxi iseloomulikud omadused:- Poliitika ja rakendamisõiguste selge eristamine
- Selgelt määratletud poliitikate liidesed
- Sõltumatus konkreetsetest poliitikatest ja poliitikakeeltest
- Sõltumatus konkreetsetest formaatidest ja turvaviidete sisust
- Eraldi viidatud ja juhtseaded tuumobjektide ja teenuste jaoks
- Juhtimisotsuste vahemälu efektiivsuse tagamiseks
- Poliitikamuutuste tugi
- Protsessi initsialiseerimise ja programmide pärimist ning täitmist kontrollimine
- Failisüsteemide, kataloogide, failide ja avatud failide kirjelduste haldamine
- Sokettide, sõnumite ja võrgu liideste haldamine
- Võimaluste kasutamise kontroll
- Millised on selle süsteemi litsentsipiirangud?
Kogu saidil leitud lähtekood , on levitatav samadel tingimustel kui algsed lähtekoodid. Näiteks Linuxi kernelile mõeldud parandused ja paljudele olemasolevatele utiliitidele antud parandused, mis on siin saadaval, on välja antud kohtade . - Kas on olemas ekspordikontroll?
Linuxi laiendatud turvalisusega ei ole eksportimiseks lisahaldureid võrreldes teiste Linuxi versioonidega. - Kas NSA plaanib seda kasutada riigisiseselt?
Selgete põhjuste tõttu NSA ei kommenteeri operatiivset kasutamist. - Kas 26. juuli 2002. aasta garantii avaldus muuda Secure Computing Corporationi positsiooni NSA osas, et SELinux anti välja GNU üldise avaliku litsentsi alusel?
NSA positsioon ei ole muutunud. NSA peab endiselt, et GNU üldise avaliku litsentsi sätted reguleerivad SELinuxi kasutamist, kopeerimist, levitamist ja muutmist. Vaata. . - Kas NSA toetab avatud lähtekoodiga tarkvara?
NSA algatused tarkvaraturvalisuse tõhustamiseks hõlmavad nii patenteeritud kui ka avatud lähtekoodiga tarkvara, ning me oleme edukalt kasutanud nii patenteeritud kui ka avatud mudeleid meie uurimistöös. NSA töö tarkvaraturvalisuse tõhustamiseks on motiveeritud ühes lihtsas kaalutluses: kasutada meie ressursse maksimaalselt tõhusalt, et pakkuda klientidele parimaid võimalikke turvalisuse valikuid laialdaselt kasutatavates toodetes. NSA teadusprogrammi eesmärk on arendada tehnoloogilisi saavutusi, mida saab jagada tarkvaraarendajate kogukonnaga erinevate edastamise mehhanismide kaudu. NSA ei toeta ega propageeri ühtegi konkreetset tarkvaratoodet või ärimudelit. Pigem toetab NSA turvalisuse tõhustamist. - Kas NSA toetab Linuxit?
Nagu eespoolmainitud, ei toeta ega edenda NSA mingit konkreetset tarkvaratoode või platvormi; NSA toetab ainult turvalisuse suurendamist. Flaski arhitektuur, mida demonstreeritakse SELinuxi näidisrakenduses, on viidud üle mitmesse muusse operatsioonisüsteemi, sealhulgas Solaris, FreeBSD ja Darwin, viidud üle Xen hypervisori ja rakendatud sellistele programmidele nagu X Window System, GConf, D-BUS ja PostgreSQL. Flaski arhitektuuri kontseptsioonid on laialdaselt kohandatavad erinevatele süsteemidele ja keskkondadele.
Koostöö
- Kuidas plaanime suhelda Linuxi kogukonnaga?
Meil on , mis teenib meie peamise viisina teabe avaldamiseks Linuxi täiustatud turvalisuse kohta. Kui olete huvitatud Linuxist, millel on suurenenud turvalisus, soovitame liituda arendajate postitusloendiga, vaadata lähtekoodi ja esitada oma tagasiside (või koodi). Arendajate postitusloendiga liitumiseks, vaata. . - Kes saab aidata?
SELinux on nüüd toetatud ja arendatud Linuxi avatud lähtekoodiga tarkvara arendajate kogukonna poolt. - Kas NSA rahastab mingeid edasisi tööde tegemisi?
Praegu NSA edasisi ettepanekuid ei kaaluta. - Millist tüüpi toetust on saadaval?
Planeerime küsimustega tegelema selinux@tycho.nsa.gov meililistist, kuid me ei suuda vastata kõigile spetsiifilistele küsimustele. - Kes aitas? Mida nad tegid?
Rohkem turvalisust pakkuv Linuxi prototüüp kujundati NSA poolt koos NAI Labs, Secure Computing Corporation (SCC) ja MITER Corporationi uurimispartneritega. Algsele avalikule väljaandele järgnes hulk muid materjale. . - Kuidas ma saan rohkem teada?
Soovitame külastada meie veebilehti, lugeda dokumentatsiooni ja varasemaid teadusuuringute töid, samuti liituda meie meililistiga selinux@vger.kernel.org.
Kas leiate tõlke kasulikuna? Jagage oma mõtteid!
Allikas: habr.com
