SELinux veelgestelde vragen (FAQ)

Dag Allemaal! Vooral voor cursusstudenten "Linux-beveiliging" we hebben een vertaling gemaakt van de officiële FAQ van het SELinux-project. Het lijkt ons dat deze vertaling niet alleen nuttig kan zijn voor studenten, dus we delen het met u.

SELinux veelgestelde vragen (FAQ)

We hebben geprobeerd enkele van de meest gestelde vragen over het SELinux-project te beantwoorden. De vragen zijn momenteel onderverdeeld in twee hoofdcategorieën. Alle vragen en antwoorden worden gegeven op de FAQ-pagina.

Recensie

Recensie

  1. Wat is met beveiliging verbeterde Linux?
    Security-enhanced Linux (SELinux) is de referentie-implementatie van de Flask-beveiligingsarchitectuur voor flexibele, afgedwongen toegangscontrole. Het is gemaakt om het nut van flexibele handhavingsmechanismen aan te tonen en hoe dergelijke mechanismen aan een besturingssysteem kunnen worden toegevoegd. De Flask-architectuur werd vervolgens geïntegreerd in Linux en overgezet naar verschillende andere systemen, waaronder het Solaris-besturingssysteem, het FreeBSD-besturingssysteem en de Darwin-kernel, wat aanleiding gaf tot een breed scala aan gerelateerd werk. De Flask-architectuur biedt algemene ondersteuning voor het afdwingen van vele soorten beleid voor het afdwingen van toegangscontrole, inclusief beleid dat gebaseerd is op de concepten van typehandhaving, op rollen gebaseerd toegangscontrole en beveiliging op meerdere niveaus.
  2. Wat biedt Linux met verbeterde beveiliging dat standaard Linux niet kan?
    De verbeterde Linux-kernel dwingt afgedwongen toegangscontrolebeleid af dat gebruikersprogramma's en systeemservers beperkt tot de minimale set privileges die ze nodig hebben om hun werk te doen. Met deze beperking wordt de mogelijkheid van deze gebruikersprogramma's en systeemdaemons om schade aan te richten in het geval van een compromis (bijvoorbeeld als gevolg van een bufferoverloop of verkeerde configuratie) verminderd of geëlimineerd. Dit beperkingsmechanisme werkt onafhankelijk van traditionele Linux-toegangscontrolemechanismen. Het heeft niet het concept van een "root"-superuser, en deelt niet de bekende tekortkomingen van traditionele Linux-beveiligingsmechanismen (bijv. afhankelijkheid van setuid/setgid binaries).
    De beveiliging van een ongewijzigd Linux-systeem hangt af van de juistheid van de kernel, alle geprivilegieerde applicaties en elk van hun configuraties. Een probleem op een van deze gebieden kan het hele systeem in gevaar brengen. Daarentegen hangt de beveiliging van een aangepast systeem op basis van de verbeterde Linux-kernel voornamelijk af van de juistheid van de kernel en de configuratie van het beveiligingsbeleid. Hoewel problemen met de juistheid of configuratie van de toepassing een beperkte inbreuk kunnen maken op individuele gebruikersprogramma's en systeemdaemons, vormen ze geen beveiligingsrisico voor andere gebruikersprogramma's en systeemdaemons of voor de beveiliging van het systeem als geheel.
  3. Waar is ze goed voor?
    De nieuwe beveiligingsfuncties van Linux zijn ontworpen om informatie te scheiden op basis van vereisten op het gebied van vertrouwelijkheid en integriteit. Ze zijn ontworpen om te voorkomen dat processen gegevens en programma's lezen, knoeien met gegevens en programma's, toepassingsbeveiligingsmechanismen omzeilen, niet-vertrouwde programma's uitvoeren of andere processen verstoren die in strijd zijn met het systeembeveiligingsbeleid. Ze helpen ook de potentiële schade te beperken die kan worden veroorzaakt door malware of programma's met fouten. Ze moeten ook nuttig zijn om ervoor te zorgen dat gebruikers met verschillende beveiligingsmachtigingen hetzelfde systeem kunnen gebruiken om toegang te krijgen tot verschillende soorten informatie met verschillende beveiligingsvereisten zonder die vereisten in gevaar te brengen.
  4. Hoe kan ik een kopie krijgen?
    Veel Linux-distributies bevatten ondersteuning voor SELinux die al is ingebouwd als een standaardfunctie of als een optioneel pakket. De core SELinux userland-code is beschikbaar op GitHub. Eindgebruikers moeten over het algemeen de pakketten gebruiken die door hun distributie worden geleverd.
  5. Wat staat er in je release?
    De NSA release van SELinux bevat de core SELinux userland code. Ondersteuning voor SELinux is al opgenomen in de reguliere Linux 2.6-kernel, verkrijgbaar via kernel.org. De kerncode van SELinux userland bestaat uit een bibliotheek voor binaire beleidsmanipulatie (libsepol), een beleidscompiler (checkpolicy), een bibliotheek voor beveiligingstoepassingen (libselinux), een bibliotheek voor beleidsbeheertools (libsemanage) en verschillende beleidsgerelateerde hulpprogramma's ( policycoreutils).
    Naast de SELinux-enabled kernel en basis userland-code, heb je een beleid en enkele SELinux gepatchte gebruikersruimtepakketten nodig om SELinux te gebruiken. Het beleid is verkrijgbaar bij SELinux referentiebeleidsproject.
  6. Kan ik geharde Linux installeren op een bestaand Linux-systeem?
    Ja, je kunt SELinux-aanpassingen alleen op een bestaand Linux-systeem installeren, of je kunt een Linux-distributie installeren die al SELinux-ondersteuning bevat. SELinux bestaat uit een Linux-kernel met SELinux-ondersteuning, een kernset van bibliotheken en hulpprogramma's, enkele gewijzigde gebruikerspakketten en een beleidsconfiguratie. Om het te installeren op een bestaand Linux-systeem dat SELinux-ondersteuning mist, moet je de software kunnen compileren en ook andere vereiste systeempakketten hebben. Als je Linux-distributie al ondersteuning voor SELinux bevat, hoef je de NSA-release van SELinux niet te bouwen of te installeren.
  7. Hoe compatibel is Linux met verbeterde beveiliging met ongewijzigde Linux?
    Beveiligingsverbeterde Linux biedt binaire compatibiliteit met bestaande Linux-applicaties en met bestaande Linux-kernelmodules, maar sommige kernelmodules kunnen aanpassing nodig hebben om correct te kunnen communiceren met SELinux. Deze twee compatibiliteitscategorieën worden hieronder in detail besproken:

    • Compatibiliteit van applicaties
      SELinux biedt binaire compatibiliteit met bestaande applicaties. We hebben de datastructuren van de kernel uitgebreid met nieuwe beveiligingsattributen en nieuwe API-aanroepen voor beveiligingstoepassingen. We hebben echter geen gegevensstructuren gewijzigd die zichtbaar zijn voor applicaties, noch hebben we de interface van bestaande systeemaanroepen gewijzigd, dus bestaande applicaties kunnen nog steeds worden uitgevoerd zolang het beveiligingsbeleid dit toestaat.
    • Compatibiliteit met kernelmodules
      Aanvankelijk bood SELinux alleen initiële compatibiliteit voor bestaande kernelmodules; het was nodig om dergelijke modules opnieuw te compileren met gewijzigde kernelheaders om de nieuwe beveiligingsvelden op te pikken die aan de kernelgegevensstructuren waren toegevoegd. Omdat LSM en SELinux nu zijn geïntegreerd in de reguliere Linux 2.6-kernel, biedt SELinux nu binaire compatibiliteit met bestaande kernelmodules. Sommige kernelmodules werken echter mogelijk niet goed samen met SELinux zonder aanpassingen. Als een kernelmodule bijvoorbeeld direct een kernelobject toewijst en instelt zonder de normale initialisatiefuncties te gebruiken, heeft het kernelobject mogelijk niet de juiste beveiligingsinformatie. Sommige kernelmodules missen mogelijk ook de juiste beveiligingscontroles op hun werking; elke bestaande aanroep naar kernelfuncties of toestemmingsfuncties zal ook SELinux-toestemmingscontroles activeren, maar meer fijnmazige of aanvullende controles kunnen nodig zijn om MAC-beleid af te dwingen.
      Linux met verbeterde beveiliging zou geen interoperabiliteitsproblemen met reguliere Linux-systemen moeten veroorzaken als alle noodzakelijke bewerkingen zijn toegestaan ​​door de configuratie van het beveiligingsbeleid.
  8. Wat is het doel van het configuratievoorbeeld van het beveiligingsbeleid?
    Op een hoog niveau is het doel om de flexibiliteit en veiligheid van gedwongen toegangscontroles aan te tonen en een eenvoudig werkend systeem te bieden met minimale applicatiewijzigingen. Op een lager niveau heeft een beleid een reeks doelen, beschreven in de beleidsdocumentatie. Deze doelen omvatten het controleren van de toegang tot onbewerkte gegevens, het beschermen van de integriteit van de kernel, systeemsoftware, systeemconfiguratie-informatie en systeemlogboeken, het beperken van de potentiële schade die kan worden veroorzaakt door misbruik te maken van een kwetsbaarheid in een proces waarvoor privileges vereist zijn, het beschermen van geprivilegieerde processen tegen het uitvoeren van kwaadaardige code, beschermen de beheerdersrol en het domein tegen inloggen zonder gebruikersauthenticatie, voorkomen dat normale gebruikersprocessen het systeem of de beheerdersprocessen verstoren, en beschermen gebruikers en beheerders tegen misbruik van kwetsbaarheden in hun browser door schadelijke mobiele code.
  9. Waarom werd Linux gekozen als basisplatform?
    Vanwege het groeiende succes en de open ontwikkelomgeving werd Linux gekozen als platform voor de eerste referentie-implementatie van dit werk. Linux biedt een uitstekende gelegenheid om aan te tonen dat deze functionaliteit succesvol kan zijn op een hostbesturingssysteem en tegelijkertijd kan bijdragen aan de beveiliging van een veelgebruikt systeem. Het Linux-platform biedt ook een uitstekende gelegenheid voor dit werk om een ​​zo breed mogelijk beeld te krijgen en misschien als basis te dienen voor aanvullend beveiligingsonderzoek door andere enthousiastelingen.
  10. Waarom heb je dit werk gedaan?
    Nationaal onderzoekslaboratorium voor informatiebeveiliging De National Security Agency is verantwoordelijk voor onderzoek en geavanceerde technologieontwikkeling om de NSA in staat te stellen informatiebeveiligingsoplossingen, -producten en -diensten te leveren aan informatie-infrastructuren die cruciaal zijn voor de Amerikaanse nationale veiligheidsbelangen.
    Het creëren van een levensvatbaar veilig besturingssysteem blijft een grote onderzoeksuitdaging. Ons doel is om een ​​efficiënte architectuur te creëren die de nodige ondersteuning voor beveiliging biedt, programma's op een grotendeels transparante manier voor de gebruiker uitvoert en aantrekkelijk is voor leveranciers. Wij zijn van mening dat een belangrijke stap om dit doel te bereiken, is aan te tonen hoe geforceerde toegangscontrolemechanismen met succes kunnen worden geïntegreerd in het hoofdbesturingssysteem.
  11. Hoe verhoudt dit zich tot eerder OS NSA-onderzoek?
    Onderzoekers van het National Assurance Research Laboratory van de NSA werken samen met de Secure Computing Corporation (SCC) om een ​​krachtige en flexibele handhavingsarchitectuur te ontwikkelen op basis van Type Enforcement, een mechanisme ontwikkeld door het LOCK-systeem. De NSA en SCC ontwikkelden twee prototype-architecturen op basis van Mach: DTMach en DTOS (http://www.cs.utah.edu/flux/dtos/). De NSA en SCC werkten vervolgens samen met de Flux Research Group aan de Universiteit van Utah om de architectuur over te zetten naar het Fluke Research-besturingssysteem. Tijdens deze migratie is de architectuur verfijnd om dynamisch beveiligingsbeleid beter te ondersteunen. Deze verbeterde architectuur heeft de naam Flask gekregen (http://www.cs.utah.edu/flux/flask/). Nu heeft NSA de Flask-architectuur geïntegreerd in het Linux-besturingssysteem om de technologie beschikbaar te maken voor de bredere ontwikkelaars- en gebruikersgemeenschap.
  12. Is Linux met verbeterde beveiliging een betrouwbaar besturingssysteem?
    De uitdrukking "Vertrouwd besturingssysteem" verwijst over het algemeen naar een besturingssysteem dat voldoende ondersteuning biedt voor gelaagde beveiliging en validatie om te voldoen aan een specifieke reeks overheidsvereisten. Beveiligingsverbeterde Linux bevat nuttige inzichten van deze systemen, maar richt zich op gedwongen toegangscontrole. Het oorspronkelijke doel van het ontwikkelen van Linux met verbeterde beveiliging was om nuttige functionaliteit te creëren die tastbare beveiligingsvoordelen biedt in een breed scala van real-world omgevingen om deze technologie te demonstreren. SELinux is zelf geen vertrouwd besturingssysteem, maar het biedt wel een kritieke beveiligingsfunctie - afgedwongen toegangscontrole - die nodig is voor een vertrouwd besturingssysteem. SELinux is geïntegreerd in Linux-distributies die zijn beoordeeld volgens het Labeled Security Protection Profile. Informatie over geteste en geteste producten vindt u op http://niap-ccevs.org/.
  13. Is ze echt beschermd?
    Het concept van een veilig systeem omvat veel attributen (bijvoorbeeld fysieke beveiliging, personeelsbeveiliging, enz.), en Linux met verbeterde beveiliging adresseert slechts een zeer beperkte set van deze attributen (dat wil zeggen, de handhavingscontroles van het besturingssysteem). Met andere woorden, "beveiligd systeem" betekent veilig genoeg om bepaalde informatie in de echte wereld te beschermen tegen een echte tegenstander waarvoor de eigenaar en/of gebruiker van de informatie wordt gewaarschuwd. Beveiligingsverbeterde Linux is alleen bedoeld om de vereiste controles in een modern besturingssysteem zoals Linux te demonstreren, en daarom is het onwaarschijnlijk dat het op zichzelf past in een interessante definitie van een veilig systeem. Wij zijn van mening dat de technologie die wordt gedemonstreerd in Linux met verbeterde beveiliging, nuttig zal zijn voor mensen die veilige systemen bouwen.
  14. Wat heeft u gedaan om de garantie te verbeteren?
    Het doel van dit project was om geforceerde toegangscontroles toe te voegen met minimale wijzigingen aan Linux. Dit laatste doel beperkt ernstig wat kan worden gedaan om de garantie te verbeteren, dus er is geen werk gedaan om de Linux-garantie te verbeteren. Aan de andere kant bouwen de verbeteringen voort op eerder werk aan het ontwerpen van een hoogbeveiligde beveiligingsarchitectuur, en de meeste van deze ontwerpprincipes zijn overgedragen naar Security-enhanced Linux.
  15. Zal CCEVS Linux evalueren met verbeterde beveiliging?
    Op zichzelf is Linux met verbeterde beveiliging niet ontworpen om de volledige reeks beveiligingsproblemen aan te pakken die door een beveiligingsprofiel worden vertegenwoordigd. Hoewel het mogelijk zou zijn om alleen de huidige functionaliteit te evalueren, zijn wij van mening dat een dergelijke evaluatie van beperkte waarde zou zijn. We hebben echter met anderen samengewerkt om deze technologie op te nemen in Linux-distributies die zijn geëvalueerd en distributies die worden geëvalueerd. Informatie over geteste en geteste producten vindt u op http://niap-ccevs.org/.
  16. Heb je geprobeerd eventuele kwetsbaarheden op te lossen?
    Nee, we hebben tijdens ons werk niet naar kwetsbaarheden gezocht of gevonden. We hebben alleen genoeg van het absolute minimum bijgedragen om onze nieuwe versnellingen toe te voegen.
  17. Is dit systeem goedgekeurd voor gebruik door de overheid?
    Linux met verbeterde beveiliging heeft geen speciale of aanvullende goedkeuring voor gebruik door de overheid ten opzichte van enige andere versie van Linux. Linux met verbeterde beveiliging heeft geen speciale of aanvullende goedkeuring voor gebruik door de overheid ten opzichte van andere versies van Linux.
  18. Hoe verschilt dit van andere initiatieven?
    Linux met verbeterde beveiliging heeft een goed gedefinieerde architectuur voor flexibele afgedwongen toegangscontrole die experimenteel is getest met verschillende prototypesystemen (DTMach, DTOS, Flask). Er zijn gedetailleerde onderzoeken uitgevoerd naar het vermogen van de architectuur om een ​​breed scala aan beveiligingsbeleid te ondersteunen en zijn beschikbaar in http://www.cs.utah.edu/flux/dtos/ и http://www.cs.utah.edu/flux/flask/.
    De architectuur biedt fijnmazige controle over veel kernel-abstracties en services die niet door andere systemen worden bestuurd. Enkele onderscheidende kenmerken van een Linux-systeem met uitgebreide beveiliging zijn:

    • Zuivere scheiding van beleid en handhavingsrechten
    • Goed gedefinieerde beleidsinterfaces
    • Onafhankelijkheid van specifiek beleid en beleidstalen
    • Onafhankelijkheid van specifieke formaten en inhoud van beveiligingslabels
    • Afzonderlijke labels en besturingselementen voor kernelobjecten en -services
    • Toegangsbeslissingen cachen voor efficiëntie
    • Ondersteuning bij beleidswijzigingen
    • Controle over procesinitialisatie en overerving en programma-uitvoering
    • Bestandssystemen, mappen, bestanden en beschrijvingen van geopende bestanden beheren
    • Beheren van sockets, berichten en netwerkinterfaces
    • Controle over het gebruik van "Opportunities"
  19. Wat zijn de licentiebeperkingen voor dit systeem?
    Alle broncode gevonden op de site https://www.nsa.gov, wordt gedistribueerd onder dezelfde voorwaarden als de originele broncodes. Fixes voor de Linux-kernel en fixes voor veel van de bestaande hulpprogramma's die hier beschikbaar zijn, worden bijvoorbeeld vrijgegeven onder de voorwaarden GNU General Public License (GPL).
  20. Zijn er exportcontroles?
    Er zijn geen extra exportcontroles voor Linux met uitgebreide beveiliging in vergelijking met elke andere versie van Linux.
  21. Is de NSA van plan het in eigen land te gebruiken?
    Om voor de hand liggende redenen geeft de NSA geen commentaar op operationeel gebruik.
  22. Verandert de garantieverklaring van de Secure Computing Corporation van 26 juli 2002 het standpunt van de NSA dat SELinux beschikbaar werd gesteld onder de GNU General Public License?
    Het standpunt van de NSA is niet veranderd. De NSA gelooft nog steeds dat de algemene voorwaarden van de GNU General Public License het gebruik, kopiëren, verspreiden en wijzigen van SELinux regelen. Cm. NSA-persbericht 2 januari 2001.
  23. Ondersteunt de NSA open source software?
    De softwarebeveiligingsinitiatieven van de NSA omvatten zowel propriëtaire als open source-software, en we hebben met succes zowel propriëtaire als open source-modellen gebruikt in onze onderzoeksactiviteiten. Het werk van de NSA om de softwarebeveiliging te verbeteren, is ingegeven door één simpele overweging: om onze middelen optimaal te benutten om NSA-klanten de best mogelijke beveiligingsopties te bieden in hun meest gebruikte producten. Het doel van het onderzoeksprogramma van de NSA is het ontwikkelen van technologische vooruitgang die via verschillende overdrachtsmechanismen kan worden gedeeld met de softwareontwikkelingsgemeenschap. De NSA onderschrijft of promoot geen enkel softwareproduct of bedrijfsmodel. Integendeel, de NSA bevordert de veiligheid.
  24. Ondersteunt de NSA Linux?
    Zoals hierboven vermeld, onderschrijft of promoot de NSA geen bepaald softwareproduct of -platform; De NSA draagt ​​alleen maar bij aan meer veiligheid. De Flask-architectuur die wordt gedemonstreerd in de SELinux-referentie-implementatie is geporteerd naar verschillende andere besturingssystemen, waaronder Solaris, FreeBSD en Darwin, geporteerd naar de Xen-hypervisor en toegepast op applicaties zoals het X Window System, GConf, D-BUS en PostgreSQL . Flask-architectuurconcepten zijn breed toepasbaar op een breed scala aan systemen en omgevingen.

samenwerking

  1. Hoe zijn we van plan om met de Linux-gemeenschap om te gaan?
    We hebben reeks webpagina's op NSA.gov, wat zal dienen als onze belangrijkste manier om beveiligingsverbeterde Linux-informatie te publiceren. Als je geïnteresseerd bent in Linux met verbeterde beveiliging, raden we je aan om lid te worden van de mailinglijst voor ontwikkelaars, de broncode te bekijken en je feedback (of code) te geven. Om lid te worden van de mailinglijst voor ontwikkelaars, zie SELinux ontwikkelaars mailinglijst pagina.
  2. Wie kan helpen?
    SELinux wordt nu onderhouden en verbeterd door de open source Linux-softwaregemeenschap.
  3. Financiert de NSA eventueel vervolgwerk?
    De NSA overweegt momenteel geen voorstellen voor verdere werkzaamheden.
  4. Welk type ondersteuning is er beschikbaar?
    We zijn van plan problemen op te lossen via de mailinglijst [e-mail beveiligd], maar we kunnen niet alle vragen met betrekking tot een bepaalde site beantwoorden.
  5. Wie heeft geholpen? Wat deden ze?
    Het beveiligde Linux-prototype is ontwikkeld door de NSA met onderzoekspartners van NAI Labs, Secure Computing Corporation (SCC) en MITRE Corporation. Veel meer materiaal volgde na de eerste publieke release. Zie de deelnemerslijst.
  6. Hoe kan ik meer te weten komen?
    We moedigen u aan om onze webpagina's te bezoeken, documentatie en eerdere onderzoeksdocumenten te lezen en deel te nemen aan onze mailinglijst. [e-mail beveiligd]

Vind je de vertaling nuttig? Schrijf opmerkingen!

Bron: www.habr.com

Voeg een reactie