UNIX 3. Uživatelé a oprávnění © Milan Keršlágerhttp://www.pslib.cz/ke/slajdy Obsah: ● uživatelé, /etc/passwd,

Slides:



Advertisements
Podobné prezentace
UŽIVATEL, SKUPINA, PROCES Systém bez uživatele je jedině Matrix? Uživatelé se seskupují a řídí práci. SPŠ Teplice - 3.V.
Advertisements

Webové rozhraní pro datové úložiště
21. okruh GNU/Linux uživatelské účty, přístupová práva GUI, architektura X Windows, správce oken.
Obecně o operačních systémech
ZMVŠ. Bezpečnost Windows 8 Dynamic Access Control (DAC) Volně – Dynamický kontrolní přístup) rozšíření NTFS access control listů (ACL) o složitá pravidla.
Vzdělávací materiál / DUMVY_32_INOVACE_02B15 Příkazový řádek: uživatelské účty AutorIng. Petr Haman Období vytvořeníLeden 2013 Ročník / věková kategorie3.
Přístupová práva, maska přístupových práv Jiří Hořejší.
Gymnázium, SOŠ a VOŠ Ledeč nad Sázavou I NFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE Ing. Jan Roubíček.
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost Číslo projektu: CZ.1.07/1.5.00/ Číslo materiálu: VY_32_INOVACE_PSK-4-05.
Adresářová služba Active directory
PHP – Základy programování
Operační systémy.
Operační systémy.
Databázové systémy Architektury DBS.
Serverové systémy Windows
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Gymnázium, SOŠ a VOŠ Ledeč nad Sázavou I NFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE Ing. Jan Roubíček.
2 Ing. Jan Keprt Centrální správa uživatelů 3 Jak to bylo dosud Bylo třeba nastavení uživatelů provést zvlášť, v každém modulu samostatně. Uživatel si.
Základy uživatelských a skupinových účtů
7. Typ soubor Souborem dat běžně rozumíme uspořádanou množinu dat, uloženou mimo operační paměť počítače (na disku). Pascalský soubor je abstrakcí skutečného.
Autentizace a účty v AD. Autentizace stanice v AD.
Active Directory Centrum pro virtuální a moderní metody a formy vzdělávání na Obchodní akademii T.G. Masaryka, Kostelec nad Orlicí Autor:
Základy syntaxe jazyka PHP PHP JE TECHNOLOGIE BĚŽÍCÍ NA SERVERU. PHP JE TECHNOLOGIE BĚŽÍCÍ NA SERVERU. Typický PHP skript obsahuje: Typický PHP skript.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
SAMBA umožňuje linuxovému systému sdílení prostředků a služeb prostřednictvím sítě používá SMB (server message block) protocol - identický protokolu.
Digitální výukový materiál zpracovaný v rámci projektu „EU peníze školám“ Projekt:CZ.1.07/1.5.00/ „SŠHL Frýdlant.moderní školy“ Škola:Střední škola.
Klomfar Petr.  Adresářová služba  specializovaná databáze optimalizovaná pro čtení a vyhledávání.  popisující objekt pomocí atributů. Na rozdíl od.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
OPERAČNÍ SYSTÉMY.
Pohled uživatele.
Systém souborů. Množina souborů různých typů – Data – Spustitelné programy – Konfigurační a pomocné informace – I/O zařízení Způsob organizace množiny.
PV175 SPRÁVA MS WINDOWS I Podzim 2008 Řízení přístupu Manželka pošle svého manžela informatika nakoupit se slovy: "Kup chleba a když budou mít rohlíky,
Úvod do UNIXu (2 nd round) David Hoksza (obrázky na slidech 9, 12, 15 převzaty od Libora Forsta –
Kontakty slajdy: ftp://ulita.ms.mff.cuni.cz/predn/POS.
Překlad jmen, instalace AD
Počítačová bezpečnost Cvičení 1: Zabezpečení startu PC © Milan Keršláger
UNIX 4. Uživatelé a skupiny v Unixu © Milan Keršlágerhttp:// Obsah: ● uživatelé,
Počítačová bezpečnost 2. Bezpečnost v OS © Milan Keršlágerhttp:// Obsah: ● jádro,
Unix a Internet 9. Samba © Milan Keršlágerhttp:// Obsah: ●
UNIX Uživatelé a skupiny © Milan Keršláger
UNIX Přístupová oprávnění © Milan Keršláger
FTP-SSL FTP-SSL Martin Dušek Martin Fúsek Josef Vlček.
BEZPEČNOSTNÍ TECHNOLOGIE I Operační program Vzdělávání pro konkurenceschopnost Projekt: Vzdělávání pro bezpečnostní systém státu (reg. č.: CZ.1.01/2.2.00/ )
UNIX 3. Uživatelé a oprávnění © Milan Keršlágerhttp:// Obsah: ● uživatelé, /etc/passwd,
UNIX 5. Přístupová oprávnění v Unixu
SOFTWARE Operační systémy.
Bezpečnostní technologie I
UNIX 4. Uživatelé a skupiny v Unixu
Služby Windows Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
UNIX 5. Přístupová oprávnění
Vlastnosti souborů Jaroslava Černá.
Operační systémy - úvod
Soubor Soubor v informatice označuje pojmenovanou sadu dat uloženou na nějakém datovém médiu, se kterou lze pracovat nástroji operačního systému jako.
UNIX 6. Soubory a adresáře
Počítačová bezpečnost 2. Bezpečnost v OS
Souborové systémy 2 Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
UNIX 5. Přístupová oprávnění v Unixu
Překladače Uživatelé a skupiny v Unixu
Identity management v UIS
Operační systémy 9. Spolupráce mezi procesy
UNIX 5. Přístupová oprávnění
1. ročník oboru Mechanik opravář motorových vozidel
Linux-příkazový řádek
Správa disků
Základní příkazy OS UNIX (1)
TELNET, FTP.
Operační systémy.
Systém souborů 1.
Souborové systémy 1 Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Libor Otáhalík. Dostupné z Metodického portálu ISSN: 
Transkript prezentace:

UNIX 3. Uživatelé a oprávnění © Milan Keršlágerhttp:// Obsah: ● uživatelé, /etc/passwd, /etc/shadow ● skupiny, /etc/group, /etc/gshadow ● správa uživatelů a skupin, příkaz sudo ● adresářová služba (LDAP, NIS) ● tradiční unixová oprávnění, ACL ● speciální oprávnění (SUID, SGID, sticky bit) ● atributy, rozšířené atributy ● SELinux, AppArmor, chroot, sandbox

Unixový systém ● víceúlohový ● nutné vzájemné oddělení úloh (procesů) ● proces nemůže zasahovat do paměti jiného ● nutná podpora procesoru – ochrana paměti – IBM PC: i386 (32bitový, Windows NT) – privilegovaný režim – dtto (nelze nebezpečné instrukce) – existovaly i systémy bez podpory CPU → problém ● víceuživatelský ● nutné vzájemné oddělení uživatelů ● pomocí oprávnění (soubory, adresáře, procesy) – nutná podpora v jádře operačního systému (+privileg. r.)

Uživatelé ● správce (administrátor) → root (UID=0) ● není jádrem OS omezován ● může se změnit na libovolného uživatele – využíváno při přihlašování (uvítací program jako root ) ● běžný uživatel → UID!=0 ● může zasahovat jen do vlastních souborů, procesů – využívá se systém oprávnění ● NEmůže se změnit na jiného uživatele ● jádro OS pracuje s UID (běžně 0 až 32767) ● ve výpisu se překládá na jméno (srozumitelnost)

Definice uživatelů ● uloženo v souboru /etc/passwd ● jednoduchá databáze ( chyba → zbytek se nepoužívá ) ● 1 řádek = 1 uživatel, položky odděleny znakem „ : “ ● login:passwd:UID:GID:FullName:HomeDir:shell ● využívá se při překladu UID → jméno uživatele ( ls -l ) ● založení uživatele ● prosté přidání dalšího řádku – lze i editorem ● nástroje (GUI, useradd, userdel) – používáme kvůli zamykání (editační konflikt)

Data o uživatelích ● jsou uložena v textových souborech ● /etc/passwd – definice uživatelů ● /etc/shadow – hesla v chráněném souboru (uživatel nemůže ani číst) ● /etc/group – seznam skupin + členství uživatelů ve skupinách ● /etc/gshadow – hesla skupin v chráněném souboru (jako /etc/shadow )

/etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin... huzva:x:500:500:René Hužva:/home/huzva:/bin/bash ● na prvním řádku je typicky root ● dále jsou tzv. systémové účty se speciálním využitím ● některé mají GUID=0, takže je to „malý root “ ● tři tečky naznačují řádky, které byly v ukázce smazány

Skrytá hesla (shadow passwords) ● heslo zakódováno jednosměrnou funkcí ● původně crypt(), později md5, sha1, sha2 – přidávána sůl (1 heslo = více zakódovaných tvarů) ● i tak lze použít útok hrubou silou – bereme všechny kombinace hesel (využití slovníku) – zakódujeme a porovnáme s uloženým tvarem – dnes tzv. „rainbow table“ → otázka vteřin (md5, sha1) ● ukrytí hesel do souboru /etc/shadow ● může číst jen root, běžný uživatel ne ● nevadí, protože před přihlášením oprávnění root

/etc/shadow ● opět jednoduchá databáze ● login:passwd:další:údaje:... ● další údaje upřesňují vlastnosti hesla – poslední změna hesla, platnost hesla, účtu, povinná změna, zákaz změny hesla uživatelem,... ● soubor může číst jen uživatel root – zašifrovaná hesla chráněna před zcizením – nelze použít útok hrubou silou – změna hesla uživatelem → SUID (speciální oprávnění) root:6$630fCdtG$:14632:0:99999:7::: huzva:465sWTI1pX/:14251:0:99999:7:::

Skupiny ● každý uživatel je členem alespoň 1 skupiny ● další skupiny v /etc/group ● primární skupina ● explicitně definována v /etc/passwd ● změna primární skupiny příkazem newgrp (nový shell) ● BSD systémy posuzují pouze primární skupinu ● SYSV systémy posuzují všechny skupiny najednou – dnes typické chování (v Linuxu volitelná vlastnost jádra)

/etc/group ● seznam skupin ● opět jednoduchá databáze ● názevsk:passwd:GID:login1,login2 ● BSD systémy ● všichni uživatelé ve skupině users ● SYSV systémy ● každý uživatel má vlastní stejnojmennou skupinu ● větší důraz na implicitní soukromí ● dá se nastavit (při vytváření uživatele) – /etc/default/useradd

/etc/gshadow ● stejná ochrana hesel, jako /etc/shadow ● názevsk:heslo:administrators:members ● typicky se hesla nepoužívají ● členství ve skupinách pevně dáno – nastaví se při přihlášení uživatele ● je-li však heslo nastaveno, může uživatel do skupiny vstoupit až po přihlášení – příkaz newgrp

Správa uživatelů a skupin ● různé nástroje pro GUI a příkazový řádek ● GUI se liší dle distribuce, řádkové stejné (standard) ● useradd, userdel, usermod ● groupadd, groupdel, groupmon ● passwd ● pro změnu hesla (uživatel vlastní, root všechny) ● id ● výpis aktuálních informací (UID, GID, skupiny) uid=500(huzva) gid=500(huzva) groups=500(huzva),501(www)

Nástroj sudo ● kontrolovaná elevace (zvýšení) oprávnění ● lze spustit příkaz jako jiný uživatel (i jako root ) ● /etc/sudoers → konfigurace ● použití: sudo příkaz – využívá distribuce Ubuntu (vkládá se heslo uživatele) ● příkaz su ● změna na jiného uživatele ● nutno znát jeho heslo ( root nemusí)

Adresářová služba ● externí databáze uživatelů ● nahrazuje nebo doplňuje lokální databázi (viz dříve) ● specializovaná databáze, replikace, distribuovanost ● uživatelé, skupiny, hesla, členství ve skupinách, jména tiskáren, počítačů,... ● optimalizace pro čtení a prohledávání ● aktualizace (změny) jen občasné ● LDAP ( Lightweight Directory Access Protocol ) ● NIS ( Network Information Service ) ● MS Active Directory, X.500, ale též DNS

LDAP ● původně protokol k X.500 ● model klient – server, používá TCP/IP ● jednotný globální prostor ● autentizace uživatelů, ACL ● podpora decentralizace ● podpora různých atributů ● na TUL jméno + heslo, ale též heslo pro WiFi apod. ● OpenLDAP, Fedora Directory Server ● open source implementace LDAP ● MS Active directory privátní implementací LDAP

Atributy LDAP ● dle X.520 ● C – country (CZ) ● SP – state or province (Liberecký kraj) ● L – locality (Liberec) ● O – organization (Technická univerzita) ● OU – organization unit (Fakulta mechatroniky) ● CN – common name (René Hužva) – CN=René Hužva, OU=Fakulta mechatroniky, O=Technická univerzita, L=Liberec, SP=Liberecký kraj, C=CZ

NIS ● původně Yellow Pages (YP) ● kolidovalo s ochrannou značkou v UK ● firma Sun Microsystem ● licencováno pro unixové systémy ● dnes spíše LDAP ( blíže k tomu, co má MS Windows ) ● uživatelé, hesla, názvy počítačů, ové aliasy, skupiny a členství ve skupinách,... ● novější verze: NIS+

Tradiční unixová oprávnění ● velmi jednoduchá ● v době vzniku Unixu málo výkonné počítače (1969) ● jde o rychlost souborového systému (FS – filesystem) ● žádná dědičnost, vše na konkrétní adresář, soubor – ke čtení ze souboru jsou nutná metadata – metadata jsou v i-node, který obsahuje i oprávnění – využijeme data, která stejně musíme načíst → efektivní ● „svatá trojice“ – jednotně pro soubory i adresáře ● 3 druhy: čtení, zápis, spuštění (Read, Write, eXecute) ● 3 cíle: vlastník, skupina, ostatní

Význam oprávnění čtení (zobrazení) obsahu souboru výpis obsahu adresáře (příkaz ls ) zápis do souboru (změna obsahu) změna obsahu adresáře (vytvoření, smazání a přejmenování položek) spuštění (provedení) binárka, skript vstup do adresáře (musí být i ve všech nadřízených)

Uplatňování oprávnění ● řízení přístupu podle modelu DAC ● uživatel má definováno UID a GID (těch i více) ● objekty oprávnění pro vlastníka, skupinu a ostatní ● uplatňují se jen nejkonkrétnější oprávnění ● jsem-li majitel → práva pro vlastníka ● patřím do skupiny, ale nejsem majitel → pro skupinu ● nejsem ani vlastník, ani skupina → práva pro ostatní ● POZOR: ● (!!!) žádný (!!!) průnik ani sjednocení atp.

Zobrazování oprávnění ● pro objekty (soubor, adresář) zobrazuji: ● tři trojice oprávnění (Read, Write, eXecute) ● vlastník, skupina, ostatní – rwx rwx rwx ● ve výpisu musí být k objektu vypsán: ● vlastník ● skupina

ls -l -rw-rw-r-- 1 huzva www led seznam.txt typ objektu tři trojice oprávnění vlastník skupina délka čas poslední změny obsahu název Typ vypsaného objektu: - → obyčejný soubor d → adresář (directory) b→ blokové zařízení (block) c→ znakové zařízení (char) p→ roura (pipe) s→ soket počet odkazů Počet odkazů je počet jmen (v adresářích), které odkazují na daný objekt. Souvisí s pevnými odkazy („hardlink“). U adresářů se započítává odkaz z vnitřku samotného adresáře (tj. dvě tečky „..“) a další případně obsažené podadresáře.

Příklad výstupu $ ls -ld /dev/ttyS0 /dev/sda web.tgz vyuka brw-r root disk 8, 0 bře 19 06:28 /dev/sda crw-rw root uucp 4, 64 bře 19 06:28 /dev/ttyS0 drwxrwxr-x 4 rene www 4096 pro 18 07:18 vyuka -rw-r--r-- 1 rene rene lis web.tgz $ stat ucitele.txt File: `ucitele.txt' Size: 2280 Blocks: 16 IO Block: 4096 regular file Device: fd00h/64768d Inode: Links: 1 Access: (0644/-rw-r--r--) Uid: (500/huzva) Gid: (500/huzva) Access: :17: Modify: :31: Change: :31:

Oktalový zápis oprávnění ● každá trojice oprávnění se dá zapsat oktalově ● velmi často využíváno ● součet vah: ● rwx → 7 → všeobecně přístupný (skript, adresář) ● rw- → 6 → čtení a zápis (textový soubor) ● r-x → 5 → binárka, adresář s programy ● r-- → 4 → jen čtení (textový soubor) ● --x → 1 → binárka, nelze použít debugger

Nastavení oprávnění ● příkazem chmod ● využití oktalového zápisu oprávnění ● chmod 775 /bin/bashrwxrwxr-x ● chmod 664 index.htmlrw-rw-r-- ● symbolický zápis oprávnění místo oktalového ● příklad: u+r, u+rw, g-x, o=r, o=

umask ● slouží k implicitnímu nastavení oprávnění ● pro nové soubory a adresáře ● určuje, která oprávnění se mají ODEBRAT – výsledek je tedy rozdíl umask ● u adresáře je oprávnění x všude nastaveno ● příklad: umask→ výpis aktuálního umask umask 022→ soubor bude mít 644, adresář 755 umask 006→ soubor bude mít 661, adresář 771

Další oprávnění ● speciální oprávnění ● výjimky ze standardního chování systému ● řeší situace, které tradiční oprávnění řešit neumí ● standardní součást unixových systémů ● ACL (dle POSIXu) ● rozšíření standardních oprávnění ● trojice ( rwx ) pro další uživatele i skupiny – MS Windows vlastní ACL (jemnější) – Linux ACL vážně až dnes (v RHEL 4 od roku 2005) – Samba oprávnění mapuje (redukuje), připravuje vlastní

ACL – Access List ● rozšíření tradičních unixových oprávnění ● ale i na složitější požadavky stačí tradiční + speciální ● využívá tradiční trojici oprávnění ( rwx ) ● pomocí ACL může mít objekt další klasická oprávnění pro další jednotlivé uživatele i skupiny ● definováno normou POSIX ● implementace v Linuxu ● existuje dlouho, ale problémy – vyřešeno 2005 ● současné distribuce mají ACL implicitně zapnuto – ACL se dá selektivně aktivovat pro jednotlivé FS

getfacl $ ls -ld /home/huzva drwx--x huzva huzva 4096 bře 26 07:37 /home/huzva $ getfacl /home/huzva getfacl: Removing leading '/' from absolute path names # file: home/huzva # owner: huzva # group: huzva user::rwx user:apache:--x group::--x mask::--x other::--- ● slouží pro zjištění ACL (standardní výpis jen „+“) tradiční oprávnění (vlastník) uživatel zapsaný v ACL tradiční oprávnění (skupina) maska práv ACL tradiční oprávnění (ostatní)

setfacl ● slouží k nastavení ACL ● setfacl -m u:apache:rw názevsouboru – m → změna nastavení ACL – u – pro uživatelem – maska – g – pro skupinuo – ostatní – x → odebrat konkrétní ACL – b → odebrání všech ACL (zůstanou jen tradiční) ● maska je sjednocením všech oprávnění – tj. uživatelé i skupiny – pokud nějaké chybí, ve výsledku se neuplatní

Speciální oprávnění ● tradiční součást unixových systémů ● mění standardní chování systému (s oprávněním) ● SUID bit ● ve výpisu je místo x u práv vlastníka písmeno s ● SGID bit ● ve výpisu je místo x u práv skupiny písmeno s ● sticky bit ● ve výpisu je místo x u práv ostatních písmeno t ● Pozn.: Je-li písmeno velké, překryté oprávnění není přítomno.

SUID bit ● standardní chování: ● nový proces přebírá oprávnění od svého rodiče ● na binárce programu je nastaven SUID bit: ● spuštěný proces běží s právy vlastníka binárky ● může to být jakýkoliv uživatel, často ale root – při chybě v SUID programu bezpečnostní problém!!! ● příklad: změna hesla ● soubor /etc/shadow běžný uživatel nepřečte ● program na změnu hesla je SUID root $ ls -l /etc/shadow /usr/bin/passwd -r root root bře /etc/shadow -rwsr-xr-x. 1 root root led /usr/bin/passwd

SGID bit ● podobné jako SUID, ale pro skupinu ● nový proces běží s právy skupiny vlastnící binárku ● příklad: skóre ve hře ● skóre hry je pro všechny uživatele v souboru – hra i uživatelé mohou měnit → dá se fixlovat ● soubor se skóre dáme skupině games – zápis bude možný pouze pro skupinu games (664) ● program se hrou bude SGID games – spuštěná hra skóre zapíše, ale uživatel sám ne $ ls -l /usr/bin/gnomine /var/lib/games/gnomine.Small.scores -r-xr-s--x 1 root games bře /usr/bin/gnomine -rw-rw-r-- 1 games games 95 bře 17 11:10 /var/lib/games/gnomine.Small.scores

Procesy se SUID a SGID bitem ● při spuštění dojde ke specifickému nastavení ● RUID, RGID: na UID uživatele, který proces spustil ● EUID, EGID: nastaveno podle binárky – tj. podle vlastníka (je-li nastaven SUID) a skupiny (SGID) – za normálních okolností EUID=RUID, EGID=RGID ● za běhu lze volat setuid() a setgid() – slouží k dočasné změně EUID – původní hodnoty uloženy do SavedUID, SavedGID – využívají démoni ke zvýšení bezpečnosti privil. procesů ● různé unixové systémy mají drobné odlišnosti – Linux má navíc FSUID, FSGID pro přístup k FS

SGID bit pro adresáře ● SGID má speciální význam pro adresář ● založíme-li v adresáři nový objekt, nebude patřit primární skupině uživatele, který ho založil, ale bude patřit skupině, která je SGID v tomto adresáři ● používá se na společné projekty více uživatelů (uživatelé jsou ve stejné skupině) ● kombinujeme s umask ● nastaví-li si uživatel vhodný umask, nebude bránit uživatelům ve stejné skupině v modifikaci souborů, které on sám vytvoří (nebude smazáno právo w)

Sticky bit ● problém adresáře /tmp ● všichni do něj mají právo zápisu ● procesy do něj odkládají dočasné soubory ● právo zápisu však je i právem mazat, přejmenovat ● různí uživatelé si tak navzájem mohou škodit ● na adresáři je nastaven sticky bit ● vytváření není nijak omezeno ● mazání a přejmenování může provést jen majitel daného objektu (souboru, adresáře) $ ls -ld /tmp drwxrwxrwt. 88 root root bře /tmp

Atributy ● nastavení specifických vlastností objektů FS ● interpretuje OS (pro jednotlivé soubory, adresáře) ● v různých systémech různě (Linux, OS/X, BSD, Win) ● společné atributy souborů unixových systémů ● i – immutable → nelze smazat ani změnit obsah ● a – append only → lze jen přidávat (logy) ● další atributy (Linux) – synchronní operace, potlačení atime, nezálohovat, komprimováno, žurnálování dat, bezpečné mazání,... ● příkazy: lsattr, chattr

Rozšířené atributy ● „poznámky“ k objektům FS (systému souborů) ● nejsou pevně dány OS nebo FS, typicky: ● název=hodnota → celé zapsáno jako řetězec ● systémové rozšířené atributy – např. definice nastavení pro pro SELinux ● uživatelské rozšířené atributy – využívají aplikace (kontrolní součet souboru, asociovaná aplikace, použité kódování,...) ● typicky omezená velikost, sdruženo s metadaty – v extrémním případě až do max. velikosti souboru (fork)

SELinux ● doplňující zabezpečení pro Linux ● implementuje MAC (Mandatory Access Control) – přesněji RBAC → Role-based Access Control – na souborech jsou rozšířené atributy – definované role pro různé skupiny programů – → i proces běžící jako root může být omezen ● vytvořila NSA v USA (Národní úřad pro bezpečnost) – používá Fedora a klony RHEL (CentOS apod.) ● 3 režimy: – disabled, permissive (jen hlášení, bez omezení), enabled

AppArmor ● doplňující zabezpečení pro Linux ● implementuje MAC (jako SELinux) – nevyužívá rozšířené atributy → cesta k binárce ● vytvořila firma Novell – používáno v SLES, openSUSE, Ubuntu ● jednodušší správa – není tak komplexní, jako SELinux

chroot ● systémové volání jádra OS ● běžícímu procesu je změněn kořen FS – kořen je „posunut“ do zvoleného adresáře – vzniká problém s přístupem k dynamickým knihovnám ● dyn. knihovny musí být nakopírovány do chroot prostředí ● proces se „nedostane“ mimo chroot – neplatí pro uživatele root – chroot není zabezpečením, spíše ochranou proti chybě ● například nemožnost smazat soubory mimo chroot ● v unixových systémech velmi oblíbené

Sandbox ● bezpečnostní technika ● implementováno v jádře OS ● proces se může „odstřihnout“ od funkcí OS – typicky si proces vybere, které funkce znepřístupnit ● vybraná systémová volání přestanou fungovat ● v případě funkčního exploitu nejsou další akce povoleny – velmi dobře implementováno ve Windows ● bohužel to zcela využívá jen prohlížeč Google Chrome – v unixových OS neexistuje ucelená implementace ● sandbox lze vytvořit např. pomocí SELinuxu